Ender 3 with Marlin – How to Install Marlin Firmware on Your Ender 3

Ender 3 Marlin

What is Marlin Firmware?

Marlin firmware is the world’s most popular 3D printer firmware. It runs on an 8-bit controller board, making it affordable, and it’s fully open source and free to use. It’s ideal for companies like Creality, who produces the Ender 3, to modify and add to their machines.

While the Ender 3 is a great machine – it was even our winter 2018/19 pick for the “Best 3D Printer Under $200” – its lower cost means some extras are not included. But, fear not, this guide will explain how to upgrade your Ender 3 using Marlin.

If you don’t have an Ender printer, check out our general guide on installing firmware.

Ender 3 Marlin

Flashing a Bootloader

Since the Ender 3 is a budget 3D printer, the board it uses does not have a bootloader pre-installed. So, you need to install one yourself before you can flash the firmware over USB.

What You’ll Need

  • 5 female to female single Dupont wires
  • 1 female to male Dupont wire
  • An Arduino Uno (or clone) and cable to connect to a PC
  • A Windows computer with the Arduino IDE pre-installed

How To Do It

  1. Open the Arduino IDE on your computer.
  2. Go to example sketches, select Arduino ISP and open it up.
  3. Go to ‘Manage libraries’ and add the U8glib Library (Make sure the library is called U8glib. You may have to scroll down.)
  4. Then go to board manager and add the Sanguino board.
  5. Once done, plug in your Arduino Uno. Select Arduino Uno as the port and Arduino Uno as the board, then click ‘Upload sketch’. It should upload successfully.
  6. Select the Sanguino board from the menu, which you should have added.
  7. Open your Ender 3’s control box and wire it up to the Arduino as follows:Melzi — ArduinoMISO — MISO5V — 5VSCK — SCKMOSI — MOSIRESET — Digital Pin 10 (the pin with the ~10 on the Arduino in the row of pins)

    GND — GND

  8. If a blue light flashes on the Creality board you have wired it correctly
  9. Click on the tools tab and click ‘Burn bootloader’. If it says in the shell ‘Output bootloader burned successfully’, you’ve done it.
  10. Unplug your Dupont connectors from the Ender 3, put the cover back on the board and screw it on.
  11. Now unplug your Arduino from the computer.

Ender 3 Marlin

Installing Marlin Firmware

Now that the bootloader is flashed, you’re ready to upload the firmware.

  1. Download the latest version of Marlin firmware.
  2. Unzip the folder and navigate to the example configurations folder, which is in the Marlin folder. Select the folder that says Ender 3 in example configurations and copy all the files there back into the Marlin folder. When it asks if you want to overwrite what is already there, click ‘yes’.
  3. Scroll down to the marlin.ino file and click to open it in the Arduino IDE.
  4. You are now ready to upload. If you wish to add bilinear bed leveling, go to the next step. Otherwise, make sure you have the printer plugged in via USB, the port is correct and the board is Sanguino. Then click the upload button. If that completes in the shell you are finished.
  5. Unplug the printer from the computer and plug it into the power socket. Be aware the printer may take longer to boot up than usual.

Ender 3 Marlin

Bilinear Bed Leveling

Bilinear bed leveling is when the printer levels the bed itself – without you having to manually do it using knobs under the bed. It does this by probing the bed in a set of nine points and, using a piece of paper or feeler gauge, you can use the dial to move the z-axis up and down in small increments and the printer will automatically compensate this in your prints.

  1. Open the marlin.ino file select configuration.h.
  2. Type Ctrl F and search for PROBE_MANUALLY
  3. Uncomment it by deleting both slashes
  4. Then search LCD_BED_LEVELING and uncomment it
  5. Search for AUTO_BED_LEVELING_BILINEAR and click ‘Find’ twice then uncomment what it selects.
  6. Since the Ender 3 only has 1248kb of storage, search SLIM_LCD  and uncomment it.
  7. Now you are ready to compile.
  8. Make sure you have the printer plugged in via USB, the port is correct and the board is Sanguino. Then click the upload button. If that completes in the shell you are finished.
  9. Unplug the printer from the computer and plug it into the power socket. Be aware the printer may take longer to boot up than usual.

ENDER 3: MARLIN

Adding Automatic Bed Leveling

Automatic (bilinear) bed leveling is when the printer levels the bed itself – without you having to manually do it using knobs under the bed. It does this by probing the bed in a set of nine points and, using a piece of paper or feeler gauge, you can use the dial to move the Z-axis up and down in small increments and the printer will automatically account for this in your prints.

  1. Open the marlin.ino file select configuration.h.
  2. Type “Ctrl F” and search for PROBE_MANUALLY.
  3. Uncomment it by deleting the two slashes.
  4. Then search LCD_BED_LEVELING and uncomment it.
  5. Search for AUTO_BED_LEVELING_BILINEAR and click “Find” twice. Then, uncomment what it selects.
  6. Since the Ender 3 only has 1,248 KB of storage, search SLIM_LCD  and uncomment it. Now you’re ready to compile.
  7. Make sure you have the printer plugged in via USB, the port is correct, and the board is Sanguino. Then click the upload button. If that completes, you’re finished!
  8. Unplug the printer from the computer and plug it into the power socket. Be aware the printer may take longer to boot up than usual.

Source: Ender 3 with Marlin – How to Install Marlin Firmware on Your Ender 3


About The Author

Ibrar Ayyub

I am an experienced technical writer holding a Master's degree in computer science from BZU Multan, Pakistan University. With a background spanning various industries, particularly in home automation and engineering, I have honed my skills in crafting clear and concise content. Proficient in leveraging infographics and diagrams, I strive to simplify complex concepts for readers. My strength lies in thorough research and presenting information in a structured and logical format.

Follow Us:
LinkedinTwitter

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top