Some notes we've thrown together.

Here are a few articles we've prepared on technical topics which other people may find helpful.

Updating your Creality Ender 3 3D Printer's Firmware with an Atmel AVR ISP MKII

Last Updated : June 2020

I recently wanted to update the firmware on my Creality Ender 3 3D printer, and found a ton of tutorials and videos online offering guidance. The firmware on my printer's mainboard had never been updated, so it still had the original firmware that came onboard from the factory, which was more than a year old.

Someone had given me several of the Atmel AVR ISP MKII in-system programmers, so I figured I would use one of them to try updating the firmware. I had never updated the firmware on an Arduino-type device before, so this process was new to me.

Here are some good reasons to upgrade your Creality Ender 3's original factory firmware to the newest version :

  • Thermal Runaway Protection enabled in the firmware
  • Filament Change feature expanded and works much better
  • BLTouch automatic bed-levelling support
  • Installing a bootloader during this process makes future updates easier

I want to give credit to a few videos that I found helpful, and whose steps I have both added to and improved upon below :

Update Steps

  1. Power off the Ender 3's power switch, and then disconnect the Ender 3's main power cord.
  2. Download and install the drivers for the Atmel AVR ISP MKII device onto the computer you will use to upgrade the Ender 3.
  3. Download and unpack the updated firmware files for the Ender 3 from Creality's website
  4. Open and compile these new Ender 3 firmware files in the Arduino environment. This may take several minutes to finish compiling. If it DOES NOT compile the firmware successfully, then you should STOP HERE and DO NOT PROCEED, since you will not have valid firmware compiled to install on your 3D printer.
  5. Unscrew the screws securing the panel onto the Ender 3's mainboard compartment, and gently remove the lid. The lid has a fan connected with wires to the Ender 3's mainboard. Set the panel aside.
  6. Try connecting the ribbon cable from the AVR ISP MKII to the six pin ISP connector on the Ender 3's mainboard. The six pin ISP connector is located next to the LCD display connector. If the AVR ISP MKII's connector does not physically fit onto the six pin connector on your Ender 3's mainboard, then you will need to clip off some of the extra plastic on the side of the AVR ISP MKII's ribbon cable's connector, on the side that will be closest to the Ender 3's LCD display connector. You may also want to remove some of the plastic bordering the Ender 3's LCD display connector to make the cable fit better.
  7. Connect the USB cable on the Atmel AVR ISP MKII to your computer. With the drivers we installed earlier above for this device, it should be detected by your computer, and installed properly. The Atmel AVR ISP MKII should now have two LED lights lit up - an LED light near the USB connector should be green, and another LED light closer to the ribbon cable should be red
  8. In order to re-program the Ender 3's mainboard, you need to provide power to it. The Atmel AVR ISP MKII cannot and will not provide enough power to the Ender 3's mainboard for it to work. This step was not mentioned in any other tutorial I read before attempting this. Maybe other models of ISP devices may supply enough power, but the Atmel AVR ISP MKII does not. You can connect the mini USB cable between the Ender 3 mainboard and a USB power supply, and power the board that way. When the Ender 3's mainboard is connected to power, a small blue LED light mounted on the mainboard will illuminate. With the Ender's mainboard powered on, the Atmel AVR ISP MKII should still have two LED lights lit up, but now both of the LEDs will be green, indicating that the ISP has detected the Ender 3's mainboard.
  9. In the Arduino environment, burn the bootloader onto the Ender 3's mainboard. The Arduino software will indicate when it has successfully completed burning the bootloader. The Ender 3's LCD display will be lit, but with nothing showing on it. The Ender 3's mainboard now has a bootloader installed on it, but will not function normally until we install the firmware below.
  10. Unplug the mini USB cable from the Ender 3's mainboard. The Ender 3's mainboard will power off, and the Ender 3's LCD Display will go dark.
  11. Disconnect the Atmel AVR ISP MKII's 6-pin ribbon connector from the connector on the Ender 3's mainboard.
  12. Inspect your computer's Arduino software - under ports, look at the entries that appear there by default and remember what is shown, so that we can ignore those options in the next steps.
  13. Connect the mini USB cable between your computer and the Ender 3's mainboard.
  14. Your computer will now detect new hardware has been connected, but will then complain it cannot find drivers for it, and the Creality mainboard's USB serial port will not be installed correctly or function properly. This is another step which was NOT mentioned in other tutorials. Maybe different revisions of the Ender 3 mainboard require software drivers not provided with Windows or Mac by default. We will need to install the proper drivers onto your computer for the Ender 3's USB serial port, in order to continue installing the new firmware on the Ender 3 mainboard. I could not tell which drivers were needed to make the USB serial port work with my computer, but eventually found some postings online indicating that the driver for a CH340 chipset was needed.
  15. Download the CH340 drivers from the TH3D website page
  16. Install the appropriate CH340 drivers for your computer's operating system.
  17. With the drivers installed, the USB serial port device will suddenly be detected and installed properly on your computer's operating system.
  18. In the Arduino software, check under the list of Ports again - a new serial port should now be shown alongside the other options. This is the Creality mainboard, so you should ensure this serial port is chosen from the list of ports shown.
  19. In the Arduino software, upload the new firmware to the Ender 3's mainboard.
  20. When it finishes successfully uploading the new firmware to the Ender 3's mainboard, exit the Arduino software, and disconnect the mini USB cable from both the computer and the Ender 3's mainboard.
  21. Close the lid on the Ender 3's mainboard compartment, and replace the screws.
  22. Connect the Ender 3's main power cord, and power on the Ender 3 normally.
  23. The Ender 3's display should show the mainboard starting up, and the user interface should appear on it, showing it functioning normally with the new firmware installed.

Get In Touch

Lets talk about your project or online needs!
Contact Us