I am currently making a simple 3D printer that is controlled by a Raspberry Pi directly. Though as far as I can find it is more extremely Raspberry Pi based than others I can find. I have 4 Raspberry Pi Model B's, (one for my computer, and 3 backups) and I am using one as my main computer. The 3D Printer that I am making will have the stepper motors, extruder, and heater controlled from the GPIO pins on my main computer Raspberry Pi. This will have the advantage of eliminating the cost of a separate computer, as well as the cost of separate control board.

I am almost done with the control software (kind of blurring the lines between application software and firmware on this one). The control program is written in FreeBASIC and uses the wiringPi library. It has the standard on screen control buttons, as well as a direct G-Code entry field, and it will take as input a G-Code file, its primary output is the direct control of the steppers, heaters, and extruder.

The HW consists of 2 low end steppers (making it a bit slow) for the XY plane, and one Nema 17 stepper for the Z axis (as it has to lift the rails and stepper for the Y axis, as well as the whole extruder assembly). The frame is reinforced by a wooden body, and is largely wood, with some 8mm steel guide rails, with linear bearings, the print bead is supported above the X axis rails (the bed moves for the X axis movement).

For the first implementation (until I can either make or buy a better one) I am cheating for the extruder and hot end. I am using a cheapo 3D pen with a 0.4mm hole, con controlled by a servo to push the leaver to control extrusion speed, temperature must be set by the operator (it is a PLA or ABS adjustable temperature pen).

When I do get the chance to make my own extruders and hot ends, I will use a continuous rotation servo to feed the filament, and a simple nichrome element for heating, controlled by PWM, I will have a thermistor for temperature monitoring. That will use up the last of the GPIO pins on the RPi, so to add a second and third print head I will have to use some of the GPIO's on the debug header (there are a few there). In the end I will want to have 3 print heads on line at a time.

No pictures yet (I am terrible about charging the camera batteries), though hopefully soon after it is done (or at least after the first print).