Macpod LLC: Forums
General Category => 3D Printers => Topic started by: Stimpy on April 06, 2014, 12:18:57 PM
-
Hello All
I have compiled the LaserShark 3DP software for windows 7 64bit.
I will try also for 32bit version of windows.
Download installer or rar file.
https://www.dropbox.com/s/mxdvb8bp8w52hn4/LaserShark%203DP.msi
https://www.dropbox.com/s/qy0ohefa0qsd2qf/LaserShark%203DP.rar
Let me know if you got problems with it maybe you get libusb problem.
Download zadig from http://zadig.akeo.ie/ and install libusb driver.
Greetings Stimpy
-
Cool! Did you have any issues with compiling the code? How familiar are you with cmake? It would be great to have some package searchers for windows made to find libusb and libjson-rpc-cpp. I think it would help others out in the future :)
Edit: This week will be a really busy one for me, cant wait to get back and finish up the code :)
-
I have used cygwin64 full installed to compile on windows 7 64bit. And there where no problems with it. Cmake not so familiar with it but will read and try some things.
But lets wait till you are back next week then we can chat maybe on irc :D
-
Stimpy.
I tried to launch your build of lasershark_3dp on Win7 x64, without success. I always get this error:
Error encounteredUart bridge general failure.Error connecting: Uart bridge gener
al failure.
LaserShark disconnecting
libusbx: warning [libusb_exit] some libusb_devices were leaked
I am running LaserShark v4 firmware and installed libusb0 (v1.2.6.0) via Zadig. I see 3 Lasershark devices in Zadig (Interface 0, Interface 1, Interface 2) and libsub0 is installed for each of them.
Any ideas?
-
The code in the repo which stimpy built off of expects a lasershark and twostep board to be attached.
Your error message indicates that it was unable to talk to the twostep board. Do you have one... and if so was it powered?
The good news is if you made it that far it indicates it was successful in connecting to the lasershark. :)
The code is quite modular and the twostep code can be swapped out for an object that connects with whatever stepper motor driver you are using. I do not own one of these various stepper motor driver boards however so someone else will need to write this portion of the code.
-
Macpod, thank you for explanation. I do not have TwoStep, I am planning to use 3rd party controller for Z axis - Megatronics v3. I need to drive NEMA23 steppers, which I guess onboard drivers of TwoStep could not handle.
Is it possible to configure and compile lasershark_3dp to only use LaserShark board?
-
There is no "make" or runtime flag, but it's quite easy to do:
Just open up lasershark_3dp.cpp (the server), and comment out the twostep related sections. Next open up the lasershark_3dp_client.cpp (the client) and comment out the twostep stuff there too.
Really the client is meant as a means to show slicer integrators how the protocol works but you could use it for your own experiments. Speaking of this do you know how pacmanfan is progressing? I asked them earlier about their progress but have yet to hear back.
-
Thanks for the tips, I will try that.
Unfortunately I do not have any news regarding integration into CW. Before we started the google groups discussion, Ben was in direct contact with Pacmanfan, maybe we should ask him.
-
Hi, Jeff,
I received the board, then i run your program in windows, but I get the error message "Could not connect to LaserShark.", I installed the driver, i can see that in device manager, could you give some hint? Thanks!
Best,
Cutecheng
-
I don't have the code for this windows build and I generally work under linux but here's my assessment based on what you have stated:
Based on your picture the lasershark appears to be functioning fine. The three interfaces you see are for the data interface, control interface, and uart pass-through interfaces.
Libusb seems to have initialized alright too or else you wouldn't have seen the other message
Can you try rebooting and then if this fails again post the full output or take a screenshot?
-
Thanks, Jeff, I reboot the board and computer, but I still get the same error message, I also installed the driver on a brand new computer running Win7 64, but I still don't have luck. I attached several pictures for your reference. Thanks for further help!
-
No problem
Ok, well unfortunately that additional info didn't help identify what's going on. If you were able to compile the code yourself under windows you could add print statements to the connection code in the connect() function to figure out what's going on:
https://github.com/macpod/lasershark_3dp/blob/master/lasershark/LaserShark.cpp
Unfortunately for you I'm more of a linux guy than a windows guy (hence no official windows port yet). Perhaps this is a permissions problem?
Is there any reason why you can't run this under Linux?
There is also another individual who is attempting to port this sw to Windows. I'll chime in on the forums once they begin to make more progress
-
Hi, Jeff, I'm a windows user, i have never used Linux. Following your instruction, I am able to compile the file "LaserShark.cpp". By debugging, i found out the problem is the second interface "devh_data" returns 0. I tried reboot the board, computer, but i still get the same result.
devh_ctl = libusb_open_device_with_vid_pid(NULL, LASERSHARK_VIN, LASERSHARK_PID);
devh_data =libusb_open_device_with_vid_pid(NULL, LASERSHARK_VIN, LASERSHARK_PID);
This is the libusb library i downloaded:
http://sourceforge.net/projects/libusb/?source=dlp
-
I'm glad you are able to compile this to debug it under windows :) Having to walk someone through that over the internet would be difficult.
That's an interesting spot for this to fail at and I can't say I've encountered that under linux before. What happens if you flip those two statements? Does devh_ctl then fail?
It shouldn't be an issue to open up a device twice... but perhaps windows is doing something strange? I'll have to look at the libusb docs closer
-
And to get some common bugs out of the way:
1. Is the LaserShark directly connected to a usb port on your computer (i.e. not through a hub)?
2. Is it a usb 2.0 port? (try other ports) 3.0 ports can be weird.
-
Hi, Jeff, I finally solved the problem :D
In Zadig, I should use "libusb-win32(v1.2.6.0)" in stead of the default setting (WinUSB). Now i'm able to communicate properly with the board, thanks for all your help!
-
I'm glad some of those suggestions helped you out and thanks for pointing out what you needed to do to get things up and going. Others will certainly appreciate it.
Please feel free to share what you end up doing with the kit. Also if there's something that can be easily added to the build script (i.e. better windows support when searching for dependencies) let me know and I can try and add them to the code base on github.
-
I created a console project in microsoft visual studio with the default setting, then imported "LaserShark.h" and "LaserShark.cpp". A lot of libraries are not supported in windows, for example, "thread", "atomic", "mutex", they need to be removed from the code until the project can be compiled.
Zadig was used for the driver installation, but the trick is windows does not support "WinUSB" well, we can use either "libusb-win32(v1.2.6.0)" or "libusbK".
Zadig: http://zadig.akeo.ie/
The latest "libusb" library can be downloaded here:libusb: http://sourceforge.net/projects/libusb/?source=dlp. Both the static library and dynamic library work well in the Visual Studio environment.
-
Those are all standard with c++11 which should be cross platform compatible(this is why I'm using them). Instead of whatever compiler microsoft visual studio uses you could try using MinGW's under Windows.
http://www.mingw.org/
For this system to work as design (with json-rpc-cpp aspects... I know you aren't using these portions) use of threads, mutexes and atomic variables are necessary so those can't really be removed.
-
hello all
The new release from macpod i can make it also in windows 7 64bit.
I will make a post how to compile everyhting so you can do it by your self.
I think it will be online toonight.
Greetings all