08/08/2016 at 11:55 •
Now that I have the LCD nicely fitted in the printer it is the turn of the RAMPS/Arduino board(s).
I printed an adapter (the model can be found in the files section and it is using the same printer! ):
It is meant to fit where the old board used to be (but is much smaller):The board inside the adapter(with the help of hot glue):
And all inside the printer:
And with the lid close(this marks the end of this conversion!):
08/03/2016 at 10:06 •
So after getting everything working (repeatability!) I moved to making it pretty :)
I used this design for my lcd controller board and added a custom holder (can be found in the files section) so it fits the screw holes of the Replicator 2(sorry K :).
Next up an adapter for the RAMPS/Arduino board.
Mount adapter for Replicator K (hot glued):
Old LCD vs new LCD:
And fully assembled:
(I had to cut the MDF panel, it wasn't a clean cut but I don't care since I plan to replace the panels anyway).
08/01/2016 at 20:21 •
So after I was sure that all the connections were correct it was time to put the firmware into the machine.
I forgot to get the configuration values before taking out the original board so I hooked the board to the power supply (soldered the original connector so I can use the board) and connected via USB to ReplicatorG:
After I got the information from the board I proceed to editing Configuration.h - the file can be found in the files section.
I guessed the values of the PID based on stuff that I found online so the next thing was to get the correct PID values, that can be done using PID autotuning feature of Marlin.
After few tries I succeeded in printing something!
But after few prints my nozzle got clogged, so I declogged and after few more prints it got clogged again.
The issue was that once it finished printing the fan would stop! now I was used to the fan running while the hotend was hot so digging a bit in Marlin source revealed that there is an option to control the fan automatically based on the temperature.
The change needed was in configuration_adv.h (can be found in the files section) file - settings EXTRUDER_0_AUTO_FAN_PIN to 9 which means it will use D9 pin (which I connected the fan to) for controlling the fan based on the temperature.
Now since it uses pin 9 we can't use it for the "regular" fan pin so a change in pins.h (Also in the files section) was needed to set FAN_PIN to -1.
With this fix I been printing for serval hours with breaks between them and the nozzle doesn't clog anymore.
Next up: printing adapters for RAMPS1.4 board and LCD controller.
08/01/2016 at 19:56 •
So now that I had the connectors mapped the first step was to connect the stepper motor drivers and set the correct current limit.
The current for the motors is (according to this and other sources):
X,Y, Extruder - 0.83A
Z - 0.4A
Setting the current limit for A4988 drivers is explained there too.
After setting up the stepper motor drivers I proceeded to using a test program (can be found in the files section) with the RAMPS board with to see that I can actually control the steppers:
At first I used a 12V PSU (with only 1.5A!) for testing as the RAMPS board doesn't support 24V natively.
Next were the endstops using a cell battery and a multimeter in diode/conductive test mode:
S - is connected to multimeter
G - is connected to multimeter and battery ground
V - is connected to battery positive
When the endstop is triggered a light will go off and the tester will beep.
I did this instead of connecting it to the RAMPS board for testing because:
1. If I mapped wrongly the pins I could harm the arduino board (there is no protection)
2. It was easier than changing the testing code to blink a led/send via serial
Now that I knew all the mappings were correct I proceed to working with 24V instead of 12V, That required to:
- Make sure all your caps are rated above 24, ideally 50V (to be super safe) but mine had 35V which is just good enough
- Disconnect diode D2 (see this) this is used to provide power the Arduino from the 12V power, but since we are using 24V we can't use this as this will fry the board.
- Disconnect the 11A fuse, this fuse is rated for 16V and is not needed since it is only used for the heatbed (D8 output in RAMPS board), it is not necessary to really take it out but just in case I make a mistake and put power into the other power connector it won't mess up the fuse.
Now the board can work perfectly from 24V but the Arduino needs to be powered separately.
I had to cut the connector of the power supply so I could connect it directly to RAMPS, the inside of the wire is positive and the outside is negative.
Now that I had all the parts working ad-hoc I proceed with making an adapter board from Makerbot connectors to RAMPS connectors that looked like this:
It basically adapts the steppers, endstop and extruder connectors of the replicator 2 to individual connectors for the RAMPS board.
The connector on the left is actually taken from the original board and is used originally for the second extruder:
While the adapter board worked it was a PITA to solder and took a lot of space, so I changed my approach to using male-to-female cables that I just received after finishing the adapter board and some tape to hold them more securely and it is been working perfectly:
Another thing that need adapting is using a thermistor instead of the thermocouple, since I wanted to change as few as possible in the printer I added the thermistor in hole on the opposite side of the thermocouple with the help of (alot) of thermal paste and kapton tape (not shown in this picture):
With all the parts wired the next step was configuring & installing Marlin :)
08/01/2016 at 19:14 •
I read quite a bit in order to get this right. First I needed to understand how a RAMPS 1.4 board is typically connected - that information can be found here.
Next I needed to map the connectors in the mightyboard (My bot uses Rev-H):
Connectors in this picture:
- Bottom Left - LED strip, this one is not used for no so I haven't mapped it
- Above that - Steppers connector, it looks like this:|———/\————|| 2 1 N 2 1 N 2 1 | A| 2 1 N 2 1 N 2 1 | B|———--————|
Where 2/1 is coil number and A/B is wire of the coil per RAMPS 1.4 convention.
The order of stepper motors (from left to right) is X,Y,X
- Bottom middle - LCD screen, not used since I use Reprapdiscount LCD controller
- Above that - endstops connectors, the Replicator 2 has only min endstops, the pins are:|———/\—————|| S G S G N S G || G V G V N G V ||———--—————|Where S is Signal, G is Ground, V is VCCEndstops from left to right:X, Y, Z
- Bottom right - Extruder: stepper+fan+heating element - the pins are:|——\__/——————————————|| HP HN FP FN 2B 2A 1B 1A ||——————————————————|
HP/HN - Heater positive/negative
FP/FN - Fan positive/negative
- Middle right - active cooling fan, not using it for now to keep things simple
- Top right - thermocouple, not used, using a Thermistor
In the end the connectors that I need were: steppers, endstops, extruder