ANDURIL USER MANUAL & LIST OF LIGHTS

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.

This really has me thinking. Most people have only ever used flashlights that click to turn on and maybe go through a couple brightness levels with additional clicks and then off. So it’s not surprising that if you handed someone an Anduril flashlight, they would start clicking away. They key here is communication. “Click once to turn it on, then click and hold to ramp up the brightness” is all it takes. Putting the light in Muggle mode before handing it over and giving the same verbal instructions is even better. Muggle mode is a selling point for me, please don’t remove it. I can see making it 6H for both enter and exit, but please don’t make it a different click sequence for exit than it is for enter. I will never give a child a flashlight capable of starting fires even with Muggle mode.
Add 4H from lockout for “exit lockout and immediately start ramping up from the floor”. Love this idea!!

It’s why my idea is to have the last memoried brightness as max brightness in Muggle mode. When giving it a child, you can set brightness to 50% and then 6H for Muggle mode, but when borrowing it to someone on camping, you can set 100% and then go to Muggle mode.

There are already two official forks of Anduril — RampingIOS V3 and Fireflies UI. They don’t get updated much, since it’s kind of a pain merging changes back and forth between related forks, and because I often don’t really think about the other forks when making changes. Also, RampingIOS V3 has been abandoned by its sole stakeholder, so I haven’t bothered keeping it updated.

I have no intention of removing the stepped ramp. I use it too. I think the request was only about muggle mode though.

I’m undecided on that one. The idea is, if the enter and exit sequences are different, it’s easier to help people who managed to get stuck in muggle mode. They can be told “just click 6 times, but hold the last click for a second or two”, and it will put them into a predictable state. But if the enter and exit sequences are the same, it can be much more confusing for both the person who is being helped and the person trying to help them.

OTOH, mapping both to 6H means it’s unlikely people will get there by accident… so maybe there wouldn’t be as much need to help people who don’t know which mode they’re in.

I don’t really want to add features to muggle mode… if anything, I’d like to reduce it back to its original form — on/off only at ~100 lumens.

If I’m still working on this in 20 years, the changes will probably require a lot of expertise to even understand. They’ll probably look somewhat like this…

I mean…if people want it, but in my opinion this way it’d be less used - only 100lm is quite low. When I think about use of Muggle mode, it’s like:
camping
“Hey, could you borrow me your flashlight for a while?” “* set to Muggle mode * Sure, take it”
With 100lm on off only there’d be not much use of that flashlight. I’m wondering what people think about this “last memorized brightness for max level”, it’s what I found very useful at least, covers “children use” and “friend use”.

I don't think it's a good idea: IMHO Muggle mode should - by definition - be a "safe" mode under all circumstances, i.e. the light should neither get too bright nor too hot to injure or even scare a complete Muggle of a user.

Personally I would vote for something along the lines ToyKeeper suggested .. simplified click for on/off and hold for a (circular, ZebraLight-style L-M-H) 3-mode stepped ramp with 3-30-300ish lumens and no other features because that's about the maximum complexity I would trust a Muggle to handle.

Maybe it's a good thing tho.. ? Like in.. "trial by fire" ? Basically leaving the main branch mostly as is and if say.. "Anduril Alt" or another alternate fork isn't doing too well, just abandon ship.