Cell-Slide Switching - tailcap eswitch without OD increase

A concept for rear-mounted momentary switches (e-switch) without diameter increase
Background
In my opinion, a momentary switch (e-switch) is a must-have for flashlight user interfaces, as opposed to power cycle or “clicky” switches. Locating the switch on the tailcap is also much preferred over the side of the light. The combination of these two – a tailcap-mounted momentary switch – is the optimal setup for me, but this is difficult to achieve in normal cylinder-style flashlights. This is because the driver (at the front) needs to be connected to battery power at all times and have an additional signal from the switch (at the back) connected to it, with the battery blocking the way. Further complicating the issue is that most lights need the battery tube to unscrew from the head, so any connections must be able to rotate without issue.

A few manufacturers have offerings that do this: HDS/Ra, Novatac, & Klarus all have lights that use an additional element (spring, wire, or sleeve) to carry the signal from the tail-mounted switch up to the driver. One particularly innovative solution was briefly offered by Nitecore called “Piston Drive,” which introduced the concept of transferring the switch signal from back to front via mechanical means instead of electrical. All of these systems work well (in my experience), but they have a common drawback that they require an increase in the outside diameter of the battery tube to carry the additional element.

Concept
Inspired by the innovation of Piston Drive (that is, carrying the switch signal mechanically rather than electrically), I created this concept of Cell-Slide Switching to achieve a tailcap momentary switch without outside diameter increase. The core concept is simply to use the battery itself to translate the motion of the switch from the back to the front of the flashlight.

Implementation
So far I have successfully implemented Cell-Slide Switching on two lights – a Solarstorm SP01 and a Xeno G42. Both of these are old lights that I had in my junk bin – lights that I like the design of but never use because I can’t stand using clicky switch interfaces. Using CSS I have updated the user interfaces on them to MELDsc (single channel) which is a MELD UI implementation that removes all the color channels.

Modifying a light to CSS is fairly straightforward. The driver needs a spring on the back side of the driver to contact the positive end of the battery, some drivers need this to be added. A fairly large spring is used, so that a momentary switch can be mounted inside it. Mounting and connecting the switch can be a little bit complicated because the two switch connections need to be electrically isolated from the positive connection to the battery. I have tried two varying methods for this, shown below. I think a purpose-made PCB could make this very easy to do as well.

Once the switch is mounted the connections need to be made to the microcontroller of choice. In my case I am using the PIC16F1575 on a small breakout PCB, running MELDsc firmware. For one of these lights I replaced the driver electronics with AMC7135s; for the other I took control of the existing driver via a PWM signal.

The tailcap of the light needs to be modified as well. The new setup needs to have a spring that keeps the negative end of the battery connected to the tube during small translational motion of the cell. This turned out to be simple to implement in both lights I tried. I removed the PCB with the clicky switch, an d replaced it with a large diameter spring to connect the cell to the tube. The large opening in the spring allows for a small 3d-printed cylinder to sit inside of it. This cylinder connects the switch boot to the back of the battery so that pushing on the tailcap moves the battery forward. It took a few iterations to adjust the length of the cylinder to work well.

Disadvantages
Cell-Slide Switching has a significant disadvantage that the spring forces need a lot of tweaking for it to work well (the front spring needs to be stiffer than the rear; not too stiff or the switch’s tactile feedback is drowned out; not too weak or impacts will allow the battery momentum to click the switch). The length of the battery also is critical for the proper switch operation. For this reason, I don’t imagine that this concept could ever be used on a commercial product since the use of different batteries would require adjustments or new plastic cylinders.

Conclusion
For my own purposes, I am able to put in the time to make the tweaks necessary to overcome the disadvantages and make it work well. The best part about this concept is that I am able to implement it on many lights that I previously wouldn’t use or buy because I dislike clicky interfaces, but now all of the normal tailcap-switch lights are opened up to using a MELD user interface. I invite others to try this concept for themselves, and I would also offer chips with MELDsc for use with this if anyone is interested in that user interface.

Implementation pictures
G42: small pcb prepared for switch mounting:

wires pass through small hole in stock pcb:

switch mounted with superglue:

all parts wired:

click test with intended 18650 cell:

printed cylinder:

located inside tailcap spring:

SP01: switch mounted:

driver modified with MELDsc chip:

finished spring/switch arrangement:

test before modifying tailcap:

G42 with Cell-Slide Switching completed:

Haven’t read all of it but the pictures are looking great!

Very interesting concept.

Nice ideas :+1:

What a good idea! And I’m sure it can be done commercially as well if you are not restricted to DIY methods.

Very cool. Nice innovation. What is your MELD UI? In the video it looks like a ramping type similar to the emisar D4 UI?

MELD-X driver
some examples:
EC11 MELD update with LASER!
Nitecore Tube clone overhaul with MELD firmware
project EMERALD

Cool :sunglasses:

Instead of battery crush qtc you’ve got battery crush e-switch :smiley:

A very creative design!

It occurs to me that a battery carrier might solve the issue of cell length. The carrier would have a known length which would always operate the switch correctly, and variations in cell length would be taken up by the battery carrier’s internal springs.

The snag is the need for more space in the battery tube for the battery carrier, which would add bulk to the light. It would also make cell changes more awkward, although that could be mitigated by making the light USB chargeable.

That sounds a lot like a piston drive which OP mentioned.

I thought piston drive was a permanent part of the battery tube, rather than a removable battery carrier?

very nice concept, congrats on this !

Yes, you are right but if you read carefully the OP was trying for a solution that didn’t increase the tube diameter.

Ah, OK, I understand now. Thank you :+1:

Great idea!
I guess it works even better with smaller cells like 14500 or so because of their smaller masses. But I don’t know if there are switches and springs of proper size.

Very interesting idea. How is friction?

DQG tail would solve the cell length issue. One could screw the tail thread as far as needed to get contact but no switch pressure.
I guess some feedback mechanism would be needed (f.e. the light is screwed down properly as soon as there’s electrical contact - and it blinks to signal it).

I wonder…maybe something like on those 2-mode 10180 twisties would work well with smaller lights? No explicit switch but a spring that has 2 different contact points; when there’s little pressure on it the contact is at the perimeter but when you press it - the centre touches a different PCB pad.

I may not have enough spring force to work with 18650 but 10180? Likely. 10440? Maybe.

Great thinking here tterev3.

I’ve thought a lot about how to achieve the same goals. Didn’t consider this before.

I have had ideas though. They would work I believe, but trade off those few mm of diameter for a special cell design (like the Fenix did with the LC40) with + and - contacts in the front, along with a “-” at the rear in the normal position. The driver would be designed to take main drive current through the front two concentric contacts, bypassing the tube altogether. The tube can be isolated from the main power delivery circuit, and re purposed as a switching signal.

Strictly speaking this does add some thickness but very little. That’s because a tight-fitting cell is OK when it doesn’t move but is not here - so the tube ID must be slightly larger. But that’s way less than any of the signal routing approaches that I’ve seen implemented so far.

Actually this could be done with larger cells as well - just take a regular strong spring and solder a contact point to the top of the spring. Make it stick to the inside.
Though I wonder whether the feel of such switch would be good…

CRX has built a light like this