Emisar D4V2: Troubleshooting Flashing Anduril with avrdude

Did you try reflashing your Emisar D4V2 but when you clicked the button… nothing happened and the light didn’t turn on? Maybe you got a little sweaty under the armpits–nervous that you may have bricked your precious light that you waited weeks to arrive from overseas.

Fear not! Just because your light doesn’t turn on right now doesn’t necessarily mean you’ve broken it. Here are some common problems that folks have reported when flashing their lights.


Target doesn’t answer

avrdude: warning: cannot set sck period. please check for usbasp firmware update.
avrdude: error: program enable: target doesn't answer. 1 
avrdude: initialization failed, rc=-1
         Double check connections and try again, or use -F to override
         this check.


avrdude done.  Thank you.

Make sure you’re making contact between the pogo pins and the flash pads.

Verification error

Emisar D4V2: reflashing with pins making contact It’s easy to misalign the pins, so make sure you have good contact

avrdude: verifying ...
avrdude: verification error, first mismatch at byte 0x0000
         0x00 != 0xd7
avrdude: verification error; content mismatch

This seems like your pogo pins aren’t making good contact with the flash pads during the verification step of flashing the firmware. I’ve had this happen to myself plenty of times after seeing all the progress bars for avrdude progress through to 100%.

It’s easy to misalign the pins, so just take a deep breath, look carefully, and try to make sure everything’s aligned properly and try again.


Invalid device signature

avrdude: error: program enable: target doesn't answer. 1
avrdude: initialization failed, rc=-1
avrdude: AVR device initialized and ready to accept instructions
avrdude: Device signature = 0x000000 (retrying)
avrdude: Device signature = 0x000000 (retrying)
avrdude: Device signature = 0x000000
avrdude: Yikes!  Invalid device signature.
avrdude: Expected signature for ATtiny1634 is 1E 94 12

This can happen if your pogo pins aren’t making good contact in the initial part of running avrdude. Similarly to the verification error above, the simple fix is to just try again, making sure that you have good contact of the pins with the flashing pads.


Warning: Cannot set sck period warning

avrdude: warning: cannot set sck period. please check for usbasp firmware update.

This is fine. This warning message seems to show up for a lot of people. It doesn’t seem to cause any problems in flashing the light.


No warnings or errors, light doesn’t turn on

The most common cause I’ve seen for this is that the wrong HEX was flashed to the light. As u/-Cheule- notes:

I have flashed the wrong hex so many times to my lights… never have I been unable to reflash and fix it.

It’s very easy to make this mistake. Make sure you have the correct HEX file for your combination of emitter/driver and try again.


None of this worked

If none of this worked for you, head on over to r/flashlight or r/Hanklights and ask for help and describe what you’ve tried and what you’re seeing. Don’t be shy, these are both super friendly places and folks are always willing to help!

Additional Resources