synthetos / g2

g2core - The Next Generation
Other
623 stars 295 forks source link

Any working GUI / graphical user-interface / g-code-sender for g2core? #342

Open rkoe opened 6 years ago

rkoe commented 6 years ago

Is there any working GUI / graphical user-iterface / g-code-sender for g2core on Arduino DUE? I've tested several, but all failed:

The best way currently is using minicom or python-serial and send the commands manually. :(

msepulve commented 6 years ago

Thanks @justinclift! I followed your recommendation above (about modifying the engine.json file of FabMo) and I now have a working GUI to control a CNC with G2. The environment I have is: HW: Raspberry Pi connected via USB to the Due/gShield. SW: -FabMo Master version as of June 1, 2018 -G2 Edge versión as of June 1,2018 -> g2core.bin compiled by me in Ubuntu 14.04 So far I have tested only the outputs for the step and dir for the stepper motors and the signal for starting/stoping the spinner/router, but everything seems to be working fine, both with G-code and OpenSBP (Shopbot Code).I liked very much the new GUI. Being able to modify settings in G2 and the FabMo itself allows for a high degree of customization.

justinclift commented 6 years ago

Oooohhhh Ahhhhhhhh. That sounds pretty positive. :smile:

scotthz commented 6 years ago

As another data point (sorry, came to this thread late), my setup has CNC.js running in a Docker container on a Raspberry Pi, connected to the Due Programming USB port (the fast one).

I don't run OpenGL on the Pi, so I don't get the 3d visualizer when I run the UI in Chromium on the Pi itself (i.e. http://localhost). In its place I get a list of the G-code steps which updates in realtime to show the current step that is running.

When I need the visualizer, I run the UI in Chrome on a Macbook. CNC.js is still running on the Pi, it's just the web UI that is running on the laptop. All network connections are over wifi.

Either way, I don't see the slowness that @rkoe reports. Response time is fine, no delays that I've noticed. Jogging using the keyboard is responsive. Same with loading and running gcode.

Happy to share anything about my environment if that would help.

justinclift commented 6 years ago

Thanks @scotthz it looks like CNC.js is in use by several people, which should mean it's a decent initial "go to" solution after all. :smile:

As a curiosity thought, are you using your setup for something we could add to the "Who uses g2core?" page? :smile:

scotthz commented 6 years ago

Hi @justinclift There are things I'd change about CNC.js (and maybe I can, but don't yet know how) but it's been working fairly well for me in my current setup. I don't care much for the ChiliPeppr look-and-feel, though I have experimented some with it, with the serial port server running on the Raspberry Pi. Other solutions haven't fit as well. Haven't tried FabMo yet but thinking about it.

FWIW I just uploaded my raspberry-pi/cncjs docker image, in case anyone is interested in looking at that.

I'm strictly a hobbyist and don't think I have anything particularly innovative to share. But thanks for asking. My day job is in IoT and devops, my main interest here is in woodworking, and I sized my DIY machine to cut chair parts and joinery (don't have the room for a 4x8 machine).

justinclift commented 6 years ago

Heh Heh Heh

Chair parts and joinery is pretty nifty. I'm still on a standard size Shapeoko 3 (~35x30cm practical cut area), modified to use g2core instead of the default GRBL of course. :smile:

cncgoko commented 5 years ago

Hello @rkoe

Sorry to dig up an old topic, but I'm the maintainer of Goko. I haven't been able to work on it since a long time (life, work, etc...).

I see you're complaining about software not working. This kind of thing can happen. But did you at least try and open issues on the projects Github ? Did you submit log files and issue descrpition to help the several project to improve ? With Github you can also submit a pull request and fix code.

AFAIK those projects are free and maintained by developpers like me that use their free time to do it. That's the problem with open source software these days. People expect them to be free and perfectly operationnal with no involvement from them.

I'm sorry but that has to be said. I would be happy to help and improve Goko for G2. So please, fill issues on the Goko repo.

ril3y commented 5 years ago

If you need anything from us (hardware g2core boards etc) let us know.

Thanks we understand how life catches up.

Riley

scotthz commented 5 years ago

Thanks to the last couple comments above, this issue popped up again in my inbox.

cnc.js has been the most consistently usable solution for me. I don't love it, but for me and my g2core-based machine, it works better than the other things I've tried. I run it in a docker container on a raspberry pi. @rkoe let me know if you want to know any more about this solution.

Coincidentally, I just started looking at Goko. Had an issue getting started but seem to be past that and hope to move forward in the coming days.

I also have a fairly usable FabMo setup working. This is on raspberry pi, with g2core on an Arduino Due, running a scratch-built machine with external motor drivers (ST-M5045). It doesn't try to flash g2core and only requires /dev/ttyACM0 (i.e. doesn't need /dev/ttyACM1). I like it for the ability to use OpenSBP instead of G-code. On the other hand, the FabMo paradigm can be a little confusing. It doesn't expose separate machine vs user coordinate systems in a way that is intuitive (to me). So I often fall back to using cnc.js. But so far as working as designed, I think I've reached that with FabMo. Just haven't taken the time to immerse myself in FabMo deeply enough for it to feel "second-nature". Would be happy to share if that would be of use to anyone.

ril3y commented 5 years ago

i would love to see your setup. a wiki page on g2 would be even better!

cncgoko commented 5 years ago

@scotthz in case you have issue with Goko, feel free to open an issue on the repo

@ril3y what do you mean "if you need anything from us (hardware g2core boards etc) let us know" ? Was that intended for developpers ? If so, having a g2core board would definitely help 😍