1. First things first: you're going to need a copy of Marlin.
If you are upgrading an existing 3D printer to use a Titan, you should try to get a copy of your current firmware from your printer's manufacturer.
If you're building a new printer, or simply want to upgrade to the latest version of Marlin, download it at http://marlinfw.org/meta/download/
If you download a fresh version of Marlin you'll have to configure more settings than the ones mentioned in this guide so that it will work well with your printer.
2. Almost all printers use Arduino IDE to upload fresh firmware, so download it at https://www.arduino.cc/en/Main/Software
3. Unzip Marlin from the zip file you downloaded and put the resulting folder anywhere on your computer for safekeeping.
4. Inside this folder, navigate to the Marlin sub-folder and open the file:
Marlin.ino
This should open every file in Marlin.
Find the file:
Configuration.h
5. If your old extruder was ungeared, you'll notice that your new Titan extrudes backwards!
Flip the following line in the file:
Configuration.h
from:
true
to:
false
or vice versa:
INVERT_E0_DIR
6. The next thing we'll have to update is your printer's E-steps-per-mm.
Your slicer will generate G-Code for your printer, which will tell it to extrude a certain length (in millimetres) of filament. Your printer takes those lengths of filament and calculates how much it should rotate your Titan's stepper motor to push out the expected amount filament. This number is used to make that conversion.
7. First, we'll start with a ball-park estimate of your E-steps-per-mm, and then we'll fine-tune it.
If you're using the standard Titan motor, start with:
837 Steps-per-mm
8. To set your new E-steps-per-mm you need to edit your firmware and EEPROM
EEPROM are special settings that can be changed without re-uploading new firmware to your printer. Steps-per-mm settings for each axis are included in the EEPROM. If you update your firmware, your EEPROM will overwrite any changes your firmware might have tried to make.
Not all printers have EEPROM settings, so if you can't update them, just update your firmware instead.
9. If you have an LCD Screen:
Navigate to:
Control → Motion → Steps/mm → Esteps/m and enter your new E-steps-per-mm value.
Select:
Store Settings
in the
Control
menu to save your settings.
10. Over USB Connection
Use a printer control software to connect to your printer.
Send the command
M92 E<your number here>
to your printer.
Then, send
M500
to store your settings
11. If you don't have EEPROM, or want your firmware to be consistent with your EEPROM:
Update the following line with your new value in the E-steps spot:
#define DEFAULT_AXIS_STEPS_PER_UNIT {<X-axis> <Y-steps> <Z-steps> <E-steps>}.
12. Upload your firmware as normal.
13. To get a more exact value for your E-steps-per-mm, measure the exact amount of filament that is pushed out of your extruder.
14. Load filament into your extruder, just until it is gripped by the drive shaft (you can't pull it out without moving the large gear turning)
15. Mark your filament at the top of the idler arm or PTFE tubing with a pen or permanent marker .
16. Tell your printer to extrude 100mm of filament. Use your printer's LCD screen, or send it:
G92 E0, then G1 E100
via your printer control software.
17. You may need to heat your HotEnd before your printer allows you to extrude filament. You can use the:
M302
command to get around that.
18. Mark your filament again at the top of your idler arm or PTFE tubing
19. Eject your filament.
20. With a ruler or callipers, measure the distance between the two marks on your filament.
21. If the distance wasn't exactly 100mm, use a proportion to calculate a more precise E-steps-per-mm value.
22. Enter that new value into your firmware or EEPROM as you did before.
23. Upload the new firmware to your electronics as you normally would. Typically this means plugging in your printer to your computer, selecting the correct COM port and board type, and pressing the upload button.
If you're unsure of how to update your printer's firmware, check with its manufacturer.