Emisar D4V2 Flash Kit Instructions (Official How To)

Run cmd as Admin in the AVRDUDE install dir. (copy/paste in Notepad > save as .bat > execute.. )

EDIT:

Really fancy the latest changes in the FW :)

- The "release for On" instead of "press for On" - feels much more intuitive now

- The ramping down after a short release in the Strobe Modes - now consistent with the main ramping (always thought that I was doing something wrong when I was trying to ramp down in any Strobe mode.. )

- Factory Reset -Yay! Nice to have a fail-safe, just in case..

The rest of the updates were already on my D4V2. Not on my FF's tho,, thus, next I'll need to cook up some Dupont wires to flash my FF's as they're becoming, umm.. outdated :))

Now..

- How would I go about compiling my own custom Anduril.. ? Would I need to.. idk, clone a custom fork or something.. ? And is the compiler online, on the launchpad site, or.. ?

I just want to start making some small changes to customize my lights, now that I've got my Flashing Kit on yesterday.

Things like stop at Moonlight while 1H from Off, instead of continuing to ramp, removing Muggle mode entirely, maybe change the Aux LED's R&G only as Batt. Lvl. Indicator and B as Cfg. Mode Status (instead of the main LED's) change the batt. cut-off voltage to ~3.2V, remove the mid ramp blinks, change the default On brightness (say.. a fraction of the ceil, ex. 1/2, 1/3, 1/4, 1/5... etc. of the ceil) and other fun bits like these..

This was very helpful in setting up the Atmel Studio :)

After setting up mine, I've started doing some edits:

  • Stop at Moon instead of continue ramping up
  • No reset to Ramp Up after a second (more like other ramping UI's) thus also, no 2H to ramp down
  • Only temporary Turbo by 2H - returns to current level
  • Temp ceil 40*C
  • Smooth Ramp Floor 1 / Stepped Ramp Floor 1x7135 / Ceil MAX - 50
  • No Muggle Mode
  • By default Aux LED's are indicating the Batt. Lvl.
  • Beacon now 5ms at Max. Lvl. instead of 100ms
  • Probably.. likely, a couple of bugs

If anybody wants to try this out "as is", you can download the files here: D4V2 Custom files

Make sure you first back up your current official firmware before flashing this firmware.

This was just made as a test to see how the UI would work/feel with these changes..

I am no coder and have no experience with coding, so.. expect bugs.

Cheers!

EDIT:

Couple more changes..

Basically, double click:

From Off - Ceil

From On:

Not Ceil - Ceil

From Ceil (by 2C) - Memorized Lvl.

From Ceil (by ramped) - back to 1x7135

Link: Anduril.c

Hey everyone, I was able to flash my D4V2 with “anduril.2019-09-28.emisar-d4v2.hex” on the z flasher app app fine. When I tried to flash my D1 with “anduril.2019-09-28.emisar-d1.hex” and with the 8/5 version, D1 no longer works. The LED with flicker erratically, but no response. Is it bricked? How do you successfully flash the D1?

Wow, I didn’t know that. The T1634 must be that new MCU ToyKeeper was working with.

No, it is not bricked. As long as you don’t change the fuses it’s almost impossible to “brick” an ATtiny. You can simply try to flash it again (using the correct parameters and hex file). The flashing app should have noticed that it’s a different MCU.

Glad it’s not bricked. Initially I chose attiny1634, the app said flash successful. Then I tried attiny 85 and the flash was unsuccessful. Did this a few times. I can try again tonight.

I tried using otg adapter using my S10+. It’s saying error. When I looked in the log it said it wasn’t the right format. Does anyone know what I might have done wrong?

I attempted it again afew times with the attiny85 in the settings in the mobile app. Same result. There’s a pop-up with the message ” operation complete with errors!” The last few lines of the log read:

vrdude: verifying …
avrdude: verification error, first mismatch at byte 0x0000
0xff != 0xa9
avrdude: verification error; content mismatch
avrdude: usbasp_close()

avrdude done. Thank you.

If it’s beneficial, I can post the whole log somehow.

Tried the windows method with that command line, same error. Also tried both attiny1634 and attiny85 options on both windows and mobile app, same result, light not operational

I’d suggest re-downloading the firmware. Perhaps your first copy is corrupted?

Maybe try another revision?

EDIT: Spelling error

Just curious, how does the setup work? Are you using an SOIC clip or pogo-type pins to flash the D1?

What happens when you enter this command? -

D1 would require a clip as it does not have flashing pads (on the current version).

I have the official flash kit. My D1 has the same pins as my D4V2.

When I put in the command “avrdude -p t85 -c usbasp -n” I get the following:

When I put in the command “avrdude -p t1634 -c usbasp -n” I get the following:

I’ve flashed the light with setting combinations of two chips (ATtiny1634 & ATtiny85) and four hex files (anduril.2019-08-05.emisar-d1.hex, anduril.2019-09-28.emisar-d1.hex, anduril.2019-08-05.emisar-d4v2.hex, anduril.2019-09-28.emisar-d4v2.hex), using new downloaded hex files in both windows 10 and the android app. Flashing with the ATtiny85 setting gives errors. No errors in the ATtiny 1634 setting. Flashing with ATtiny85 chip setting and any hex do not give a working light. Flashing with either chip and any D1 hex file do not give a working light.

The combinations of settings of ATtiny 1634 and either D4V2 hex file now give me a working D1, however now the light flickers a lot when screwing on the battery tube and sometimes stays on when battery tube is fully screwed on. Do I have a thread problem now? Anodization looks pretty good. A sliver of anode has worn off :frowning:

Edit: Or is the flickering/light on due to the software and flashing?

@cuberS

Couple of things:

-never flash a firmware that you KNOW is for a different device, e.g. D4V2.hex on a D1 - doing this usually means begging for trouble

-your 2nd try with the “avrdude -p t1634 -c usbasp -n” command produced the correct results for the D4V2

-if you can repeat that with "avrdude -c usbasp -p t1634 -u -Uflash:w:FILENAME.hex" and the correct firmware you should be successfull

-make sure to hold your hands really still while the flashing is in progress, maybe get a 2nd person to press the enter key for you

Ok…curiosity piqued…

Afraid to try before…but flashed my D1 with 9.28.19 D1 anduril…

Popped out the driver…no problem…unsoldered the black wire…spun the driver around…set up my SOIC clip, used Android phone for flashing…

Failed like 10 times…checked my wiring…wiggled all my wires…some came loose a few times…still errors…FINALLY reseated the clip just right…was always missing a prong or two…

Successful flash!

I did get “operation failed” like 10x though…in the end…was a bad clip on chip connection…

Mine is an ATtiny85 chip…says so right on the chip…so used that setting…

Look closely at your chip to identify it…

Hope you get results soon!

Peace!

Everything you say indicates that your D1 has a D4V2 driver in it. I don’t think there is a proper file for that combination available, although I don’t know the precise differences between D1 and D4V1 drivers for instance (that is, those using the same MCU).

Your other problem of the light flashing as the tube is tightened suggests a physical problem, most likely some wires are pinched between the driver and the body.

I agree with the above, it looks like Hank is now using a new driver in the D1 based on your findings. (Flashing pads, 1634 works, 85 doesn’t, D1 firmware doesn’t work, etc…). This is cool and exciting, but kind of a bummer right now in your situation.

My guess is that you have the newer MCU (ATtiny1634) and your firmware files are for the older MCU (ATtiny85). If the D4v2 firmware doesn’t work (most likely not the exact same driver as the D4v2), you will need to obtain a version of the D1 firmware suitable for use with the new MCU. I would reach out to Hank and see if all this is true, and if he can provide you with the proper firmware (to get you going).

ToyKeeper would be another good resource as she is likely the one to have written the code for the newer driver (unless Hank just modified the D4v2 Firmware, but this seems unlikely).

Does that mean the new D1 now uses ATTiny1634 MCU instead of ATTiny85? And it has the same flashing pad as D4v2 (which uses ATTiny1634)?

Can you take a picture of the D1 flashlight?