ANDURIL USER MANUAL & LIST OF LIGHTS

Default of candle is run until you turn it off or go to another mode. 3 clicks while in candle mode and the light will give you an acknowledge blink that adds 30 minutes and it’ll turn off by itself when timer is up. I’m not sure how many you can add, I’ve never tried more than once. ToyKeeper will know that part.

The candle timer can go up to about 255 “pseudo minutes”. The details don’t really matter much, but it uses an internal unit which is a bit longer than a minute… and it can represent something like 4.6 or 4.7 hours before overflowing, so it’ll let the user set a timer up to that long. If the current timer +30m is too long, it’ll refuse to add any more.

Anyway, TL;DR: candle timer can go up to about 4.5 hours.

If the timer isn’t set, it’ll go until the user turns it off or until low-voltage protection sends a warning. In the LVP scenario, it goes to a low steady mode, then proceeds through the usual repeated-step-down and turn-off it would do in a regular ramping mode.

Each time candle mode is started, the timer is reset to “none”. So if you set a timer and then cancel it by turning the light off, it won’t remember or resume next time… it’ll start from zero again.

Excellent. Thank you so much! You really did an amazing job on this UI. I always thought I just needed on/off and maybe high/low, but this has spoiled me!

One last question, I think. Is the low voltage cutoff adjustable? I generally like to keep my 18650’s above 3.3 volts if possible.

ToyKeeper - I love this UI. Thank you for your work.
Looking at the diagram, am I right in saying that if the light is off and you click and hold (1H) the brightness ramps up from floor to ceiling? And if you double click and hold (2H) the light ramps down from ceiling to floor? This is intuitive as a 2C gets you to max ramp from off - however I think for safety the ramping up from off (1H) should be swapped with the ramping down (2H). It would be far more likely that the button is depressed and held down while in a person’s pocket than being pressed twice in a row and held down.

Also in the diagram at the front of this thread in the Blinkies section I don’t understand how many clicks are needed to get from beacon to beacon cfg and tempcheck to thermal cfg. The dotted blue line means “other action” but it needs an indicator of how many times you click.

Also confused about the Ramp Cfg, Thermal Cfg, Beacon Cfg box. To get to Ramp cfg you click 4 times (has an arrow and “4 Clicks” in blue). Then below that it says Thermal Cfg and also has an arrow with “4 Clicks” in blue. Same for Beacon cfg. The “while on” box says 4C goes to ramp cfg but it is not clear why there is a “4 clicks” beside the thermal cfg and beacon cfg. Does that mean that while in Ramp Cfg you click 4 times to get to thermal cfg and then 4 more to get to beacon cfg?

Help! I somehow got it so when I’m in lockout mode, the the lights are flipped. Usually it’s moonlight, then slightly higher with two clicks and a hold. Now it’s opposite!

Edit: Turns out I had done something to the ramp mode. Now I’m trying to figure out how to configure the stepped ramp mode. How do I make it so that I have seven settings, with the bottom being not moonlight mode and the ceiling not turbo. Basically back to factory? I accidentally did one click at the first and second prompt, then no clicks at the third, setting it from moonlight to turbo. I thought I was configuring the smooth ramp…

For some versions of Anduril (maybe all?) this is the factory reset procedure:

Loosen the battery tube to disconnect power.
Press and hold the button.
Tighten the battery tube to connect power.
Keep holding the button.
The light should pulse while getting slowly brighter.
The light then bursts to its brightest mode, and fades quickly to black.
Let go of the button during the fade to black.

give it a try and see if it works for you.

The lockout momentary function uses the current ramp floor on the first press, and the other ramp floor on the second press. Then back to the current ramp floor for all other presses. So if your current ramp’s floor is higher than the other one, the brighter level goes first.

I’ve been considering changing this so it does the lowest one first instead of the current one first. However, this would make it less convenient for people who want the higher level first.

In any case, 3 clicks while on in a regular ramping mode should get it back. The idea is that, by default, the smooth ramp is configured for indoor use and the stepped ramp is configured for outdoor use. The lockout momentary function also changes its brightness to reflect this, so lockout is brighter when the light is in outdoor mode. But I’m not entirely sure that’s better than simply doing lowest first.

As for how to get it back to default settings, the easiest way is the factory reset function… if it’s new enough to have that. It’s pretty recent. If not, it depends on the individual model of light being configured. Different lights have different config settings. At a guess though, 20 clicks at the first prompt and 21 or 31 at the second prompt and then 7 at the third prompt. That should get the stepped ramp set to go from level 20 to 120 (or 130) in 7 steps.

It is adjustable if you build new firmware with a different LVP threshold, but otherwise no. To keep cells above 3.3V with stock firmware, you’d need to use the battery check mode once in a while to measure the voltage, then charge the batteries when they reach the desired level. I usually charge batteries when they get down to 3.3V or 3.4V, but I use battcheck to let me know when that is.

Yes, “hold” ramps up from the bottom, while “press, release, hold” ramps down from the top.

In very recent versions, I added an additional safety check so if the button remains held for too long at the highest level, it ramps back down and stays down.

I think you may have just answered your own questions.

Go to the mode you want to configure, then click 4 times to access the corresponding config menu.

That worked perfectly. Thank you very much!!! I’m to assume it is measured from 1-150 then?

Yes, the ramp internally has 150 brightness levels.

This is awesome! Thank you.

Ahh I understand now, but the diagram is still confusing. The blue dotted lines from tempcheck and beacon need to have a 4C. Everywhere else in the diagram there is a blue dotted line, the number of clicks is indicated, and they are not all the same. Sorry, it’s kind of hard to explain this stuff.

Not sure where to ask this, but.. any chance Anduril would support drivers with only 7135's ? Let's say 3 or 4 of them for an XP-E / XP-G or up to 8 or so for your usual XP-L / XM-L or the likes ?

Regards.

Yes, just calculate the ramps. Needs a microcontroller supported by Anduril, of course (at least ATtiny85).

Yes, it works fine on 7135-only drivers. It just needs the hwdef-.h and cfg-.h files configured accordingly.

It doesn’t really care much what type of chips are on each power channel. It just needs to know what kind of PWM signal to send them for a smooth and visually-linear ramp.

Recently I wanted to show FW1A to my mom and the first thing she did was clicking a bunch of times (because when she clicked once it turned on the lowest lewel, not visible, so she clicked 4 extra times “to turn it on for sure”), entered config mode and changed ramping levels… It’s my first Anduril light, so I spended an hour trying to figure out what happened.

And you know, 5 clicks is not that far away from 6 clicks - disabling Muggle mode. And children are clicking a bunch of times with no reason as well.

What do you think, would it be a good idea to change disabling Muggle mode from 6C to 6H?

That’s actually on the todo list, along with some other button mapping changes. I’ve just been trying to reach some sort of consensus about what to change before doing it, since there has also been feedback saying not to remap the buttons. Breaking backward UI compatibility can be an awkward and unpleasant process for everyone involved, even if the changes are probably an upgrade.

Some of the ideas…

  • Change 6C to 6H for muggle mode. Either both enter+exit, or for exit-only. Helps keep people from getting out by accident, and may also help people avoid getting in by accident.
  • Remove muggle mode entirely? It’s kind of bad and wastes a lot of space which could be used for other things. Or at least refactor it to make it more robust.
  • Add 4H from lockout for “exit lockout and immediately start ramping up from the floor”.
  • Make 4C from lockout turn the light on immediately? (meh)
  • Move config modes from 4C to 5C, and move the manual memory stuff from 5C/5H to 4C/4H. (makes config modes a bit harder to get into by accident, and makes memory control easier to access)
  • Remove beacon config mode and replace it with “hold to set timing”.

Plus some other things which could be nice if there’s room…

  • Sunset mode timer and brightness configuration
  • Auto-lock after being off for N minutes?

… but mostly I need to work on underlying stuff in FSM:

  • Completely rewrite how interrupts work
  • Make a thermal simulator
  • Rewrite the thermal code entirely
  • Replace the PWM-ramp-based brightness controls with a hybrid PWM-DSM method, if possible
  • Make a better method for doing smooth brightness adjustments
  • Refactor ramping logic into a single place for better consistency and reduced size
  • Fix the micro-timing of state-change events by putting them into the event queue instead of handling them immediately
  • Clean up how the hardware abstraction layer works
  • Clean up a bunch of messy and disorganized code
  • Add support for more MCUs
  • Add support for 4-channel tint mixing (currently only does 2-channel)
  • Add support for a second e-switch
  • Add support for clicky switches (mem-decay offtime, OTC offtime, OTSM offtime, fast-clicks tracking, etc)
  • Rewrite the button LED / aux LED / RGB LED code entirely to clean it up
  • Make a build system so all UIs are built and tested regularly
  • Update other UIs to support multiple build targets

And, of course, most of the low-level stuff there isn’t what I’d call fun. So it can be difficult to get a lot of it done.

Yay! 2 e-switches + 1 Clicky.. Nice!

Big YES for all!

Maybe making it so there is only smooth ramping and strobes, all config options are locked and max brightness is the last memorized brightness used before entering this mode.

Meh

Maybe it would be a good idea to just branch the fw in a couple of versions, just for the sake of consistency in the main branch and users that don't like change too much ?

Something like..

Anduril (Main)

Anduril Alt (with the least.. "invasive" changes ?)

Anduril Duo (Support for 2 e-switches)

Anduril Duo C (Support for 2 e-switches and clicky)

Just my 2C..

Cheers!

Please don’t do smooth ramping only. The stepped helps me have a definitive level that I can always get to easily.