Thank you, Lexel!
I solved the problem with my 22mm driver now. Just soldered a new one and it immediately worked! I still don’t know what is wrong with the other driver but the flashlight I wanted to build is running now. Thanks for all the helpful posts here. ![]()
One thing I noticed on all TA drivers I have build so far is that the long click for going to hidden and previous modes is really long, maybe two or three seconds. Also the blinks in configuration mode and battery check take ages. Is there any specific reason for this?
Yes, this is why I no longer use Bistro unless I can’t help it. The OTC simply does not work reliably.
Bistro HD was a step in the right direction but sadly was never finished.
The long click timing depends on the analog properties of the OTC (offtime capacitor), and also depends on the calibration set in firmware. The driver needs to have its analog properties carefully designed to drain the capacitor at a useful rate, and it also needs to have the firmware calibrated to match the driver’s behavior. Analog circuit design is tricky though, so for a while people were moving toward methods which don’t depend somuch on analog behavior.
The slow blinks may indicate that a bad fuse value was used while flashing, causing the chip to run slower than it should.
Yes, for clarification, the issue is the hardware setup, not bistro itself.
There is just no alternate clicky firmware right now.
Is the issue that the OTC is draining too slowly for the low resolution ADC to meaningfully tell the off-time? Or that the variation between drivers makes it difficult to make a single hard-coded calibration value work?
I have been meaning to check if there’s room for a) an in-firmware OTC calibration mode and/or b) temperature compensation for the OTC. Mainly in an attempt to make my Reylight triple dawn long presses less flakey.
The cap is just too inconsistent when combined with the various other parts of the driver. You can get 1-2+ second variances in off-time driver to driver.
Converting the driver to run off an all-digital setup that does not use the OTC at all is possible (and could also be used to work with an e-switch as well).
At this point it might be easier to add the function to anduril then bistro honestly since the change basically makes the driver act like an e-switch driver.
In a nut shell you use a large cap to keep the MCU powered for a few seconds after the tail switch is turned off. The MCU counts the time and then when you turn the switch back on it knows if it was a short click or long click. The hard part is minimizing the power drain during the off time but not impossible.
Right, that’s the OTSM approach. Use the internal oscillator (which will also have considerable variance from chip to chip, by the way, but good enough for measuring press length) and a big cap to measure off time. But you said it’s not finished?
And, yes, getting micro power draw down to datasheet numbers is quite a challenge.
Yeah, Bistro HD is not stable and seems to always have issues of some kind so it is not a viable option sadly.
Generally I like the TA bistro. But the clicks are very slow also with NarsilM. Recently I equipped my Convoy L6 and a Haikelite SC04 host with 30mm LDO drivers. They have got the flaw that if you ramp up to turbo they turn off. I need to release the button and press it again to make them turn on again. ![]()
Is there any simple solutions to the slow clicks and the turbo turn off problems? If not, I will cope with it as the slow clicks don’t bother me that much. ![]()
Setting aside OTSM, if it really is just a component tolerances problem (light-to-light variation), then perhaps a calibration mode could be added, that measures and stores the OTC values in the EEPROM. I’ll have a look.
Bistro is my favorite clicky switch UI, so I’d hate to see it abandoned.
IIRC I had some alternate bisro Hex files in the zip file with different long click timings. You could check those.
Also, are you using the 1.3 version of the hex or the older version. I think I corrected some of the long click timing issues in the 1.3 version.
Past that it is light to light variation.
There is a way to change the OTC setup to gain a much more consistent timing but there has yet to be a standardized components that have the correct timings figured out. Lexel posted some awhile back that got things close but I think he said they still needed tweaking. It would also require that the drivers be changed and in order for the components to fit on the smaller drivers they would have to be shrunk down to 0402 which is smaller then many want to deal with.
Technically as a DIY option you could stack some components on the existing layout but that is not ideal.
Personally I would like to move to a firmware that offers a ramping mode. I find that to be the most useful overall.
the 2S builds with 1S Bistro hex adding about 680k-1Mohm as discharge resistor works with 1uF OTC
Maybe you’re right.
I modified Crescendo a little to work better with my Reylight Dawn, and I’m actually pretty happy with it. In the spirit of Bistro TA, I added a blink/pause when it switches channels, so it’s easy to stop it at 1x7135 or all 7135s. I also used the ADC calibration from Bistro TA. I disabled the bike and heartbeat strobes to make room for the full battery voltage readout, but that’s easily undone via #defines.
GitHub - treellama/crescendo-ta: Crescendo firmware for Texas Avenger "TA" flashlight driver if anybody is interested.
Great, thanks for the code. TK would be interested in it I bet.
Thank you very much, treellama!
I have always wished to be able to use Crescendo on TA drivers. I will try your file soon. ![]()
I’m hoping someone can help me out here. I have tried to build the 17mm TA LDO driver.
I’ve used the parts listed on OSH Park:
R1 : 22 k
R2 : 4.7 k
R3 : 100 k
R4 : 47 ohm
R5 : 4.7 ohm
C1 : 10 uF
C2 : 10 uF
LDO: LT3009EDC-5
I used one of each FET on the two builds.
I initially flashed the ATTiny25 with Bistro, then tried the Bistro Triple down on both attempts.
No matter what I do when I turn the light on it’s either on or off, without any firmware options or levels.
Is this a sign that I’ve messed up the soldering and I just need to keep trying to get it right? Or am I missing something else entirely?
Yes, this generally means that the LED is shorted to ground and thus bypassing the driver.
The most common place this happens is at the mcpcb shorting to the reflector.
Thanks for the quick reply! I’m actually running a triple with a carclo so no reflector. Where would be the second most common? Some of my 7135s seem to hit the retaining ring, would that short it out? Would you suggest I try with just the top 7135 first and then add them after I verify there are no other shorts? Or is there a better way to do this until I get better at it (I guess I should start with just pulling it off first!).
Yes, removing the bottom 7135’s is a good first step. If too much solder paste was used they can short out under the 7135’s.
Also just check the entire driver over carefully, a small short in many different places can cause this.