The V3 UI fits on the D1 and D4, but if you’re going to flash them, you may as well upgrade to Anduril. It’s what I use, at least.
I made a UI toolkit for e-switch lights. It makes new UIs relatively easy to create, makes porting UIs to new hardware relatively easy, and makes bugs relatively easy to avoid. But that still leaves a big question:
What makes a good e-switch UI?
So I’m hoping to get some discussion going about what people want in a UI. What’s good, BLF?
I do have some feedback after using it a few days. The most annoying feature is not being able to exit momentary mode without pulling the battery. I understand why momentary mode has no exit. In my opinion it should take more than 4 clicks to activate it since the mode has no exit function built in. Because of timing idiosyncrasies I always seemingly activate momentary mode instead of lockout when the light is off. I find that I have to slow down my clicking. The fact that I have pull the battery to exit is frustrating, at least this is open source so I am going to reflash it with some changes.
The other other feedback that I have is that it takes longer for the light to turn off when in ramping mode. I guess because it is waiting to see if there is any more user input? But the delay seems oddly long.
I also find it inconvenient that momentary is 4 clicks and lockout is 6 clicks. This is fixed in Anduril, which uses 4 clicks for lockout.
If you feel the click timeout is too long, change a couple of definitions and re-compile the code. Specifically, change these:
#define HOLD_TIMEOUT 24
#define RELEASE_TIMEOUT 24
Each unit (tick) is 16 ms, so one second is 62 ticks. Higher values make it easier to enter long sequences, lower values make the entire interface respond faster.