Wait.....What? and WHY?

Nope. We are not in a dense compute cluster that operates a simulation within a simulation. You're not in a simulation...Or ARE you? You're not....or are you.......? You're not.

For those who want to make some firmware changes or try the newest firmware release, you are faced with a risk. You can upload new firmware easily with Arduino IDE but once you do, your old firmware is toast. Creating a snapshot is exactly as it sounds. Read the existing firmware off of your healthy printer in the EXACT state with every little setting intact. If you have your Marlin.ino file saved as a backup, you will not have any Z-offset information (if you are running ABL) or other changes that you made to your printer after you compiled and uploaded with Arduino IDE.

Taking a snapshot does nothing but take a peek of your firmware and record it. Nothing is disturbed but now you have a perfect backup if you need it. You can even restore from a snapshot. If you want to play with firmware, you now can brave to wild waters in beta land for the bleeding edge firmware. AND, if you don't like it? You can restore your printer from a snapshot you took previously in less than 2 minutes.

We have to take a closer look at the notorious USBasp programmer to start to understand how this works. I say notorious because the firmware shipped on these is ALWAYS out of date. Out of the dozens tested, not ONE was shipped with the correct working firmware to do a snapshot without errors. I say notorious again because when you get your hands on one of these, in order to upgrade the firmware, you need.....another USBasp or an Arduino Uno acting as an Arduino ISP to correct the firmware.

Fortunately, we have gathered up all the parts and pieces to do this and more. The Uptanium USBasp Bootloader and Snapshot Kit. The correct firmware is installed along with the correct 10-to-6 pin adapter that plugs directly into the Ender. We even include email support and a PDF with detailed instructions for the CR10/CR10S and other printers. Also, we have included the known working version of avrdudess version 2.4 which has avrdude 6.3 underneath. It runs off of our supplied USB drive in the Uptanium USBasp Bootloader and Snapshot kit. FYI, Avrdudess 2.4 is the GUI that runs Avrdude 6.3 under the hood. Make sure you get AVRdudess 2.4 GUI and make sure it uses Avrdude 6.3.

Enough about our kit. If you are comfortable with hunting down firmware and programming your own USBasp, we will show you how proceed after you have your USBasp firmware updated. If not, grab our Uptanium USBasp Bootloader and Snapshot Kit from us an be done with it.

Things You Need

  • Our Uptanium USBasp Bootloader and Snapshot Kit COMPLETE $24.95 - Amazon Prime
  • OR a USBasp Programmer from Amazon $6.99 - Amazon Prime (will need firmware updated)
  • Correct 10-to-6 pin adapter $5.99- Amazon Prime
  • Avrdud3 6.3 Download Free (make sure it uses Avrdudess 2.4 for the GUI - Should look like below)
  • Let Get Started

    STL Files



    1. Install Avrdude 6.3 and open it. It should look identical to below. Take note in the top of the dialogue box it says Avrdudess 2.4 (avrdude version 6.3)

    2. Now, connect the USBasp Programmer to your Cr10 or CR10S motherboard as shown below. Once the programmer is connected, power up the printer and plug the programmer into a USB port on your PC.

      For our kits, we use a yellow dot but just make sure the center pin labeled SCK on the 6 pin side is facing in the right direction. The other side of the 6 pin end of the adapter will be marked with MOSI. Another easy way is to make sure the slot on the 10 pin side is facing the same direction as shown.

    3. CR10 USBasp Programmer Orientation

      CR10S USBasp Programmer Orientation

    4. Make the selections in blue as seen below for the CR10 model you have. One note to make is that you need to COPY the DESTINATION directory path you would like to save your snapshot in into the url text box. IT MAY BE TEMPTING TO SIMPLEY BROWSE USING THE RED HIGHLIGHTED BUTTON BUT DON'T. For this example, we chose a thumb drive that had a folder named MyBackups. Once you have your destination FOLDER pasted, append the Snapshotname.bin FILENAME to the end like below.

    5. CR10 take snapshot

      CR10 backup firmware

      Before you click that GO button to create a snapshot, lets check to see if your USBasp programmer is behaving. Click the detect button highlighted in yellow as shown above. You should see the message depending on your printer type:

      • CR10 Unknown signature 1e9705(probablym1284p)
      • CR10S Unknown signature 1e9705(probablym2560)

      When the message is "probablymXXXX", this means it sees your printer since CR10 has the Atmega 1284P chip installed and the CR10S has the 2560 chip installed. This is good! It means everything is working.

      CR10 CR10S detect motherboard

    6. Once the USBasp programmer is communicating with your CR10/CR10S, double check that everything highlighted in blue is selected from above in step 3 then press the GO button highlighted in green.

    7. Once the programming finishes successfully, you will see this message in the black information screen. Check the directory for your new snapshot. It will be in there as a .bin file so you may need to select all file types to see it.

    8. Restore From Snapshot

    9. This is the easy part. In this example we restore the snapshot for a CR10 (12484P). If you have a CR10S , select MCU type 2560 instead of 1284P. When you want to restore to your previously saved snapshot, open Avrdudess again and make the following selections. This time, you can use the browse file feature to find your snapshot.bin file. The only difference here is that you selected WRITE instead of READ. Congratulations. You now know how to create and restore snapshots!

      Restore CR10 CR10S Firmware

    Buy the USBasp Bootloader and Snapshot Kit

    Uptanium sells exclusively on Amazon to leverage Prime shipping speeds.

    Learn more here