Flashlight Firmware Repository

Thanks for the clarification…

Is it possible that Lumintop flashed the wrong firmware (FW3A-219 instead of FWAA) on their FWAA, or just that the model code has a mistake in the cfg-fwaa.h, as you mentioned?

How to check if that is indeed the case? (3-channel program code on a 2-channel physical driver = what kind of issues will happen?)

Does it ramp up and down normally on all 150 levels? Then everything is alright. Wrong channel configuration would result in nonlinear ramp, no turbo, no moon or whatever.

I hope this is an OK place to ask for help. I just updated my KR4 and D4V2 lights to the latest Anduril. However I had the following issue on my K9.3, and after I have not been able to reflash (Or use).

Failed attempt:

Every try since:

I should add that I have tried -F as well

Usually this means it is not physically connected… like the connector slipped during a reflash. Keep trying, and it should work eventually.

It can help to use good lighting and a magnifier or reading glasses to see better, to make sure the pins are making contact. It can also sometimes help to unplug and replug the USB adapter, because some USB adapters are unreliable after one use of avrdude. Also, sometimes it helps to change the angle of the pogo pins against the pads.

Toykeeper,

Thank you so much for your time. Unfortunately I do not believe that is what I have going on here. I have a steady hand and good eyes with plenty of quality light. I have been able to update other lights since, and have attempted this one over 30 times with the same result. I had previously used multiple versions on the 9.3, however as soon as that failed upload occurred there have been no signs of life.

Update:

Have rebooted my pc, and left the adapter unplugged for half an hour. Reflashed a D4V2 first try. Then attempted 20 additional times, carefully repositioning and verifying connection each time with no success. Then to verify the adapter status I reflashed the D4V2 again in 1 try.

That is unfortunate. I have a couple lights which are extremely difficult to flash, so I don’t do it very often because each time takes dozens of attempts. In one case, I had to try over 200 times before it finally worked. I never did figure out why exactly it has issues while others don’t, though.

It’s also possible that the flash could have sent exactly the wrong data, causing it to underclock itself or something at boot time, which would make reflashing fail. But in several years of reflashing chips rather a lot, I haven’t seen that happen.

OTOH, I have an old FW3A dev host here which was fine for years, and worked fine last time I reflashed it… it even boots up and runs Anduril normally. But I can’t get it to flash any more. It acts like it’s not connected. I haven’t tried cleaning it yet though; it could just have dirty contacts.

I suppose I will give it some more attempts each day until I break down and order a replacement. Wife is not enthused that I broke “her torch”.

My sympathies. If I ever find a practical way to revive it, I’ll let you know… but so far, the only method I’m aware of is to unsolder the MCU and use a high-voltage programmer on it. Or just keep retrying and hope. :frowning:

It might help to twiddle the 3.3V/5V jumper, but it’s kind of a long shot.

Thujone, I have a spare D4V2 driver board that I can sell you for what I paid for it ($12 I think). But, I am told that replacing it is difficult because of having to solder a lot of wires in a small space. ToyKeeper’s idea of unsoldering the MCU to do the HV (high voltage = 12V) reflash method might be easier. I have never done this and don’t know whether you’d really have to unsolder the entire MCU or just the relevant pin. It’s disappointing to hear that this can’t be done through the 6 pin interface without removing the MCU from the board. What a pain.

I notice illumn.com has some D4V2 in stock in California if your wife doesn’t want to wait for a replacement to arrive from China. They ship pretty fast.

There are probably people on this board who can fix your light by unsoldering the MCU etc .if you’re not up for that yourself. It will definitely be quicker to get a new light, but if you fix the old one afterwards, then you have a spare. I’d offer to give it a try, but I don’t have the tools for it (SMT hot air rework gizmo).

That doesn’t help.

About the high-voltage thing, it’s almost certainly not an option. It requires special equipment to do the reflashing, and getting the MCU off/on is rather difficult due to its form factor. Even just getting the K9.3 driver out is difficult, since there is so much hardware packed into a tiny space.

If reflashing via pogo adapter fails to revive it, Thujone doesn’t have any good options.

Ah whoops, somehow I got confused and forgot what model of light this was. It’s a real pain if the HV reflash can’t be done in-circuit. I guess the pogo pin programmer doesn’t have the 12 volt output anyway. Thujone, don’t throw out your light, it is likely repairable with some expense and hassle. Meanwhile though, yeah, it sounds like you better buy another one. Illumn does have some Noctigons in stock, and fwiw my D4v2 took only around 2 weeks to arrive from China, much faster than I expected.

I’d say the K9.3 is one of the less difficult Emisar/Noctigon to repair, driver cavity has a lot of depth (~10mm) compared to the ~2.5mm of the D4v2/D4Sv2/KRx, which allows to use longer wires, the solder pads on the MCPCB and AUX PCB being more spread out makes soldering the wires significantly easier than on a D4v2.
Still not exactly an easy job and it depends a lot on one’s skills.

Hank sells drivers as spare parts.

I would need to reflash a driver to use only the FET. Is there any FET only Anduril HEX file? How would it be possible to compile one?

Hhmm, I think I did this a while back. Depends on your driver/hardware and what issue(s) you can live with, or not. If it's like a FET+1 but without the FET (i.e. direct drive FET), then at low PWM the smooth ramping is not so smooth, so if you could live with it being rough, or raise the low end of the ramping. I think even the lowest possible ramping level for a FET is still not that low. I don't know if TK's new "better low modes" changes could make this work better or not.

It's fairly easy to generate Anduril / Anduril 2 for 1 channel, and create a FET only ramping table - that's basically all you need to do. I don't have a working, tested version handy. Again, at a minimum, I/we would need specifics on the driver - I/O pin assignment for the FET channel, etc.

Thanks for your reply, Tom E. It would be a 30mm Texas Avenger driver that I bought on Oshpark.

It would not be a problem if the low end ramping is a bit rough and not too low.

Does it have to be Anduril, and not Anduril 2 (A2)?

I know I did this: built a FET only version, possibly even on a TA driver, but not sure if it was Narsil or Anduril - definitely pre-A2.

I'm really only active with A2 now.

Just use the no-FET version and switch the output pins?

Not sure what the no-FET version is. Is that done for a straight 7135 bank? If so, probably works with the I/O pin re-config, just not as smooth ramping as high amp/output FET, then the thermal reg. might not work too well.

Yes, no-FET versions are for single channel lights, like 7135 bank or single constant current regulator. Instead of modifying the driver you can change the hw-config file, of course. Then use a single channel config as a template.

The resolution depends on the MCU (is it 8 bit or 12 bit PWM?) and the curve might need some tweaking to make it look linear. Not sure how thermal regulation behaves on a FET-only light as lower levels are expected to not need thermal regulation AFAIK, but I might be wrong. There are some parameters you can tweak in the config file, but I’d wait for ToyKeeper, who has tested so many different lights and might have a better insight of how to change these parameters.

Agree, TK would be best. I've generated my own ramping tables using the Python script she wrote - works well.