• Skip to main content
  • Skip to header right navigation
  • Skip to site footer
Maker Hacks

Maker Hacks

Ideas, news & tutorials for makers and hackers – Arduino/Raspberry Pi, 3D printing, robotics, laser cutting, and more

  • Home
  • About
  • YouTube
  • Recommendations
  • Contact

Loading the Arduino Bootloader on your Arduino 3D Printer Board (Unbricking Your RAMPs/3D Printer)

You are here: Home / Hacks, Tips, and Tutorials / Loading the Arduino Bootloader on your Arduino 3D Printer Board (Unbricking Your RAMPs/3D Printer)
FacebookTweetPin
Author: Chris Garrett
Burning Arduino Bootloader for 3D printer
Burning Arduino Bootloader for 3D printer

I received a JG Aurora A5 to review. Unfortunately, there were a few issues. Fortunately, however, they were issues I was fairly sure would be resolved by the community-provided Marlin Firmware.

Yes, another printer using open source but breaking the Marlin license.

So I went to update the firmware … and got the dreaded AVRDude Timeout Error.

AVRDude Timeout Error - How you know you need a bootloader
AVRDude Timeout Error – How you know you need a bootloader

avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_getsync(): timeout communicating with programmer

9/10 if it is connected correctly, the correct board and port is selected, then this tells us that the Arduino-based MKS 3d printer board did not have the bootloader installed.

Heres how to fix that if you find yourself in the same situation!

Pre-Flight Check

Before you do any of this just give everything a look-over to ensure the problem really is the firmware!

Check hardware connections and anything you overlooked first
Check hardware connections and anything you overlooked first
You might need to disconnect any serial comms cables
You might need to disconnect any serial comms cables

Programming an Arduino Board with an Arduino as “ISP”

If you don’t have a dedicated programmer device then you can do what most of us do, and that is to use a clean Arduino to program your 3D printer board. It’s easy, you just need that spare Arduino and some breadboard jumper cables. Kits usually include both.

In this example, I use an Arduino Mega because that is what I use on 3D printers, but an Uno is fine, and much as I like to support the creators, clones are perfectly ok. No need to spend extra to buy an original Arduino for this.

  • Arduino clones at Gearbest
  • Ardiono at Amazon

You will also need the Arduino desktop software, if you don’t have it already.

Arduino ISP Software

On the spare Arduino, install the “Arduino As ISP” sketch (it should be included in the Examples files). Just load the example, set the port and board to that of your spare Arduino, and compile+upload. Follow the animated gif here:

Loading Arduino as ISP sketch
Loading Arduino as ISP sketch

Next, find the ICSP port connections on both boards. Usually they will actually be labeled as such, but otherwise, they will look like this.

Find the ICSP port connections
Find the ICSP port connections – this is the borked MKS Gen_L V1 in the JG Aurora
Closeup of the ICSP port connections
Closeup of the MKS board ICSP port connections

You need to connect like-for-like across both boards, with one exception that the target 3D printer board needs the reset pin connected to the data pin (Pin 10, by default) on the Arduino programmer board:

Connect the two ICSP ports
Connect the ICSP from the bricked board to your fresh Arduino – note Reset goes to Pin 10 on the Arduino

Now you can use the Arduino as the ISP (In-System Programming) device, and select to upload Bootloader to the 3D Printer board (or any Arduino).

Select Arduino as ISP
Select Arduino as ISP

Finally, you can burn the bootloader!

Burn Bootloader!
Burn Bootloader!

When you reconnect the 3D Printer board and upload the firmware you should see something like this 🙂

Firmware updated - Success!
Marlin Firmware updated – Success!

Related

Category: Hacks, Tips, and TutorialsTag: 3d printer, arduino, firmware, ramps
FacebookTweetPin

About Chris Garrett

Marketing Director by day, maker, retro gaming, tabletop war/roleplaying nerd by night. Co-author of the Problogger Book with Darren Rowse. Husband, Dad, 🇨🇦 Canadian.

Check out Retro Game Coders for retro gaming/computing.

☕️ Support Maker Hacks on Ko-Fi and get exclusive content and rewards!

Previous Post:Adding a GPU with Powered PCIe Risers
Next Post:Can I replace my iMac with a DIY PC?

Sidebar

  • Facebook
  • Twitter
  • Instagram
  • YouTube

Recently Popular

  • Gweike Cloud Review
  • How to choose the right 3D printer for you
  • Glowforge Review – Glowforge Laser Engraver Impressions, Plus Glowforge Versus Leading Laser Cutters
  • Original Prusa i3 Mk3S Review
  • Best 3D Printing Facebook Groups
  • Elegoo Mars Review – Review of the Elegoo Mars MSLA Resin 3D Printer
  • Glowforge ‘Pass-Through’ Hack: Tricking the Front Flap of the Glowforge with Magnets to Increase Capacity
  • How to Make a DIY “Internet of Things” Thermometer with ESP8266/Arduino
  • Wanhao Duplicator i3 Review
  • IKEA 3D Printer Enclosure Hack for Wanhao Di3
  • Creality CR-10 3d printer review – Large format, quality output, at a low price!
  • 3D Printed Tardis with Arduino Lights and Sounds
  • Anet A8 Review – Budget ($200 or less!) 3D Printer Kit Review
  • Make your own PEI 3D printer bed and get every print to stick!
  • Upgrading the Wanhao Di3 from Good to Amazing
  • How to Install and Set Up Octopi / Octoprint
  • Creality CR-10 S5 Review

Copyright © 2023 · Maker Hacks · All Rights Reserved · Powered by Mai Theme