Topic: How-To: Converting to a RAMPS Controller
If you want to add accessories such as multiple PWM Fans, an LCD, multiple extruders or other features, the easiest way to achieve this is to switch to using a RAMPS (RepRap Arduino Mega Pololu Shield).
These boards are available online as a complete kit, with or without LCD and often many other accesories. It is modular in that it sits on top of an Arduino MEGA 2560, allowing future replacement/upgrade without need to alter I/O.
It will, for the most part, bolt straight onto the Solidoodle with 2 specific differences:
a) The Bed and Extruder Heaters are Screw Terminals;
b) The Limit Switches need to change pinout slightly.
RAMPS boards also do not have as many 12V headers exposed, so my Sidecar board seeks to resolve that issue as well. If you don't care for preserving the 'stock' connections at all, you can obviously simply re-terminate the Limit Switch connectors. I still recommend making up the sidecar board for the additional Power Connectors.
I am using the Sang to RAMPS bracket I made up with the slot for a sidecar board.
. The STL's are available here: http://www.soliforum.com/post/26100/#p26100
Specific Info on RAMPS itself is best sought from the RAMPS Wiki page: http://reprap.org/wiki/RAMPS_1.4
The Sidecar Board:
As mentioned, the RAMPS does have fewer 12V rails exposed. It also required a different physical pinout connection on the Limit Switches that you can't really deal with in firmware. To resolve these issues, I have made the following:
As hopefully should be visible from the pics; it is a very simple board. Using some Stripboard that I cut to 55x25, I have added some Double Row Headers that are installed such that all the left pins are shorted and all the right pins are shorted, and a set of 9 Right Angle and Vertical Pins that have 1 vertical pin shorted to 1 right angle pin. To each of the Double Row header sets, I've added a Red and Black wire. These become 2 power strips that are later connected to my 12V supply (I use a small JST connector to keep it modular, but you can screw it into the input terminals just as effectively).
The Right-Angle/Vertical combos are used inconjunction with a set of 6 Jumper Wires to 'remap' the Limit Switches. This allows me to use the stock connectors but patch them onto the RAMPS limit headers.
Once made up, it slots in quite firmly to the sidecar slot on the bracket, like thus:
Installing the Bracket and RAMPS Board
1) So after you remove the cover (if you have one or an SD3) from the existing Sanguinololu, the back of your printer probably looks close to this:
Eagle-Eyed readers will probably not I've removed the Bed Thermistor and Heater and my Sang has a 1284p in place of the 644p, but it should be similar enough.
Finish removing the rest of the Sang.
2) Now you want to first attach the RAMPS to the Bracket before installation. I used 2 M3 30mm Bolts + Nuts, and a Zip Tie on the 'blind' mount hole on the top left of the board when viewed from the USB connector. Also be sure to remove the 5th Stepper Driver board if your kit came with them pre-installed on the board.
3) When done, mount it to the Solidoodle by using 2 x 10mm M3 screws. I found attaching it at the top right and bottom left corners provides a more than solid mounting to the printer - but feel free to use all 4 mount points. It should now look something like:
4) To kick things off and get the wires out of the way, hook up your Limit Switches to the Sidecar. If you are choosing to reterminate the wires, then now is a good time to do that instead.
5) Now connect the Motors. The headers are labelled, but when viewed from the USB port, it goes X/Y/Z on the right hand side and the Extruder Motor goes into E0.
6) Connect the LED Strip and Extruder Stepper Fan to the power strips, or your alternative 12V supply. The + side of the plugs is, when looking at the front of the connector so the wires protrude behind the plug, the right hand side of the plug.
7) Now its time to connect the Jumper Wires from the Sidecar Limit Switches to the RAMPS. If you've reterminated them, nows the time to plug them in directly.
You need to install them using the left most 2 pins for each group, and use the Max position for X and Y, and Min position for the Z Axis. Min is marked by -'s on the silkscreen. The end result should look like this using either the jumpers or the reterminated wires:
And on the board we are installing:
8) Connect the Thermistors. The headers are located just next to the Z-Axis Motor Header. Place the Extruder Thermistor in T0, and the heated bed in T1. Now is also a good time to screw in the Heated Bed and Extruder Heater. Connect the Bed to the screw terminal labelled D8, and your Extruder into D9. Add your Smart LCD Shield and Fan Extender now if you have one as well:
9) Almost Done! Its time to upload your firmware and calibrate your Stepper Currents. Simply download either lawsy's or mine firmware and follow the usual procedures. You want to have Arduino IDE 'Board' set to Arduino MEGA 2560. The minimum changes is to also change Configuration.h under the MOTHERBOARD to 33 or 34. Use Type 34 if you have a Fan Extender, otherwise use 33. Now verify and upload the Firmware to the Arduino.
10) Set your Stepper Driver VREF voltages. Depending on what type of RAMPS kit you bought, you could have Pololu's, StepSticks or G3D Drivers. You need to confirm what Sense Resistor Value your particular stepper driver has, and then set the VREF according to this table (excuse my lazy screen shot of Excel...):
11) Snap on the Fan, and Voila!, You're Done!
Let me know if something isn't clear, or I appear to have missed something. I'm not the greatest at writing how-to's
Higher Res versions of the images and a couple more are available on my Flickr stream: http://www.flickr.com/photos/ozadr1an/
Not sure what 'level' this is either - 2? or 3 ?
Adrian