Lights with quality mode memory

First, let's describe what I mean by quality mode memory. A lot of lights claim "memory" (like Ultrafire c3), but their implementation requires you to wait 2-3 minutes for the memory to set. Otherwise it just goes to the next mode when you switch it back on (turn off in low/med mode, get disco strobe when you turn it a min later). This is essentially worthless and even worse than a light that starts in a consistent mode.

However there are lights like the Skyray R5 that actually have a real mode memory where it will turn back on right where you left off, any time, every time.

I'm starting this thread so people can share any lights they have that do the latter instead of claiming "memory" and giving you a really crappy implementation. Let's even share DX/KD lights that turn on in a consistent mode every time as those seem to be more rare than the crummy "memory" ones.

Unfortunately the only real memory light I have is that Skyray (I recommend it). I mostly have 1-mode lights, but I'm looking to buy more multi-mode, just not the ones that surprise you with strobe.

Thanks.

The 1xAAA/10440 stainless steel Trusfire XP-E F23 has about the best memory of any light I have. If it is off for over a second (2 seconds at the most), it will come on in the last mode.

I have used a bunch of NANJG drivers, including the ones sold by Shiningbeam, and that memory is based on how long the light is turned on. If it stays on for 4 seconds or more, it will come on again in that mode no matter how long or short you turn the light off. It works, but I'm not crazy about it. If it has been on for 4 seconds and you want to change modes, the first half-press does nothing.

It seems so simple, but it is amazing how many different ways there are to get it wrong. And a lot of lights from more reputable brands don't even offer it. I do think the best option would be to have a switch on the tail somewhere that would give you either low or high and then you could have a forward clicky that would only turn it on or off. And ideally you could program the modes so if you want a real low Low, you could get that or if you are trying to save your batteries, you back off of the High some. I don't like the head-twisting thing of the Fenix and Quark lights because that makes you use your other hand. It should be able to be set by your thumb, just like the power is.

My Trusfire XP-E F23 and R5-A3 seems to work exactly the same. Has memory after you turn it off for a couple of seconds.

Thanks, I've also looked into it a bit more more:

Some lights that come on in same mode (usually high): Hugsby P32, Ultrafire 504B

Memory works: Trustfire Z1.

The skyray S-A1 has a perfect mode memory too.

The flood to throw MXDL Sa-28 has it too

The flood to throw MXDL Sa-28 has it too

Really? Mine has the crappy 2 min "memory" mode. I got it at KD.

My MXDL SA-28 does not have memory. Turns on high after 2 mins off. If it's less than 2 min, it will go to the next mode.

has a real memory too. It allways goes on in the last mode used. I' have got that one from KD. The replacement 1000mA driver from DX sku.6190 has also the same kind of "real" memory, but it needs a longer impulse to change modes. What I like best in this one, it doesn't heat up at all. The modes can be customised by adding jumpers from the four stars to the negative rim. Default is low-mid-high-strobe-SOS.

Edit: Found the thread about the mode customising: http://www.dealextreme.com/details.dx/sku.6190

From what I have seen in flashlights so far, there are two ways to determine whether to switch mode or to memorize the current mode. One is “time switched on”, meaning that the mode is changed when the light has been switched on for less than x milliseconds and the current mode is remembered when the light has been on for longer. The other is “time switched off”, where the mode is changed when the light has bin switched off for less than x milliseconds and the current mode is remembered otherwise.
From a programming point of view, “time switched on” is easy to implement. When the MCU starts up, it fetches the current mode from permanent memory and stores the value for the next mode there. After x milliseconds, it overwrites this value again with its current (i.e. “old”) mode. So, if the light gets switched off before the second write operation, at next start-up, the MCU starts in the next mode, otherwise it will stay in the old mode. Easy to program, but you need the annoying double tap to switch modes after the light has been running for more than a second.
“Time switched off” is much harder to manage, as the MCU is cut off from power when the light is switched off. You just can’t write a program to measure how long the MCU has been powered down without an external clock. Some MCUs have a so-called “brown out detection”, where the MCU can check at start-up whether the power has been cut completely or was just below the level needed for operation. Since the MCU’s power supply line needs to be buffered with a capacitor to filter out noise, there will be some voltage left on the supply line after switching off. Some drivers seem to use this residual power for brown out detection (if the power is off longer than it takes to drain the cap, keep current mode, otherwise switch to next mode). The problem is that this method is highly dependent on the cap’s capacity and the MCU’s power drain and will only work if the right components are used. Given the Chinese passion for quality control (“We’re out of 10nF caps? Just use the 100nF from the next box, nobody will notice the difference…”) you end up with lights that will only memorize the current mode if left switched off for a couple of minutes.
Another way to to implement “time switched off” would be to make the buffer cap big enough to really power the MCU for several seconds and use this time to monitor the battery’s voltage. If it goes to zero, store current mode, if it then comes back switch to next mode. If it doesn’t come back, the light has been switched off for a longer time, the MCU runs out of power and will start up next time in the stored mode. But this would require bigger caps and at least one more resistor for measuring battery voltage, thereby increasing the circuit’s price by fractions of a cent…

problem is that this method is highly dependent on the cap's capacity and the MCU's power drain and will only work if the right components are used. Given the Chinese passion for quality control ("We're out of 10nF caps? Just use the 100nF from the next box, nobody will notice the difference...") you end up with lights that will only memorize the current mode if left switched off for a couple of minutes.

Well, that explains the crappy mode memory. What's the easiest way to find and change this cap?

I wish they just did the time on model. At least it would be consistent instead of worse than useless.

Oh, btw, the Hugsby P31 returns to high after about 5 sec. Acceptable, but not ideal.

My fake Solarforce L2 XPG R5 (dropin is same as Skyray I think) has decent 5 or whatever second time switch off mode memory. However one disadvantage with it and most similar implementations is they change memory even if its off for a very short time, so for example if battery is slightly loose then it changes mode when going over bumps on my bike. It does this with 1 battery but with the extension tube and 2 batteries it's fine. From what I've read quite a few people have similar problems with the genuine L2.

A magnetic spacer would help or carefully putting aluminium foil in the spring to extend it may as well.

In terms of design, one possibility would be if it needs to be off longer then say 0.5 seconds before it switches mode. Trouble with this is it needs to be done well otherwise it will be annoying to change mode. As it's so easy to screw up the design, probably a good idea the Chinese manufacturers don't try this. In fact, it may be difficult to program this in such a way that it's not annoying to at least some people although I personally think I would prefer it if it's done well.

Time on may partially avoid this problem. (Depends how often it goes off and how quickly it stores the current mode.)

Order a driver circuit that works the way you like and fits the flashlight. :wink:
Seriously, trying to get the memory working properly by swapping out SMD components will be more trouble than it’s worth.

I like the ITP SA1 since you change modes via another switch close to the bezel.

I can also verify that the latest Skyray A1's have perfect memory. Well centered xp-e, too.

Skyray's are the only ones I have which do nice consistent UI. Recommended.

The Hugsby P32's I've got have 10 second revert to high. Better than always switching to next mode I supposed, but still have to cycle through everything if turning off/on often.

And the Skyray S-A5

And the Ultrafire MCU C7 Q5 5 mode

The smallsun A1 wait for 1 second starts on high.

Skyray S-A5 (18650 slimlight) too has perfect mode memory. It is GREAT light for $15 shipped from an ebay store. It seems to have good regulation as I was able to light it up pretty good using two NiMh in series. It means it has Boost-Buck driver. In low mode, it does have visible PWM when you shake the light but it is not objectional when stationary.

All in all, highly recommended if you are looking for an EDC 18650 light