Flashlight Firmware Repository

As for my previous question. Commenting on a few lines of code helped, the program compiles normally, but I don’t know if it will work properly.

AS says the error is in this line:
#define delay_4ms _delay_4ms
How to remove this error?

Yesterday I got my MF01 mini and it got Anduril. I did not find a specific version of Andutil for this one. Maybe Astrolux used the MF01S Anduril?
The thermal stepdown acts like it is freightening of getting warm. Stock factory setting is around 2200 lumens at ramp max. I lowered it to around 1400. Even at 1400 lumens it ramps down fast after a few seconds of turn on to around 700 lumens and then slowly creeping up to 1300-ish and it can keep that. But default temp set to 45C. I sometimes measured 40C at head and it starting to lower output again and again but sometimes it heating up to 55-60C I tried various settings of thermal calibration and used IR thermometer to calibrate when it is settled a while cooled down but at a cold start it is always making that drop first. I can’t figure it out. Even if I set step down temp to 65C it making that drop first when it is only 36-37C

I think it’s just the rate of temp change. I think it was made worse in a build around 2 months ago or something. This has been documented in all the newer FW3A builds too.

why would anduril.c have harcoded RGB when not all anduril lights support RGB? Is it possible to move this functionality to cfg-* files where flashlights support it?

afaik it wont even compile unless it is enabled in the config so it basically works like you say already. this is why you can comment out one line to disable muggle and get enough free space for more development.

On this thread HERE it seems that Hank has put a new driver in the D1.

User cuberS seems to have a D1 with an ATtiny1634 (he has flashing pads and the MCU signature matches the ATtiny1634), but I haven’t find any firmware in the repository for such a light. He flashed the ATtiny85 firmware and it does not work. Is there a firmware he can flash to rescue his light?

Probably asked before, but I cant find answer. I am pretty sure I even saw that TK said that this will be included as an option soon… I am trying to figure out how to disable FET mode on FW3A completely. Will writing zeroes to PWM3_LEVELS help? Or its more complicated?
Another useful option would be PWMx_LEVELS settings and steps settings for faster (someone will prefer slower also) ramping. I know its done with levels_calc.py but testing on FW3A is not so easy (soldering every time).
Last question is about battcheck mode option. I see

in source but this probably dont work yet, right?

Ok, I tried this:

It seems that its working. Ramping is faster. Ramping stops after Nx7135 blip. Double click while on works. Only thing that bothers me is slight variation in brightness at the moment when starting ramping down from Nx7135. Maybe its because I had to put 255 instead of 0 at the end of PWM1_LEVELS?

Hi guys, I have a question regarding flashing firmware. I am a total noob when it comes to flashing and I reached dead end when I decided to flash my Astrolux MF01 mini to correct some voltage reading problems (There is a large voltage difference between the actual battery voltage and the blinked out voltage). I managed to find some instruction and I did this:

I downloaded the branch “lp:~toykeeper/flashlight-firmware/fsm” from: Flashlight Firmware Repository in Launchpad because it had the code for Astrolux/Mateminco MF01 MINI. I Unzipped the tarball and found the file I needed to adjust to correct the Voltage measurement:

File: hwdef-Mateminco_MF01-Mini
#define VOLTAGE_FUDGE_FACTOR 5 // add 0.25V

I changed the VOLTAGE_FUDGE_FACTOR to 10 to add another 0.25V.
Now that I have it, how do I run the make command in the fsm\ToyKeeper\spaghetti-monster\anduril folder?

Do I need a special compiler (I am using windows)? The instructions I found said: “the code can then be built by going into the anduril directory and running “make”. This compiles one .hex file for each cfg-*.h file it finds.”

Could anyone please recommend me the best and the easiest way to do this?

The short answer is you need to download Atmel Studio and load your edited files in there then choose “compile for size” in the properties. It will create a hex file that you can flash with a SOIC clip and some shady USB drivers.

I recently got my hands on a used Sofirn SP36 Anduril and found that the temperature limit is exceeded by more than 10 K, although the measured temperature is relatively accurate. This made me curious, especially since I recently ordered some Emisar D4V2s. So I wrote a little simulation to test the thermal regulation code.



Measurement result:

Simulation result (revision 388):

Simulation result (revision 454):

Simulation result (mockup of how it could look like):


What I found so far:

PS: On an aside, the project name (sphagetti-monster) hits the nail on the head. :D

I just purchased a Haikelite MT09 and ordered a new driver from Lexel.

He wants to know what firmware i want.

I have no clue, any suggestions



Do we have some soft for red bicycle back light?

There is such a thing, but I don’t actually know how it works.
click - tail light

I am even too stupid to get that Bazaar to open your trunk, the plenty URLs I tried do not work
Anduril does not work properly with temp reading

the Wiki gets it for granted you know which link and how to add and don’t even give any examples

with https://

I downloaded every single file to my PC manually and replaced the old ones, its still reading garbage then it seems to read correctly after running it a while
but testing the driver with heat applied does not adjust output at all

You’re using a website that presents the repository rather than the repository.
The website shows that you should use “bzr branch lp:~toykeeper/flashlight-firmware/fsm” command.
With your UI you may try to enter “lp:~toykeeper/flashlight-firmware/fsm” URL.

Those people who write this bazaar wiki seem to think everyone is an expert programmer and know all the basics

with your link I get this error

all I am asking is a zip or similar container with a working Anduril build for AS7


I am wasting again now almost 4 hours on this and can’t build drivers in that time for the community and I have not much time at all right now for weeks and its not looking better this year

I am close to quit Anduril with a March build like I did with NarsilM v1.2 and support no newer versions anymore

Now I seem to got it working but I run into serious code overflow problems using FW3A with Aux LED support

IMO, tell buyers they can have AUX support OR muggle mode but not both. Commenting out muggle saves a lot of space