Circuits, sawdust, and everything in-between

15VP v4.8.1 Firmware (Flashlight)

This documentation is intended to cover the advanced functionality of the 15VP v4.8 flashlight driver. In normal use you shouldn’t need any of it, but it’s fun to have there should you want to customize things.

Physical Layout

Quick Reference Guide

Print out this double-sided PDF, cut out one of the guides, roll it around a AA battery, and insert it into the battery tube. Now anytime you want to customize your driver, you have the instructions readily available!

Special Functions

ClicksLight ShowFunctionality
10-15NoneFlash out voltage and current
50+Quick double-flashEnter programming menu
75+Low-High rampingFlash out firmware version
100+Furious flashingFactory reset

Voltage and Current Readout

Takes a reading at the current output level (this is important to note because battery voltage sags as LED current increases). Then flashes out the battery millivoltage followed by the LED current (in milliamps).

So if you tap 14x and keep the light on, the circuit might display:

1 flash – pause – 3 flashes – pause – 8 flashes – pause – quick flash (1.380 V)

– pause –

1 flash – pause – 5 flashes – pause – quick flash (150 mA)

Programming Menu

The programming menu is self-driven. If you enter it by accident, just let it finish (without turning the driver off) and it’ll exit all on its own. 

! Only turn the driver off in the programming menu if you want to change a setting. !

Turn the driver off while on a certain menu item to change that setting. When you turn the driver back on, it will re-enter the programming menu at that setting, and display the new value you’ve set.

SettingLight ShowFunctionality
# of outputs1 blinkSet number of outputs from 1-4.
Output 1 Brightness2 blinksSelect brightness from 24 values.
Output 2 Brightness3 blinksSame as above. Only appears if # outputs > 1.
Output 3 Brightness4 blinksOnly appears if # outputs > 2.
Output 4 Brightness5 blinksOnly appears if # outputs > 3.
Mode Memory6 blinksStyle of mode memory (none, classic, hybrid)
Debounce7 blinksIgnore accidental clicks (off, short, med, long)
Stepdown8 blinksStay in regulation (off, on)
Voltage Monitoring9 blinksMonitor battery voltage (off, on)

Number of outputs
The number of outputs the driver will cycle through as you turn it off and on. Most production drivers have 3: low, medium, high.

For each output, choose the brightness from a ramp of 24 possible values. Turn the driver off and on to start ramping. Turn it off and on when you reach the desired output to save it. There is a double-blink at the top of the ramp to indicate when you’ve reached the highest setting, then it rolls back around to the bottom. Ramps twice. If you don’t turn it off at all during those two ramps, no changes are made to brightness.

Mode Memory
Mode memory determines which output slot the driver will power up at during normal use. There are 3 possible values for mode memory. The driver will blink the following number of times to show you which style is currently set:

# BlinksMemory StyleDescription
1NoneAlways powers up at Output Slot #1
2ClassicPowers up at last saved Output, cycles upwards to next slot.
(e.g. 2 -> 3 -> 4 -> 1 -> 2 ->3 -> 4 -> 1)
3HybridPowers up at last saved Output but next cycle starts at 1.
(e.g. 2 -> 1 -> 2 -> 3 -> 4 -> 1 -> 2 -> 3)

Debounce determines whether the driver will ignore a tiny power outage, such as banging the host on a table and rattling the battery. Can be used to customize the “feel” of a mechanical switch to ensure only purposeful mode changes actually occur, while ignoring accidental ones.

# BlinksDebounceDescription
1OffAll power outages count as a click.
2ShortTiny power outages ignored (couple milliseconds)
3MediumBrief power outages ignored (hundred or so milliseconds)
4LongLonger power outages ignored (few hundred milliseconds)

Stepdown determines whether the driver will monitor LED current and attempt to stay in regulation (flat output). Maximizes runtime by intelligently decreasing output to prevent strain on the battery and LED.

# BlinksSettingDescription
1OffDoes not check or stepdown
2OnSteps down 2 output levels every 8 seconds until regulated

Voltage Monitoring
Whether the circuit should monitor battery voltage and notify when it’s getting low. Advance warning of low battery before you set out into the dark.

# BlinksSettingDescription
1OffDo not monitor or notify when battery is low.
2On2 quick blinks every 30s if battery < 0.95V (at current output)

Firmware Version

Flashes out the current version of firmware installed on the driver. Different firmwares may behave differently, so this will help you identify which you have so you can find the appropriate documentation.

Flashes firmware numbers in the following pattern:
MAJOR – pause – MINOR – pause – REVISION

So if you click 75x on firmware version 4.8.1 it’ll display:
4 flashes – pause – 8 flashes – pause – 1 flashes

Factory Reset

Resets the driver to its delivered state. A last-ditch attempt to save a problematic driver, or a quick(ish) way to undo undesired programming changes.

Output Levels

For a white power LED (Nichia 219, Cree XP-L, etc) on firmware version 4.8.1, the 24 output levels in the ramp equal approximately the following LED currents: