Flashlight Firmware Repository

No, that’s not possible. The low brightness is determined by the internal pull-up resistor of the microcontroller.

SOS was not enabled for most targets until recently: ~toykeeper/flashlight-firmware/anduril2 : revision 640

I see, thanks for the quick response! Could I change the 1k resistor to maybe 100ohm to get a higher “low” brigness? The lowest I went to was 400ohm I think… Although when changing resistors the “output” voltage didn’t seem to change all that much so I doubt that’s going to give the desired effect, I suppose I just need to find yellow/amber LED’s with a lower Vf…

I see, thank you!

Which anduril 2 file should I use to refresh the FWAA? This is fet+1 with tiny85. Emisar D4 makes the most sense for me.

I’m fairly certain Lumintop has used the fw3a-219 config (based on the firmware version that blinks out, last 4 digits 0312)


Thanks. I didn’t thought about checking it out before disassembly. A bit strange because the original fw3a has fet+7+1. I know that the new ones have fet+1, but I didnt know that the soft has changed too.

You sure?

Back trace T85 pin config to make sure, but its probably D4 config.

Yes it’s the same pin configuration as D4.

Nice if TK could confirm if 0312 is for dual or triple channel. I just checked my FWAA and it shows 0312 (fw3a 219) too.

Correct, fw3a-219 config is for 3 channels and FWAA only has two. It just means that the 3rd channel does nothing and that likely ramp levels 130-150 are all the same (see PWM2_LEVELS): ~toykeeper/flashlight-firmware/anduril2 : contents of ToyKeeper/spaghetti-monster/anduril/cfg-fw3a-219.h at revision 657

Ive been able to download the tarball code in the past.

For quite some time now, I’m unable to download the tarball at all. Anybody else experiencing this?


Impossible to download for half year or longer.

Thank you. Glad to know it isn’t something I’m doing incorrectly.

Does anybody know the reason it can no longer be downloaded?

It is broken and the Launchpad team doesn’t want to fix it for some reason. Just use breezy to clone the repo.

What is breezy ?

It is the version control system used by Launchpad.

I downloaded 1 by 1 :smiley:

I used to post on here years back. This might be of use, it’s code for morse.

Edit: Should add, you have to go into the advanced menu 4 (adc) and hold the button down for awhile when you first flash it in, it’ll go through the adc options and if you keep holding, resets the light. This writes the necessary data in eprom. You can turn it off when it goes dark on the emitter and then it should work as written. I made quite a few of these lights, but in the end it was a fail. Noone really cares about morse. And the parts were expensive too. You need a decent inductor to safely put that much power into an emitter, and I figured out a neat trick on the tail cap to stop the arc. It turned out a fet and resistor simple. I ended up sourcing the inductor from isreal. The practical use turned out to be the usual. Guys were putting it on high and leaving it, burning out the emitters. It was all about high. Noone cared it was a morse code light with moonlight to blast. So that’s what I learned. I use it everyday for all sorts of things though.

Learned a lot here though. Some of you guys really know your stuff, couldn’t have created this without you.

If anyone is used to using Docker for development I have created a simple Dockerfile for spinning up a development environment with everything needed to compile.

It will download the source code from Launchpad if it hasn’t already. It also downloads the Atmel ATtiny Series Device Support pack but that doesn’t seem to enable compiling for Tiny1 series, I just get different errors :slight_smile:

I have recently modified Anduril 2 to include a (optional) visual low-battery-warning. I did my best to set it up in a way which gives clearly visible indications, while remaining as unobtrusive as possible. The notification is performed by the main emitters. The trigger is a combination of time, absolute voltage level, and voltage change.
You can read further details and download the source code via my GitHub repo:
(Yeah… I know, my videos are shitty :stuck_out_tongue: But they should be good enough to give you an idea of the default notification pattern.)

It also works during strobe modes:

Feel free to give it a try.
I included a bunch of compile-time-options, too, so its behavior can be easily customized.

Works reliably on my LT1.

Enjoy :slight_smile: