The timeout here is NOT a turbo timeout like the past. It's a minimum time, not a max, and it's set small. Default is set to 10 seconds (unless you compile it differently of course). If you hit turbo tap and your light can't handle 10s more then that's on you. You've got a crazy light and you knew what you were doing when you pressed it, and maybe you should reduce your turbo mode. If it's still cool after ten seconds, it will keep going until it's hot. If you hit tap up though, it means you're engaged with the light. If it still gets too hot, you can tap out, or throw the light in the nearest river. If it's waterproof, it will timeout in 6 more seconds (took 4 to say ouch and toss), it won't boil off the whole river, and maybe you can catch it downstream.
If you do 30c "more" when does it expire? After you've been in drop down mode for 5 minutes, and just want another turbo boost, you don't need 30c more .. and 30c is probably WAAY too much anyway. 45 is ok in your hand 65 isn't. 30c is a huge difference, and if you've set the initial max to what you really should have, there probably really isn't that much more you can actually tolerate unless you're actually in a situation where charred flesh is worth it to push the zombies back and save your life. I think most people wont' notice the difference between this and BLFA6 except it will just seem to work better at keeping your light cool and giving you turbo as long as possible.
It definitely meets all the safety needs, the initial longest possible turbo need, the abilty to cool and re-up on demand, and the no random annoying mind of its own need. If it turns out people really need to press the shape of the extreme boundaries a bit more, then we'll see.
In general you probably need a delay time and a time constant, and the two aren't necessarily the same. In practice maybe there are some corners that can be cut to have it work pretty well on most lights, I don't know. Anyway, yeah, it's not like you run battcheck and write down the calibration number. These are tricky things to tune.
Well Tom E didn't chime in here, but I see he's adding a temp stepdown for the Q8 narsil now. Good, I think it needs it.
TA part of my reluctance with your thing is just KISS especially when combined with safety. If something is bumping your light switch in a bag, it may bump it many times. Ok probably it would bump it out of turbo, probably it takes an extra special Murphy's law kind of day before it gets bumped up to max accidentaly, and those kinds of days are rare right? Not in my life. If it can go wrong, it will. And maybe the light never reaches that max but smoulders right under it. As it is the internal threshold is likely much hotter than what you feel, but if getting there slowly in a confined space the whole light can get to that temp. It's more complication, more programming, more to go wrong, not clearly much to gain, but something to consider for next iterations.
For me I like my lights to always come on high and then step down to avoid overheating, damage or fire even in the event that it comes on in my pack. Turbo timers do not achieve this (just look at my picture). I like the way my zebra-lights step down in very small steps so I dont notice until everything is running the right temperature. I have been using led-4-powers ld-02 drivers in all my lights for a couple of years now because they give me this feature and they have never let me down, however they are a bit of a pain to setup for each light and are relatively limited in terms of modes. Enter Bistro, I purchased 4 of Richards MTN-17DDm with Bistro to make some mountable lights and absolutely loved the programming and ability to customize modes. (no mode memory, always start on high with thermal regulation with hidden strobes and a medium and moonlight mode). Step down works great and the modes are perfect. I even drilled out and replaced a LD-2 driver on one of the lights that I had already finished. Koodos to toykeeper for making Bistro. My only wish is for a constant step down like the zebralight and ld-02 so you dont notice when the light is dimming or brightening.
Good feedback, says the bistro thing does the main trick for folks on some lights at least.
I'm leaving the compile option for the original bistro method in. Anyway, your comment does shift the balance toward maybe not modifying the "bistro-classic-HD" default build. Not sure. Anyway, the old builds are really included for others to be able to customize with new features. Like if you like classic bistro but want OTSM, or want this. So it doesn't matter much what default I make. It should stay fairly close to the original in spirit though.
As you said, getting smooth ramp down setup for a particular light is hard. I suspect the new method I'm making won't meet that desire for you, but I also suspect you might like it better than the way it is. If you're going to be annoyed with noticable step down is it better to have 5 steps in rapid sequence or just come down once to a good compromise mode and be done with it? There's no dumb-timeout, not unless you have a stupid hot light that scorches in under 10 seconds of turbo time. So long as your light can last longer than that, the step down will be temp triggered.
I like ta idea of hitting turbo and it steps down after a certain tempature. And each step up after that cuts down at a higher temp even if if its 5c increases I like 10c though. I hate turbo timers under 3 mins. I actually have removed all drivers that can’t have turbo timers disabled in my lights. And either had them reflashed or replaced altogether. Turbo timers annoy me to no end. I can tell when the lighr gets to hot to use and step down. No one really borrows my lights. And if they did. I imagine someone would turn off, turn down or put down the ligjt if it got to hot. I guess its just common sense to me. Oh wow this ligjt is getting fairly hot maybe I should turn it down if I still need light. Never mind I’ll just keep holding it until I smell burning flesh. And if the turbo is that powerful. Its going to drain the battery quickly enough before it harms any internals. Talking single emitter lights. Not crazy triples and quads. Even my triple x6 I’ve left on turbo. It gets to hot to touch unless its middle of winter. But doesn’t get hot enough to harm internals and a 3000mah battery is done in 15mins and imagine is going lower and lower after the first minute.
The way I see it if I have it in turbo I have it there for a reason and need the output. If it gets to hot I’ll drop it down a level or hold it by the battery cap or the battery will shortly after. But I do have large calloused hands from hard outdoor labor. Lights my wife will drop are only warm to me. So I get everyone different.
I never purchased a blfa6 because I couldn’t disable the timer like with the blf x6. 45second timer would just piss me off. I had a s2+ built with the same parts just the driver flashed with no timer great part of the a6 driver its reflashable. If I ever do get one in the future the driver is coming out and being reflashed.
I agree. Would be neat to have two configuration modes: a slow ramp that you can stop with a tap to set the step-down-to-mode, and a full brightness mode, that you can stop with a tap to set the step-down-time.
I have configurable boost timer in my lights but don’t use it. None of my mine exploration or climbing buddies that have bought lights from me want it either. Providing voltage and temperature levels are ok, why have the light decide when to step down from boost?
I have two thermal levels to act on. Just like low voltage and critical voltage, I have high temperature and critical temperature. High temp step down is a step down routine that steps down a mode, waits 30 seconds for temperature lag, then steps down again until it reaches my highest allowed output for high temp levels. Critical temp is 5 degrees above highest. If that is reached it either shuts off (default) or goes to a very low output, depending on configuration.
I think limitations that prevent boost from even being enabled on high temp or low voltage are pointless because volt/temp monitoring will just kick in again.
Thermal regulation mode, or other means of letting the light increase output once the light has cooled down, may have it’s uses if it works well but I don’t see myself or my friends ever really using it.
I think real thermal regulation is a great thing because it makes a light safer. When combined with an over-discharge protection one doesn’t have to monitor a light. I can just set the light down when working on something and forget about it because it won’t destroy it’s self or the battery. In addition to his a correctly desinged thermal regulation will allow for maximum sustainable output without having the light get too hot to hold. So thats a comfort factor.
Of cource thermal regulation is only nice when you don’t notice it, meaning that it smoothly adjusts the output in many small steps and that it dosn’t fluctuate too much (hystereses).
So which lights have this? Only very few:
Zebralight (from 2013 onwards), Armytek (probably since 2014, Wizard v1 doesn’t have it), Lupine, Noctigon Meteor M43.
I don’t recall any other manufacturers having this, but I could be wrong.
You keep bringing up 30c, that was just an extreme example, not something I see actually being used by most.
Like I said, a 10c increase in target temp is about right if you bump it back up within say 10 seconds of the step down IMO, it is just as simple as a time based setup but it automatically adapts to the host and conditions unlike a timer.
The fact is that if you are in turbo and it steps down, if you step it back up with a 10 second min timer, then it is going to step back down in 10 seconds no matter what since it didn’t have time to cool off. I know that when I do step back up to turbo, this is generally the case, the light doesn’t get time to cool off first. Fighting a step down every few seconds is royally annoying.
By simply increasing the target temp a bit you still get those few seconds but it adapts to the conditions unlike a timer. So if it is 10c out, it could be 30+ seconds before it steps down again, or if it is 40c it could be 10 seconds.
I do not see any reason to use a time based step down arrangement, although putting it in the options is fine so people can pick between them of course.
Plus like I said, most people will setup their lights with a max temp of around 50c due to that feeling hot. That leaves about another 50c it can increase before things start getting hot enough to even worry about the light itself having issues. So you have a lot of wiggle room to increase the target temp a few times.
As far as a safety setup in a bag, do tell how a temp based setup is in any way worse then a timer based setup? The timer based setup could actually keep going into turbo indefinitely in your scenario.
A temp based setup would reach the max allowable temp at some point and stop going into turbo.
Seems to be that temp based is the far safer option as well.
TA it seems to me that you're just setting your threshold temp too low in the first place. Set to the hottest you can take and the argument you describe doesn't really make sense anymore. I wouldn't be setting these thresholds anything like conservatively. Painful to the hand isn't yet that dangerous as far as starting fires. Also you can just set the minimum time longer. No big deal. If you know it takes your light 90 seconds to heat up on a warm day in May, set the minimum time to 60 seconds. It won't interfere with your first stepdown, and on the second one whatever, you can turn it off before 60 if your hand is on fire anyway. Basically I actually think entirely time based is 100% fine if it were menu configurable, but the lights that need time based don't have enough program space for that menu. You could set the time a bit conservatively, but not annoyingly short. You can re-up. The re-up won't be annoyingly short. It might be long enough to burn you, but you're engaged with the light and in control. No problem.
The assumption here no matter what is you are controlling the light, so just increase the default minimum. Really the theshold is just needed in case you aren't controlling it. Temp based is just a little nicer because it will give you more on a cold day before annoying you. But I think time based or a long minimum-time would solve your needs pretty well with a whole lot more simplicity. Both will be compile-able options. I'd think the long minimum time would work better though.
Mike C I suspect your 30 second rule works better than bistro on many lights but it depends on the modegroups and the light. On other lights and modegroups it won't step down enough to even keep the temperature from continuing upward. Hmm.. this may actually be possible to calibrate with a simple procedure. You'd need one controlled proceedure and you could measure delay and and a time constant. Hmm..
Anyway, for now this is adding more options, and maybe later I'll look at adding more yet.
See here is where my issue with timed control starts. It requires you to know what you light can handle, which means every light must be setup and calibrated individually.
This is unacceptable to me, there is no need for it at all and it is a royal pain. I would just go with an A6 driver over having to calibrate every light individually.
The other goal is to get manufactures to use these drivers and it is completely unacceptable to them to have to do that.
Temperature based control on the other hand removes all of this in one simple and universal setup that easily accounts not only for the host but also for the conditions it is used in.
By this same token, setting the max temp to 100c is fine for a DIY modder but that is irresponsible for a manufactured light or in the hands of 95% of the population.
For a manufactured light and/or as the default settings a max temp of between 50-60c is about the most you will see and the most I would recommend. Most people would already think that the light is WAY too hot and risking damage at that point due to it feeling hot.
The real question here is not why should we use Temperature control for step down but why not?
I have listed lots of reasons why it is superior but have not thought of or heard any reasons why it is not?
The same thing happens with either time or temp. The difference is that temperature automatically adapts to the host and conditions to optimize the turbo time where timed options do not.
It’s very crude, and as you say works worse on some lights.
I made a simple addition to the “set max temp” feature where I would make a heat profile. After clicking on desired max temp, the light would measure cool down time, including potential lag (rising a little after clicking off the LED) and then saved the data to memory. It works pretty well, but I put further development of it on hold. I got the 30 seconds number from it so for now I use it in all lights.
Well, you're not convincing me at all of how useful it is, but one thing I am figuring out is a way to at least make implementing it sensible. What you'd want is not to raise the threshold 5 degrees higher than what it is, but instead take max of threshold or present_temp+5. This would at least naturally settle back down to the original threshold without some arbitrary time condition. I'll think about that.
The A6 driver is time controlled only. As for setting the max temp though in the bistro based driver, either previous version, or the one I'm setting up, it's user configurable with the temp_cal mode. You can set it as high as you want. It's not a compile config. If you set it high for YOU you won't need or be able to have extra bump up, and for most people I think the 10 seconds minimum and 10 seconds minimum extra bump with a conservative default temp is fine. That doesn't require customization by the manufacturer for every light and doesn't create a moral liability problem. If you WANT to customize it to your light and increase that minimum also, you can do that, but if you just increase your max temp instead (which again is UI, not compile config), I don't know why you would need to. My intent is for demanding users, the light really is on the edge of what you can tolerate when it steps down and you just get a few critical seconds of extra pain if you really need it. If you don't want it to ever get that hot most of the time anyway, well most of the time you'll just switch out of turbo before it does, right? You're still in control and you still get the option to get as hot as you want without interruption.
Anyway, I'm using temperature control for step down. You keep implying as if I'm not. And I'm using deliberate user willpower to override that, by default for 10 seconds. The question is, is there any stock light where that 10 seconds, which also applies on first round, is enough to overheat? What about 30s? The minimum could be set to 30 if a reasonable answer is no. Anyone who builds a ridiculous light can also change a compile option. Really though I think 10 is enough, especially given you can increase the original temp threshold without compiling. I just don't see anything you've described that you can't achieve with that. It can be setup stock as conservative and overdrived through the UI, still with temp control unless the user overrides that during operation.
Basically, I'm not treating this as some kind of automation, just a failsafe. If you set it like that, you actually shouldn't even need tap up at all. I don't need automation. I have a thumb.
It is your firmware you can do what you want naturally.
I simply try to apply any project I work on to the widest possible use cases and with zero need for anyone to touch code unless they want to. Of which most never will.
If someone is compiling the code themselves, building the light and takes the time to calibrate everything, then sure, a timed setup can work just fine. It still will not compensate for environmental variables but otherwise should work fine.
99% of flashlight users will not do this, even BLF users I would be surprised if more then 5-10% did this. In Fact I think it would be more like 5-10 people that would go to that much effort over just using whatever the stock settings are and dealing with it.
I don’t like people having to “deal with it”, I like it to work the best it can work without the need for them to mess with anything. Heck I bet a lot less then 10% of people even use the temp calibration mode in Bistro.
We obviously have different ways of looking at projects, this one is yours, feel free to do as you wish.
There's no sane light that heats up in 10s. You keep saying it has to be tuned at compile time but it just doesn't. It will work fine on any light that DB custom didn't make. 99% of flashlight users won't make compile changes, correct, and far less than 1% will need to. Someone might like a different method of thermal control, but this method isn't going to work noticeably differently on different lights. There's no "dealing with it".
Actually bistro already had a 4s timing built in. That's how long it took it verify a reading. Although I'll have 10s delay and then 0.5s response time to overheating, instead of both being 4s.
Anyway, I'll be looking at what the variation I described on your option takes. After all you've gotten me some nice boards and it might not be to hard to do a TA_TAP_UP option. I'll have to see.