ARM Programming

Contributors: M-Short, Ell C
Favorited Favorite 10


Bootloader Protect Fuse Bits

If you get an error when trying to program, check the Fuses tab. On many of our boards we set the bootloader protection to protect from accidental overwriting. Basically this defines the size of the bootloader. Setting this value to 0x07 will set the bootloader size to 0 and allow you to write to that space.

Setting boot protection

Error Reading Device Signature and Flashing

If you receive the error below:

Error: No device detected. Error 4109.

Unable to enter programming mode. Verify device selection, interface settings, target power, security bit, and connections to the target device.

This may be due to a few things:

  • clock speed is too high
    • try setting the the programmer to 1/4 of the frequency of the target device
  • the wiring of the 2x5 header may be different depending on your programmer
    • check the user manual on the programmer and ensure that the pinout matches the target's header pins
    • ensure that the solder joints are good
  • target device is not powered
    • since the programmer does not provide power, make sure you are providing power to your target device

In this particular case, it was due to the wiring of the 2x5 header on the Atmel JTAGICE3 port. It was different from the 2x5 header on the target device. The latest Atmel JTAGICE has two ports and an adapter to correctly connect to the 2x5 header.