I feel bad about my 300.- USD 3D Printer collecting dust in my lab, so I want to do something about it. This was a Prusa i3 Gen 1 clone and it ha loads of issues that came with Gen 1 printers – that said, it actually work and do a decent job for what it is.
The control system is Atmega2560 based (Arduino) and does it’s job. The advantage of this is the wealth of open source alternatives running G-Code. The drawback is that the control system is “all in one board”, meaning it is hard to expand and experiment with, so I want to replace this with a modular and more capable one.
The block diagram above illustrate a possible system. The core here is that I use my RPI modules to create a modular control system.
Current slicer SW mostly operate through Serial USB and XPortHub is excellent as G-Code Server – it has USB, Flash/SD-Card, HMI port and can drive the rest of the CNC machinery.
I could have done G-Code from raspberry PI as well, but suggest that RPI is optional for Wifi/Ethernet and print spooling.
To control stepper motors I use 2 of my 12xPWM cards that can drive 4 steppers each. The 2nd card drives 2 steppers and PWM channels for heat. Each channel support 2A, but keep in mind that I can combine channels and add a 3rd board if I need to.
The last board is a 32xIO Hat to connect to analogue sensors and digital sensors.
But, what do I want to achieve? I am obviously interested in building this as a test-case for my control system, but I also have some objectives.
- Rebuild the mechanics into a more robust printer.
- Insert mechanical end-stops and use current sensors to detect them to avoid a lot of wires and failing detectors.
- Add Z-sensor to automatically detect plate tilting.
- Add a 2nd extruder for support material.