So, the project is pretty much in working condition. Many people are asking for me to release a download for the software. I certainly plan to, but I can't right now for a few reasons:
- The software has not been thoroughly tested and there's still a lot of serious bugs.
- The CNC protocol is currently hardcoded to support only the Printrbot 1405's build plate dimensions and steps per mm (crucial for finding how fast it should move in order to play notes), and while the code can easily be adapted to work with other printers, there's currently no way to change these settings.
- I'm not sure how differently other printers respond to G-code commands or if the "resend: [line number]" thing my Printrbot does is actually part of the G-code Serial protocol standard, since error checking and init code sort of relies on that now (though I guess it can be tweaked to work with "NACK" or similar)
- The program isn't well documented, and how to do stuff and setup the hardware isn't very clear at the moment. Set it up wrong, and you could damage your very expensive 3D printer!
Once that's more or less done, I'll release it. Upcoming features include:
- Documentation and tooltip text
- A server-client interface so I can keep my printer connected to my OctoPi setup
- bug fixing and general polish
- Minor features and tweaks to make it more functional
Nothing much, since it's basically done. However, I do want to take further development a bit slower, since I'm a little burned out rushing to get this operational for the deadline. It's too close to completion for me to abandon it though, so don't worry!
In related news, is anyone willing to sacrifice their 3D print- I mean, help with testing the software on other G-code accepting machines? You get to have a beta version of the software before anyone else! I won't be responsible for any damage you do to your hardware while testing it, though, use at your own risk! If you're interested, send me an E-mail at laurens dot weyn & gmail dot com (replace ampersand with @ and " dot " with ".")