Skip to content

Ender 3 Installing Marlin

Marlin Logo

Adding Customizability

After using my Ender 3 machine for a few days, I decided that I wanted to add a filament runout sensor so that I didn’t lose valuable print time or waste filament. After some quick internet research, I found out that you can’t flash new firmware onto the Ender 3 over USB like I was used to, and the process only got more complicated after that. After an evening tackling problem after problem, I finally managed to get the latest version of Marlin loaded and that effectively let me customize the machine as I saw fit. I mostly just used it to install a filament runout sensor.

One of the cool things about the Ender 3 is that it is entirely open source. You can go to the github page and find all of the prints, bills of material, PCB layouts, firmware, everything. That being provided by a commercial 3d printing company seems pretty cool to me. That being said, one of the bigger frustrations I have with this machine is not being able to plug a USB cable in, and flash updated firmware. I guess I can’t really complain when the whole printer costs $200, considering my Duet WiFi controller costs $160 for just the controller.

This post is a step by step of how I managed to get the latest Marlin firmware flashed onto my Ender 3. 

Table of Contents

Tools Required​

I used a laptop with Arduino IDE installed, an Arduino Mega, female to female jumper wires, and one male to female jumper wire.

In order to burn the bootloader, I had to use two versions of the Arduino IDE. One was the latest from the windows store, and the second was a custom version from TH3D’s unified firmware package.

https://www.th3dstudio.com/knowledgebase/1284p-printer-bootloader-flashing-video-guide-cr-10-ender-2-3-5-wanhao-i3-anet/

I also downloaded the latest 1.0 version of Marlin from their site, which conveniently has the Ender 3 preconfigured. 

https://marlinfw.org/meta/download/

 

Jumpering The Arduino

Burning The Bootloader

Flashing Marlin

Firmware Updates Enabled

This took me about three or four hours after stumbling through several roadblocks, but in the end it enabled me to update and customize my firmware, which allows me to do stuff like add a filament runout sensor and save filament. You can see my related post for how I configured and enabled the runout sensor. 

Author

Facebook
Print
Email
Twitter
Pinterest
LinkedIn
Reddit