Ramp Any 3C Lockout mode
Ramp Any 3H Tint ramping (on some lights)
Ramp Full 4C Enable manual memory at current brightness
Ramp Full 4H Disable manual memory
Ramp Full 5C Change ramp style (smooth / stepped)
Ramp Full 5H Sunset timer on, and add 5 minutes
Ramp Full 7C Ramp config mode
Lockout Any 3C On (ramp mode, memorized level)
Lockout Any 3H On (ramp mode, floor level)
Lockout Full 5C Auto-lock config menu
Lockout Full 5H Disable Auto-lock
Lockout Full 7C Aux LEDs: Next pattern
Lockout Full 7H Aux LEDs: Next color
4C lockout
Off Any 3C Battcheck mode
Off Any 4C Lockout mode
Ramp Full 3C Change ramp style (smooth / stepped)
Ramp Any 3H Tint ramping (on some lights)
Ramp Any 4C Lockout mode
Ramp Full 5C Momentary mode (?)
Ramp Full 5H Sunset timer on, and add 5 minutes
Ramp Full 7C Ramp config mode
Ramp Full 10C Enable manual memory at current brightness
Ramp Full 10H Disable manual memory
Lockout Any 4C On (ramp mode, memorized level)
Lockout Any 4H On (ramp mode, floor level)
Lockout Full 7C Aux LEDs: Next pattern
Lockout Full 7H Aux LEDs: Next color
Lockout Full 10C Auto-lock config menu
Lockout Full 10H Disable Auto-lock
With so many things packed in, any change like this has cascading effects like what happens when turning a Rubik's cube. So, it's helpful to consider all the changes involved instead of just one part. I marked the changes in bold text.
Personally, I use voltage check much more often than I use lockout. I think maintaining consistency with lights running earlier versions of Anduril would trump the fraction of a second in time savings or the extreme minority of people that canāt count to 4 while clicking.
Yeah, Honestly itās just getting from lockout to āonā that is the most important part of this discussion for me. I leave it to ToyKeeper to figure out what makes the most sense as far as 3 or 4 clicks, clearly she is smarter than I am when it comes to solving that.
Ramp Any 3C Lockout mode
Ramp Any 3H Tint ramping (on some lights)
Ramp Full 4C Enable manual memory at current brightness
Ramp Full 4H Disable manual memory
Ramp Full 5C Momentary mode
Ramp Full 5H Sunset timer on, and add 5 minutes
Ramp Full 7C Change ramp style (smooth / stepped)
Ramp Full 7H Ramp config mode
Same 5C also in strobe mode. Then you can directly enable momentary from the current mode.
Firstly, I have never tried Anduril so I might not be entitled to comment. But let me start with some background information. Back in 2010 I had some work related requirements for a good flashlight, and I ended up on CPF. For a couple of years after that I gradually built up a small collection of small EDC lights from different brands, both expensive and budget lights, trying to find the perfect light (for me). I ended up with a couple of HDS, a ZL headlamp and two 6P Surefires with drop-ins. I tried and sold Jetbeam RRT-01, Sunwayman V11R and Eagtac D25C (among others) because I did not really like their UIs.
In 2017 I had a new period of lurking on the forums, but I quickly realised that there was not much to gain in replacing any of my lights. The only thing that actually got my attention was a Petzl Nao, due to the āreactive lightningā and the bluetooth connection with an app. But based on reviews I decided that my ZL was probably still the better option.
Fast forward 3 years and Covid-19 gave me some extra time so I decided to see what had happened in the flashlight world lately. And honestly, I was underwhelmed. A couple of extra lumens, a few new HCRI emitters, and more lights with built-in charging. I really believed that all electronics manufactured in 2020 would be part of IOT, with OTA updates of FW and all the customization you could imagine. I quickly realised that this was not the reality, most lights still used old drivers with old UIs.
Then I discovered Anduril, and although still a bit disappointed over the lack of easy FW updates I honestly think this is the biggest evolution within the flashlight world in the last decade. Imagine an open-source FW which allowed any manufacturer to actually use a great UI, with almost all the customization you could imagine. I immediately had to order a light to test (although it is still stuck in transit somewhere)
Then I saw this thread, and initially I was really really pleased. My biggest regret (within the flashlight world) is that i passed on an opportunity to buy a Liteflux LF3XT 10 years ago, and I believed that Anduril 2 would actually be a better version of that UI. Then I realised a few points which I would really like to comment, only because I am actually afraid that it can take Anduril a step backwards and not forward:
1: No turbo in āCompact UI / Default modeā
Which commercial flashlight company will willingly hide their biggest selling point? For everyone outside communities like this āXXXX LUMENSā is the first and only thing a customer looks at. I am afraid that with such a UI Anduril will only be used for āBLF-special runsā, and not widely distributed in ordinary production lines. The only persons actually interested in this UI would be people here who would like to have a safe muggle mode with some extra features. I honestly believe that it should be up to the manufacturers to make such changes in the code if they believe that their light is not safe to use, this is nothing Toykeeper or anyone else can be held responsible for.
My clear recommendation here would be to keep the shortcut to turbo enabled by default, but let it be possibly to disable it in the Ā«Full UI / Advanced modeĀ». And off course it can be done the other way around by the manufacturers themself if they believe it is not safe.
2: Unwillingness to change
From all the post Iāve read it seems clear to me that TK would like to have 3c for lockout and 4c for battery check. I believe that you should not be so afraid to change. Most people already have several lights with different UIs, and any change to the better should be encouraged. If the fear of breaking backwards compability is stronger than the desire to improve, then anduril will for sure die. I can also see this in some off the suggestions where the response is āthis is not anduril, that would be a new UIā (in regards to implementation of momentary, function button and customization menu). I am not in a position where I can say if these suggestions are good or not, but I do believe they deserve a better response. If they are good ideas, but not easily implemented due to breaking other code, lack of memory or other reasons than that should be stated. I cannot see how any ideas of increased functionality that is not changing the basics of the UI can be seen as a different UI. All these suggestions would just add more customization, not take any functionality away. If the ideas are crap, ok, then be clear about that as well.
Hope you donāt see this as to hard, that is not my intention. I really appreciate all the work you put in to this, and I am really impressed by what I have read and seen on YouTube. So now I have to update the tracking information of my first Anduril light one more time today.
I agree it doesnāt make sense for ābackward compatibilityā to be a high priority. Perhaps the solution would be to have āAnduril Classicā which would just be the current Anduril with the new features/etc. as a flashable version for those who would prefer it, and maybe have a separate ābranchā for Anduril 2.0 that isnāt limited in that manner. I do understand the fragmentation issue that could create, but I would think MOST manufacturers would go with the latest and greatest. Those in this community who are actually going to have THAT strong of a preference for the old version, can just flash their own version. It is of course up to ToyKeeper whether or not she would want to put out the effort of maintaining a āClassicā version and a current version.
That all said, I personally am 100% on the side of making whatever changes are needed to make it more capable and usable, even if that fundamentally changes the UI. I can learn a new UIā¦ in fact unless I have ONLY Anduril lights, I kind of have to, and will continue to have to, which is fine.
Thanks! So far, weāve managed to get a few companies to use free software, but itās still a relatively niche sort of thing.
Er, a few, actually. Some companies are pretty worried about their customers burning things and getting angry about it. With massively-overpowered lights making 4000+ lumens in a very small form factor, a few items have earned reputations as ānut roastersā which have literally burned holes in peopleās pants while the pants were being worn. It takes only a few seconds.
So theyāre interested in shipping with safer settings by default, while still allowing people to unlock the full power after theyāve bothered to read the manual.
Not every light is like that, thoughā¦ so the defaults are configurable for each model, and some models will enable full power by default even in simple mode. It depends on the lightās power-to-mass ratio, target market, and the desires of the company who makes it.
Additionally, the user can choose to enable full power in simple modeā¦ but it requires reading the manual to figure out how.
As a general guideline, the simple modeās default limit is a little higher than what each model can thermally sustain during use. Sometimes that means full power, sometimes not.
Aside from companies, the main people whose requests are being addressed by the Simple UI are people who wrote very angry reviews about how Anduril is a useless, overcomplicated toy, and they want it to just do normal things like a normal tool so they can get some work done without having their tool spaz out.
The way people expressed the idea may have been rude, but the underlying point was solid. There is a design philosophy that a creation is not finished when there is nothing left to add, but rather, when there is nothing unnecessary left to remove.
So the Simple UI is an attempt at that design philosophy. It takes the full-featured original UI and then removes things until only the essentials remain.
I hope we can get to that point eventually. But so far, very few manufacturers seem to do any safety testingā¦ and none have attempted to modify the code. Mostly they just donāt want to get returned items, or reviews complaining about the product being too dangerous or complicated.
It sounds crazy, but one of the top reasons for returns and refunds is: people have difficulty figuring out that they need to remove a legally-mandated sticker from the end of the battery. And they return the item instead of reading the manual. So it needs to ship, by default, in a state which is compatible with that type of user. Anything complex or confusing gets locked behind a knowledge gate, so new users wonāt bump into it by accident and panic.
Anyway, every company Iāve asked about this has said they like the idea and look forward to itā¦ because itāll hopefully make their lives easier. But we still have to work out the details of where the default limits are for each supported light.
Iām honestly not sure what would be better. Iāve been using 3C lockout for over a week, and the extra speed is niceā¦ but I kinda prefer 4C so far ā especially now that there are direct shortcuts between ramp and lockout.
About Anduril dying, Iām not too worried. Itās reaching a point of diminishing returns, where further optimizations donāt provide much benefit.
So Iād like to focus future development on the FSM library, and on other UIs. People have had some really interesting ideas for other types of interfaces, and I think those ideas deserve more attention.
Also, on the ecosystem in general. Like, making it so more lights are easy to reflash, making it so people can choose whatever UI they want at time of purchase, and generally getting companies onboard with the concept of free software.
Exactly. Those ideas generally need to be developed into their own complete applications, not just tacked onto something else as an afterthought. I can cram some things into Anduril in a relatively coherent manner, but some ideas are different enough that they donāt fitā¦ and they make a good starting point for a completely different interface.
Like, letās say Iām making a salad. A lot of ingredients can go into a salad and itāll still be good. But if someone wants to remove the lettuce add replace it with bread, melted cheese, and tomato sauceā¦ I think what they want is actually a pizza, not a salad.
Both are good. But theyāre better as separate items, instead of blended together.
As for what Anduril is, itās mostly three things:
A solid core designed for a single e-switch and a single light source
A bunch of extra stuff I personally like
A bunch of extra stuff suggested or contributed by the community, when it can be made to fit in a coherent manner
The solid core is what I found when I did an informal survey of various flashlight communities to see what people liked best for interfaces with one e-switch. Around the world, people mostly settled on a single idea. It needed just a few essential functions:
Off 1H -> moon or low
Off 1C -> med or mem
Off 2C -> high or turbo
On 1C -> off
On 1H -> up / down
On 2C -> to / from high or turbo
Other details varied, but the part above was almost always exactly the same no matter where I looked. So that is the core of Anduril, and anything which doesnāt fit the above description is ā¦ not Anduril.
For example, changing āOff 1Hā to be a momentary functionā¦ is a big enough change that it probably should be its own UI. One implementation of how that works in practice is tterev3ās wonderful MELD firmware.
Also, ideas about multiple buttons or multiple sets of LEDs are greatā¦ and worth developing a brand new UI for. Trying to retrofit Anduril over that would be really awkward and would likely produce a poor result.
But my time is limited, so Iām trying to finish this project before I start on any new projects.
The more Iāve turned this over in my head, the more I agree with your two points.
For number one, I think there will really just be a lot the first manufacturer to use Anduril 2 will have to figure out. Iām sure there will be backlash from ā10k lumen light only did 1k lumens wtfā, but will it be any better or worse than āruined three pairs of pants and a backpack, Iām suingā? As far as the safety perspective, I think we should look at some of the more major brands. A few of my lights have āHotā warnings at the emitter end. But also, weāre asking people to deal with unprotected Li-Ion cells here. If theyāre leaving unlocked D4s in bags, are they also leaving 18650s in a coin purse? Are they charging 0V 18650s they were given from a ziploc bag of nails?
As for number 2, the change is gonna hurt no matter what. Some things will be different, outside of TKās ācoreā. For habitual users, I think adjusting to lockout will be the most difficult change. That said, my feelings on it are: itās faster, but still extremely unlikely to happen to the light on its own, and weāre also adding auto-lockout and unlock->on directly features. The second will ease the pain of using lockout in general. Resistance to change just because itās difficult is something I usually oppose on principle, and I actually regret my earlier comments about how hard the change will be for users that still own āold Andurilā lights.
Last, I have a UI change that I want to mention - and that I am going to try to implement and test on my own. It relates to the strobe/strobe/candle/bike flasher rotation. At this point, I have two lights running Anduril that are over twice as bright as my FW3A (previously my only Anduril flashlight*). If I want to cycle from Candle to Lightning (my most-used āfor funā modes), I have to walk down Main St. in āTactical Strobe Cityā. Itās kind of like if every time I switched from my hammer to my screwdriver, I knew Iād have to hit myself in the forehead with the hammer before I went to use it again. My half-formed idea is to make it a menu. I hit 3H from off (or whatever, it might move), and then I get a āconfig menuā type of thing: the flash and then buzz. I click 1-5 times to select which strobe I want. Probably a no-go for anyone who wants quick access to tactical strobe for defensive reasons, though.
*my LT1 has Anduril too, but is a lantern not a flashlight
I wonder how this will interact with āwonāt read the manualā types who canāt get the sticker off the battery, or immediately open the tail-end of the FW3A. I guess they probably werenāt going to get as far as using turbo anyway.
Iām starting to think maybe I really want simple UI on my lights, just configured for full power. Set everything once in advanced, then switch it into simple, and leave it. It would make gifting lights a lot easier, too.
This is an interesting one for me. I donāt usually have issues, except for switching ramp modes accidentally. But I can also reliably click 25+ times to set thermal configs.
Iām honestly not sure what would be better. Iāve been using 3C lockout for over a week, and the extra speed is niceā¦ but I kinda prefer 4C so far ā especially now that there are direct shortcuts between ramp and lockout.
About Anduril dying, Iām not too worried. Itās reaching a point of diminishing returns, where further optimizations donāt provide much benefit.
So Iād like to focus future development on the FSM library, and on other UIs. People have had some really interesting ideas for other types of interfaces, and I think those ideas deserve more attention.
Also, on the ecosystem in general. Like, making it so more lights are easy to reflash, making it so people can choose whatever UI they want at time of purchase, and generally getting companies onboard with the concept of free software.
[/quote]
I cannot emphasize enough how much I support this last part. Making lights easier to flash ā whether with the programming keys, or ideally with USB directly (I know, thatās a driver problem, not a firmware problem). I also want to support any efforts at increasing the ease with which someone could customize Anduril (or other FSM-based Uis) themselves. But, I donāt know how I can currently support or help with any of that. For now, Iām beginning to learn how to do it myself a little.
And I want that to tie in to the part above, about code customization. I mean, my dream is probably a web app that bakes-in certain customization options and builds and flashes straight into a USB port. But even the steps before that ā easier customization and compilation of a working build ā would probably entice manufacturers and customers alike to consider the idea. And I feel like itās probably the ultimate end goal for all the customization people want in general. When it comes down to it, thereās going to be a range of preferences for how things work. Does Anduril need a baked-in config menu for 3C vs 4C lockout? No, and by the time you build a full config menu for everything into the firmwareā¦ well, youāve addressed that already. The user would need a configuration app or need to sit down for an hour with the manual and never touch it again. (I still havenāt gotten around to messing with my Unicorn, and at this point I never may.)
Back when rost333 had the idea for a 2xAA side-by-side light (thread), I actually wrote up a bunch of different ideas for the ācoreā of a 2-button UI. Primarily they were split into two categories: One button per emitter (in which case you could basically just have Anduril twice, once for each LED), and trying to have each button be fundamentally different in functionality. The latter was a lot more interesting to me, and solves a lot of the issues that get run into with single-button UIs (and then adds them back in when you try to control two channels separately).
Uh, but anyway, itās definitely not Anduril. Anduril is a single-e-switch UI. I think two-button UIs are tons of fun and would love to help develop one for BLF if we get there. I think probably the way forward for UIs has a lot to depend on driver design for. A move to MCUs with more flash for more complex UIs is a simple one (and, I think Hankās gone there with the 1634? but also efforts by gchart and probably others that Iām forgetting), as well as more pins for more stuff. The ability to actually get USB flashing going would be the coolest thing that I canāt remember if Iāve seen done yet on BLF.
If this is supposed to be a different or improved u/i, and not the same thing, I would love for it to be easier to use, even if it means remapping the whole thing to get my most used feature to be quicker/ more accessible.
I would rather improve things than keep them like the old oneā¦otherwise, weād still be driving model Ts if we always took the approach of keeping it like the old one for familiarityās sake.
Anduril is to date my favorite u/i, but it could be just a bit better. And just think, when toykeeper gets done tweaking it, it will be the new standard. Everybody will be reflashing or replacing drivers, including me.
FWIW, Iāve been trying to re-do the diagrams for Anduril 2. The plan is to write up a full tutorial with diagrams for each step, but first Iām trying to organize a layout with all the details included.
For now, hereās an attempt to show the Simple UI in a manner which is, um, simple:
There are also a few things not shown in the diagram:
Ramp 1H: Ramp down
Ramp 3H: Tint ramp (on some lights)
Off 10H: Go to full / advanced UI
Loosen tailcap, press button, tighten tailcap, hold ~4s: Factory reset
That Simple UI looks pretty solid.
The only thing I donāt see is a way to go from Lockout to Off, which may be intentional. I suppose if youāre unlocking the light itās because you intend to turn it on.
Not exactly sure what ā15+Cā means for the Version check. 15 clicks is also quite a lot and can be a hassle to count for something as simple as a version check. Maybe it could just be a part of the Advanced UI instead? Because it seems like the people who would want to know the firmware version of their flashlight would probably also be the type of people to use the advanced mode.
Iām excited to see the development of Anduril 2.
15 clicks are annoying to countā¦ so instead, it uses 15 or more. It doesnāt care how many, as long as it is at least 15.
About whether version check should be included in simple modeā¦ Iām not sure. Itās a good question. Should version check be in both modes, or just in advanced mode?
If itās in both simple and advanced modes, itās always ā15 or more clicks from offā.
If itās only in advanced mode, itās ā10H from off to reach advanced mode, then 15 or more clicksā.
Ah that makes more sense with the 15+ clicks.
The reason I mentioned version check to be an advanced mode feature was purely so that it would be easier to access. If itās still 15+C in advanced mode, then I donāt see a reason why it couldnāt be in both.
I had the idea of maybe a āUtility Blinkiesā mode within the advanced mode that would display boring information like battery status, temperature (with a way to get to thermal cfg), and version number. Then you could get the version number without having to do the 15+C. Not sure how well this would integrate with the current plans for the advanced mode though.
In simple mode, the only blinky is the battery check.
In advanced mode, it has a utility blinkies group which starts with battery check and then proceeds to beacon, SOS (on some lights), and temperature check. It also includes voltage calibration and temperature calibration.
The version check function could go into the blinky group too, but I made it more direct and easy to access because itās very useful for customer support purposes. If someone is having trouble understanding their light, they may not be able to navigate into advanced mode, through the blinkies, and to the correct blinkyā¦ but they can probably press the button a bunch of times quickly.
Iāve also been thinking about adding a couple extra digits to version check, to indicate which build target was used. Basically, each build target would get a unique number, and that number would be added to the version stringā¦ so it would be easy to detect things like how the Astrolux FT03-Mini uses firmware from the Emisar D4V2.
Thatās not something youāre doing often, right ?
Just to put 15 clicks in perspective : to unlock a non programmable Novatc Storm to be programmable (hidden feature), you had to click 250 times (or more) rapidely, about 3 clicks per second, and donāt miss one or you had to start again.
Thatās a fair point. It isnāt a big deal, I just figured if thereās a better way then it may be worth looking at. But youāre correct, itās so rare that itās needed, itās a non-issue.
Clicking 250 times to access a hidden mode sounds like a nightmare. At that point they should have just made it something ridiculous like ātap out āProgramming Modeā in Morse codeā or something along those lines.