Burning the Bootloader - The Easy Way and the Hard Way

As most of you have discovered, Creality has been shipping the CR10 without a bootloader.

We are going to show you the easy way and the hard way to burn a bootloader. First, we will show you the hard way. This involves re-purposing an Arduino Uno to get the job done. Then, we will show you the easy way. If you don't have an Uno yet, before you buy one, consider our USBasp Programmer Kit (The easy way). It will burn a new bootloader and it also has the ability to take a snapshot of your existing firmware and restore from a snapshot. If you are considering our CR10 Auto Bed Levelling Kit, this is already included.

Steps - Hard Way With Arduino Uno

Wiring Diagram For CR10 (NON S)

CR10 Arduino Bootloader Wiring

Wiring Diagram For CR10 S

CR10S Arduino Bootloader Wiring

Parts Needed

  1. Download a copy of Arduino IDE and Install it here. This will get the Arduino IDE installed. If you already have IDE installed, you can skip that step. Now you will need to add the "Sanguino" board type that the CR10 NON S uses. The CR10S does not require the installation of the Sanguino board. Arduino IDE 1.8.9 has the Arduino/Genuino Mega or Mega2560 installed by default. Open Arduino IDE then click file/preferences.

  2. CR10 Burn bootloader IDE preferences

  3. Within the Additional Boards Manager URL text box, past in this URL https://raw.githubusercontent.com/Lauszus/Sanguino/master/package_lauszus_sanguino_index.json

  4. How to add Sanguino to Arduino

  5. Plug your Arduino Uno into your PC with a USB cable.
  6. Open Arduino IDE and make the following selections below in blue. This will upload the sketch to your Uno and allow it to act like a programmer. No changes to the script are needed.

  7. CR10 ArduinoISP Sketch

  8. Once the sketch is loaded, make the selections in blue below then compile and upload using the yellow highlighted button.

  9. CR10 ArduinoISP Sketch upload

  10. Now, make the cable connections as shown in the wiring diagram at the top of the page based on the type of CR10 you have. You can leave your printer powered off and the Uno will power the CR10 or you can remove the 5V red wire and have the printer supply power. Either way works but the latter is recommended. Then, power up your printer or plug in the Arduino to your PC with the USB cable connecting the two.
  11. Select the appropriate Board for your printer:
    • For CR10 NON S, select Tools-> Boards menu - Sanguino
    • For CR10 S, select Tools-> Boards menu Arduino Genuino Mega or Mega 2560
  12. Select the appropriate Programmer for your printer:
  13. From the Tools->Programmer menu, Select Arduino as ISP NOT ArduinoISP. This will be the same for BOTH CR10 models.

  14. How to burn CR10 bootloader

  15. Click Tools -> Burn Bootloader.
  16. The board will reset when complete, and the LCD display will be blank. YOUR EXISTING FIRMWARE WILL BE ERASED. Check out our USBasp Programmer Kit if you want to save a backup of your firmware AND burn a bootloader.
  17. Done. You can now disconnect the Uno and directly connect a USB cable from your PC into your printer and upload sketches again.

  18. Steps - Easy Way With USBasp Programmer

    CR10 USBasp Programmer

    Parts Needed

    1. Make sure you have Arduino IDE installed with the CR10 Sanguino board option as described above if you have a CR10 NONS. The CR10S does not require the installation of the Sanguino board. Arduino IDE 1.8.9 has the Arduino/Genuino Mega or Mega2560 installed by default. If you have our USBasp Programmer Kit just open the supplied USB and launch the standalone Arduino IDE. (Already has CR10 (Sanguino) board installed)
    2. Plug in the USBasp Programmers 6-10 pin adapter into the CR10 motherboards as shown below for CR10 or CR10S and plug the programmer into a USB port on your PC. Make sure the 6-10 pin adapter is facing the correct way as seen below.

      CR10 USBasp Programmer pins

      CR10S USBasp Programmer pins

    3. Open Arduino IDE and make the following selections below in blue. Choose Arduino/Genuino Mega or Mega 2560 for CR10S. The Sanguino board type is for the CR10 NON S only. Then click Burn Bootloader.

    4. Burn Bootloader

    5. Done. But wait! There's more!

    6. Bonus Round!

        Since you already have the USBasp Programmer plugged in, you can select your Marlin.ino and compile/upload. Just make the following selections below and make sure to select Sketch - > Programer type USBasp then Sketch - > Upload using Programmer. This will compile your sketch and upload. Doesn't get much easier.

        How to upload firmware with Arduino using USBasp

        Learn more here