The Olight Baton UI is one click for on or off, but it’s more of a staircase than a ramp… and it only goes up. Normally their lights only have moon, low, med, and high. Holding the button cycles between them in that order, with a loop from high to low. I gave my Baton clone 7 levels instead of 4, but otherwise it’s mostly the same.
It’s a very simple UI and the code for it is simple too. I include it with FSM because it makes a nice reference example, and because it’s kind of nice despite how basic it is. The plan is to include clones of several popular interfaces and at least one or two unique ones.
A big goal here is to keep the interface logic separated from the hardware support code, so that most of the interfaces “just work” on most of the hardware. Adding a new driver, or adding a new interface, should be mostly independent of each other. I guess it’s similar to how traditional software separates hardware drivers from software applications, only scaled down to fit in a flashlight.
I hadn’t heard of him either until a few months ago. He does premium hand-made lights in relatively small quantities. They’re similar to Sinner’s lights, but a bit longer and narrower with different styling. He has been working on his own custom firmware lately and used bistro as a base, so he sent me a sample of his new DC2 to say thanks. I really should put up a photo review soon since it’s a beautiful light, but I’ve been preoccupied just trying to keep up with all the BLF projects lately.