[WIP] 17mm DD+single-7135 driver / single sided / Dual-PWM

I agree, huge is relative! I definitely consider anything which can flatten an 18650 in a year “huge” when it comes to quiescent current. Clearly a 3Ah cell should give about 3yr on a 0.1mA draw, I think it’s fair to call that “not huge”… With that said, the few photographs I’ve seen are of tailcaps which appeared to be weeellllll over 0.1mA or even 1mA! Is anyone running a setup which has been measured in the 0.1mA range? I apologize for the fact that I haven’t had a chance to read through your thread yet. I haven’t been able to read entirely through my own threads either.
:frowning:

FWIW I believe that Lambda claimed to have achieved as low as 0.009mA with some Keylights using hand-binned ultra-low-power LEDs. There was fairly extensive information posted somewhere but I can’t find it now. It was probably on the defunct Lambdalights website. At least some of the discussion is available on flashlightnews.net so scrounging there might turn up interesting info. Those lights were using a clear lens, but who’s saying that we couldn’t machine acrylic buttons to use in place of rubber tailcap boots?

  • Thanks. :wink:
  • Yes, I did leave the 0805 pad for the OTC specifically to allow the use of high-spec parts. IIRC we should not need anything beyond X7R.
  • The addition of the OTC pull-down is to allow for very high capacity capacitors (such as 10uF). Without a pulldown they’ll stay charged up too long. I posted about this idea in the A17DD-SO8 thread, it may not be good/useful at all.
  • Yes, now that you mention it that is the proper term. I normally think of it as a clamp. Now that you jar my brain a little, I wonder if we shouldn’t use a 0-ohm shunt in place of the resistor in this case (1s use as a snubber/clamp/flyback). I guess if it looks good on the scope with a resistor then that’s what we’ll continue to recommend. I’d rather leave the pad in place since it’s good for 2s+ use.
  • Why would an MCU reduce power consumption on the tailcap LEDs?

I think that in PicoPower sleep it can do better, but it also can’t achieve much while it’s asleep… the watchdog timer can wake it up as I recall, to handle blinks or whatever…

Thanks for the answers guys!

@wight, I meant a MCU that’s on the tailcap board. It doesn’t make the LED more efficient, of course, but it could let them stay off, only blinking every x seconds.

@PD, with everything done to reduce power consumptions (ADC off, etc…) in power-down mode, the 13A should draw about 4-5µA during sleep. See figure 19-14 on page 131 in the datasheet. For example take a look at this guy’s project, he achieved that low of a value.

That makes sense. I drew a mental blank when I asked you the question about the MCU of course - by the time PD replied I was back on track, hence the Picopower comment. :slight_smile: From what I’ve read in the past I think that should be very promising.

I find 0.15ma gives a very usable level, and Dale and others agree. I have one at 0.06ma right now, but it needs to be turned up just a wee bit. With the latest boards we should be able to make them much more efficient, because less light will be lost down in the tailcap. Also, as battery voltage goes down, so does the draw as well, which really lengthens the time before a battery goes totally flat (I’m sure you could have deduced that, but maybe you hadn’t thought about it).

The ones in the Kronos groupbuy are configured to to around 0.7ma, which I find unrealistic for actual use, but it makes a for a fancy feature to show off.

I’m not familiar with any of the lambda stuff at all.

That’s very impressive. Unfortunately we will also have a voltage divider leaking current past our mcu, but I can’t wait to find out how low we can go.

I forgot that the lower battery voltage would reduce the current. Lambda also factored that in. This is something that edges in and out of my thought process. Purely for simplicity’s sake I often just do my back-of-the-napkin math at 3.7v per cell. : - /

If you aren’t familiar with Lambda’s stuff it would be worth scratching around. Lambda (lambdalights) did the Varapower series of modified Maglites which encompassed several interesting things. One byproduct was a tiny indicator light intended to replace a GITD or tritium pendant. That’s the Keylight series. Here is a link using Internet Archive’s Wayback Machine

I like the direction that your newer tail-LED boards have taken (replacing the washer).

The voltage divider shouldn’t leak much by itself, but requires ADC & stuff to be enabled. Using ADC also almost certainly requires the MCU to run longer when it wakes.

I have a lambda keylight. It’s brighter than a tritium vial, but not by much.

As for low power mode on a tiny13, it remains to be seen what the lower limit is. It’s easy to get down to 0.3mA,but the goal is lower… Anyway, I doubt we’ll average lower than the 0.15mA tail boards people already made. The main appeal is that it can do fancier things, like changing color with voltage.

Some progress on moving the spring bypass via up to 3mm diameter. My thought here is that a larger diameter via will reduce the chances of the wire folding over, binding, etc.

EDIT: I have no idea where the component designators are going to fit.

This looks decent… No guarantees that it’ll work though.


https://oshpark.com/shared_projects/4nsRthrB

Stuff:

  • 3mm bat+ spring bypass wire hole.
  • Pin3 pad available for scraping. (1.4x1.8mm triangle)
  • ~1mm physical keepout around the edge of the driver
  • >0.5mm electrical keepout around the edge of the driver
  • Placement is “a little” tight.

Parts list:

  • C1 - 1uF, maybe much more depending on stability (5uF). [0603 - decoupling capacitor]
  • OTC - 1uF X7R. Maybe much more (10uF) if used w/ R5 pulldown. [0805 - off-time capacitory]
  • R1 - whatever
  • R2 - whatever
  • R3 - 200 ohm or so. [0603 - Zener load resistor]
  • R4 - 560 ohm or so. [0603 - tailcap LED bleed resistor] [not needed w/out tailcap LED circuit]
  • R5 - unknown value [0603 - OTC pulldown resistor]
  • R6 - 12k-ohm [0603 - FET gate pulldown resistor] [used to prevent flash when moving to moon mode]
  • D1 - protection / stability diode. Do not bypass. [SOD-323 Schottky Diode]
  • Z1 - snubber diode. Do not bypass. [SOD-323 Zener Diode]
  • MCU: SSU or SU w/ legs bent (eg our normal narrow MCUs, like v009 and most other BLF drivers)
  • FET: Power-SO8 (eg our normal FETs, like v009 and many other BLF drivers such as A17DD-S08)

Interesting. I’m not sure what all the changes are about though. Why is C1 smaller? Can Z1 and R3 be safely omitted? Do you think R5 will reduce run-time efficiency in the same manner as R4? What are the effects of moving D1 away from C1 (and it looks like their logical arrangement has changed too?)?

D1 and Z1 are both specifically marked in the partslist as “do not bypass” because I figured that question would come up! :stuck_out_tongue: :smiley:

Firstly, I haven’t tested this circuit at all or even chosen real parts for it. I could easily be wrong about how low we can go with C1 (that’s mentioned in passing in the partslist too). The thinking is that C1 on existing BLF DD & linear drivers is currently vastly oversized for regular “decoupling” and is more along the size of “bulk capacitance”. We need a lot of bulk to dampen the really harsh spikes. If we eliminate the spikes, bulk capacitance needs are reduced. For 1s use Z1 should be populated with a Zener in the range of 4.5v to 5.5v breakdown voltage. The plan is that this diode will burn off the spikes. For 1s applications R3 should probably be bypassed (shorted), but I do not know that for certain.

I haven’t done any math or significant thinking in regards to the OTC pulldown (R5). I think that it will be a high-value component, so it’s effect on runtime efficiency will likely be similar to that of the voltage divider.

RE: moving C1 and changing the arrangement/orger of C1/D1… yes, you are correct. At some point during BLF DD driver development problems started cropping up. Comfychair spearheaded the effort to track down the problem and eventually nailed down what was going on in this thread: comfychair - FETs and gate resistors - scope images The problem turned out to be an inadvertent boost circuit. We eliminated the boost circuit by moving the decoupling capacitor to the “wrong” side of the protection diode. My intention with this revised circuit is to allow the small & constant “boost” to happen, but burn off the extra voltage through the Zener.

Furthermore, the closer the decoupling cap is to the component it “decouples” the better. C1 is now right next to the MCU - this is good. It’s also fed by a long & thin trace. In my book this is also good because it may provide a little inductance to keep things smooth.

if the supply voltage wasn’t so wonky th

C1 location had no effect on the original (boost-prone) circuit. Remember, I even tried it soldered direct to the leg of the MCU. After C1 was moved Vcc & B+ tracked together exactly 1:1, minus the difference of the drop thru the diode. Are you thinking you can get Vcc to stay flatter than B+? I don’t think that’s possible.

A second capacitor in parallel with D1 also worked just as well as relocating C1, but that increased the part count.

I don’t really feel like building one, but if you wanna send me one with the new layout I’ll get some scope pictures of it to compare the shape of Vcc to the other designs.

Oooohh! Another comeback of a BLF-legend! Comfy, thanks for all your great contributions in the past. Welcome back.

Oh, I see now that it is possible… you’re planning for Vcc to stay above B+, but only by a controlled amount that doesn’t zap the MCU. Is there anything to gain from that though? Have there been any problems caused by the swing in Vcc? I’ve been AWOL too long, I don’t know any of the new firmwares or the DD+7135 drivers.

Hey man, I’m just a blind squirrel who occasionally finds a lucky acorn. :beer:

  • I’m fairly confident that I can get Vcc flatter than B+.
  • Component location does matter. Remember, traces have inductance and resistance. It may not matter very much, but it matters. That’s not the central focus here and FWIW I use the term ‘move’ interchangeably for “logically moved in the circuit” and “physically moved in the layout”. I know, that should be a crime. :wink: In this case C1 has been logically moved to a different location in the circuit!
  • I don’t feel like building one either. :-/ I’ve got a nice scope which I picked up a couple of months after you did all of that work in your FETs and gate resistors - scope images thread. It was clearly a really valuable tool and I’d wanted to get on the oscilloscope bandwagon for a while. If I get one built I can put the scope on it and see what’s happening.
  • Thanks for bringing up the capacitor in parallel to C1 thing… I completely forgot about it. AC / psuedo-AC is a mystery to me. I’ll have to think on that a bit.

EDIT:

Exactly! Yes, some members are using ATtiny25/45/84 and those seem to be more sensitive to a poor quality Vcc.

The new layout also makes this board “Zener mod ready” which it was not previously (doing a Zener build on v009 was at least a minor pain AFAIK). That said… I think it also means that a zero-ohm jumper should be used in place of the Zener’s load resistor when the driver is built for 1s use.

I know little to nothing about all these things, but I think this comment (#581) from Tom E in the attiny25 thread could be related.

EDIT: sorry, didn’t see the above two posts, this want meant as a reply to comfy’s post #331.

@Comfy, you seem to find very important acorns for a blind squirrel. :beer:

I dunno, the current through the Zener with 1S would depend on how much current the boost circuit is able to generate. I have no idea how to figure out what that would be except by poking it with a pointed stick. Since the boosting happens every time the output switches the amount depends on the duty cycle which changes with each mode/level. It would also change by battery type and also state-of-charge. Makes my brain hurt, easier to just build it and measure. I can only model it by comparing to a positive displacement pump connected to a variable speed motor…

On some high-powered FET lights, VCC spikes were rebooting the MCU. This happened sometimes as low as 5 amps, or sometimes required more like 12 or 15 amps to trigger. It was worst on strobe modes.

The short-term solution was to make C1 a lot bigger, but this design attempts to fix it more properly.

MCU can’t get a voltage spike on drivers where C1 has been relocated, Vcc tracks with battery voltage. That means B+ would have to bounce up over 6V when the output turns off, and I’d have to see a scope image of that happening before I would believe it.