RAMPS 1.4 And Arduino Mega
TL;DR, in a nutshell – For this printer I will be using the standard and simple setup of an Arduino Mega and a RAMPS 1.4 board. The Arduino Mega is the brains of the printer and will process all the g-code instructions from the .gcode files from either an SD card or over USB and tell the printer how to move, heat up, extrude filament etc by signalling all the motors, heaters and sensors on the printer which are connected via the RAMPS board, which in turn is connected to the Arduino Mega via the GPIO pins.
Using RAMPS and an Arduino Mega is the quickest and cheapest way to get your 3D printer up and running. You can purchase them together as a kit (usually) or separate components. There is a wide variety of quality of boards available, but you should be looking around £5-10 for the RAMPS board, and anything from £5-15 for the Ardunio Mega. I’m on my second Mega board, as the first one burnt up on the second use just while testing (the 5V regulator burnt up) so I went from a clone version to a “fake-real” Arduino Mega. I knew the one I bought would be a fake of the original, but due to it trying to be a fake – the components will be a little bit better than the dirt cheap ones (or at least that was my thinking?!!). Either that or I got an incredible bargain?! 🙂
AliExpress Product Listings
I initially bought a whole “RAMPS kit” from seller A+A+A+ which is here – https://www.aliexpress.com/item/3D-Printer-kit-1pcs-Mega-2560-R3-1pcs-RAMPS-1-4-Controller-5pcs-DRV8825-Stepper-Motor/1948360826.html which included pretty much all you need for the main RAMPS setup, including the optional (but highly recommended!) 2004 LCD and SD expansion board, DRV8825 steppers and even the jumpers to set the stepper drivers to whatever micro-stepping you require.
This kit however went sour after the 5V regulator burnt up (literally in a puff of magic smoke and smoldering red glow!) and it also seems to kill the LCD panel too. I went for a standalone Mega from one of my favourite Ali stores – All ELECTRONICS MALL, just search for “Freeshipping Mega 2560” on their store. I also had to get another LCD controller from there too – “3D-P 3D printer reprap smart controller”
Mounting To The P3Steel Frame
You can if you like just leave the Arduino and RAMPS board just lying around, or mount it in a box by the side of the printer, but ideally you will want to attach it to the frame so it is a more compact unit and easily portable if needed to move. Thankfully the frame of the P3Steel has mounting holes on either side of the large “triangle” uprights for just this. There are mounting holes near the base which are drilled to line up with the mounting holes of an Ardunio Mega board.
I went ahead and printed the mount frame from Toolson’s files, as per below, and I opted for the updated files which reduce the amount of plastic used and probably help in cooling too (somehow?!). You can see more on my make here – http://www.thingiverse.com/make:229275. We’re using these mount brackets for two reasons – to easily mount the Arduino to the frame and to give an gap between the frame and the board. And to give an offset to the mounting holes to allow the LCD adapter to be fitted.
Once printed I drilled out the M3 holes with a 3mm drill bit and then press fit some M3 nuts into their spaces in the back which will help secure the Arduino board to the mounts.
However… on test fitting the brackets to the Ardunio and then to the P3Steel frame the mounting holes just did not line up, not even close.- the mounts simply did not line up with the mounting holes on the frame. Other users who printed this from Thingiverse (here) also commented how they thought the holes were not quite right. On closer inspection it appears the 2.5 DXL laser cut frame seems (may?) to have it’s electronics mounting holes in a slightly different configuration than the 2.0 and 2.01 frame.
To resolve this, I decided to design my own frame mounts, taking Toolson’s design as inspiration.
New P3Steel 2.5 DXL Frame Mounts
Using Toolson’s design dimensions I measured up the mounting holes on the steel frame and also on the Mega board. They were indeed not the same as the 2.01 mounts. So a used Tinkercad and knocked up a similar mount using the new dimensions I got from the frame. Tinkercad is great for little projects like this, and you can quickly create complex mounts and brackets. You can see the time lapse video below, and some accompanying shots of the mounts. I opted to go for both the full frame mount and also the cut down one, which you can find in my make here – P3steel 2.5 – RAMPS Offset Mount. The differences are subtle, but when fitting to pre-drilled holes in 3mm steel – it matters!
You may notice on the images (below especially) that the mount sticks out of the frame slightly. Also – one of the reasons for using the frame mount was to give clearance to allow you to fit the LCD adapter on the RAMPS board. There was still a lot of spare room between the adapter and frame – so I could afford top move it further back into the frame – solving the little overshoot issue seen below!
Improving the Arduino / RAMPS Mount for P3Steel 2.5 DXL Frame
A new set of mounts were designed from my original Tinkercad files which is now only had a 10mm instead of 15mm offset – shifting the Arduino inwards just enough to not stick out. This new design also has even more trimmed off it to the bare minimum needed to mount the Arduino to the frame. You should be able to see in the image below one of the frame mount holes actually overlap the Ardunio “raised” mount parts. That’s fine, but shows just how much space has been chopped off! The LCD adapter is still accessible and works fine.
Once printed I repeated the whole drilling, reaming and M3 nut pressing exercise again and then mounted them on the frame.
Looking at the two images below I am not 100% sure I got my dimensions correct, they seem misaligned, and fitting the Arduino was also a bit of a squeeze. Oh well – it fits and works!
(You may notice a small heatsink on the Arduino Mega in the image above. I don’t know if it’s necessary – but I have had the 5V regulator burn up on a Mega board before, and I saw a picture on the internet of someone who had one attached – so I thought “why not?!”. I don’t think it will do any harm, and if it does help with heat dissipation from the regulator, then all’s good!).
You can see the LCD adapter below on the far right. Just enough clearance to fit the two cables, and you can see the top left mount is flush with the frame edge. My OCD can sleep happy tonight – and we’re done!
I’ll get to the stepper drivers and the whole wiring loom in due course!