Anduril ... 2?

Posting here instead of in the D3AA driver topic since it’s generally more Anduril related

3 channel LED driver :

  • 2.4V-5.5V
  • operating current : 80/120uA typ/max
  • shutdown current : 1uA max
  • regulated current options : 25, 15, 10, 5mA
  • 8bit PWM dimming : 20uA steps at 5mA full scale
  • I²C
  • DFN 2x2mm
  • dirt cheap

Depending how it can be programmed that looks like a good candidate for rich RGB

edit : 500Hz PWM frequency, could be better but for AUX LEDs it’s acceptable.

6 Thanks

I2C and 2x2mm package sounds really nice. Theres a lot going for this chip.

1 Thank

Yeah, this seems like a great one. Would be nice to have smooth aux.

So is the D3AA shipping with the 2024-04-01 release? Dark mode jokes aside, it’s the only release up on github which contains the code for this new light.

Just curious and happy to see continued developments here.

0161-2023-12-03-2. The -2 indicates it has two extra commits to the source code after that release, which so far @ToyKeeper hasn’t pushed to GitHub.

TK: Reminder the D3AA is in people’s hands now - I want to take a look into the D3AA specific changes myself too :wink:

1 Thank

Most / all of them are in the dark mode branch IIRC.

1 Thank

Is there a way to change the batt check readout to 1 digit after the decimal ? Like in previous versions. Coudnt find any info in the user manual on github.

No, this is not currently user-configurable. Do you have access to flash new firmware? If so, it can be turned off in the code:

3 Thanks

Here’s a build without USE_EXTRA_BATTCHECK_DIGIT, no other patches or mods.

4 Thanks

Many thanks for this build. Very helpful. Gives me the only chance for a new Anduril version on my lights, without this multiple digit voltage thing - which I personally find confusing, completely useless, and an irritation.

I must admit that I don’t like the extra digit either, but I’ve gotten used to just counting the first two and ignoring what happens next. To be honest I’d much prefer a system of one to four blinks representing 25%, 50%, 75% and 100%. If I want to know the exact battery voltage I have a multi-meter, day to day I just need to know if the battery wants charging or not.

That’s already implemented in Anduril and can be enabled during compile time.

1 Thank

Thank you, will have to look into how to compile it.

#define BATTCHECK_4bars

2 Thanks

Thanks Wolfgirl. Is the best way to go about compiling Anduril on a Mac to use Docker or a Linux VM? I’m assuming that it specifically needs Linux as opposed to UNIX.

It works quite well on a Mac with AVRDUDE.

I used the manual here as a starting point.

AVRDUDE works great for flashing, I’m after compiling the source code so that I can make changes to the functionality before I flash it.

Sorry, compiling also works on MacOS (Intl and M-processor).

I used the GitHub - ToyKeeper/anduril: Anduril 2 Flashlight Firmware and FSM UI Toolkit page as a starting point

Instead of using sudo apt install gcc-avr avr-libc binutils-avr I started trying to install each package name with “brew” and then installed the proposed equivalences.

I didn’t write down what exactly I did - I just worked my way through it with try and error.

I will do some checks here and will see if I can give a bit of additional input.


This was my starting point I think. I can’t fully check this at this stage.

→ brew install avr-gcc
(GitHub - osx-cross/homebrew-avr: Homebrew AVR Toolchain)

→ brew install avro-c

→ brew install binutils

Don’t forget to do “./make dfp”

1 Thank

Brilliant, thank you! I’ll have a go at this probably at weekend when I have more time.

If you get stuck then let me know and I can try and help from my side.

1 Thank