To make the output as stable as possible no matter what type of 7135 chips (or how many) are used, moon mode has slow PWM. I’ll have to measure to be sure, but moon (0.1%) is either 1 kHz or 2 kHz. This also means it’ll be up around 0.8 lumens instead of the usual 0.2 lm, but that’s as close as I could get it with this hardware.
The low (1%) mode runs at 8 kHz (to make it more stable), but this is still 2X the speed of the older nanjg drivers.
Everything else runs at 16 kHz, about 4X as fast as the older nanjg drivers.
I had LVP set to 2.8V initially, but during tests I couldn’t get it to trigger before the cell’s built-in protection went off. So, it’s now set to step down when the cell gets under 3.0V. If it stays that low even on the lowest mode, it’ll eventually shut off the emitter and go into a low-power standby mode.
The problem is that new driver hardware was beyond the scope and budget of this project, and Convoy doesn’t have a lot of resources to develop it or get the hardware produced right now. So, the driver is the same hardware as before, but with new firmware to improve it as much as possible. The nanjg drivers are actually pretty nice, and inexpensive, so they work pretty well.
Maybe in the future sometime Convoy can get new driver hardware, but not yet.
Also, what pilotdog68 said earlier.
The reason for the minimum of 6/255 (or 7, or 8, or 3, or …) is because the 7135 chips take a few “frames” to open, like a slow-moving door. They’re not as fast as a FET. This is exactly the reason why moon mode runs at a slower speed.
The minimum usable pulse duration varies with the number and type of 7135 chips, the type of LED, the battery voltage and brand, etc, and those factors are all variable for this project. It could be anywhere from 2 to 16 7135 chips, several types of LED, a variety of hosts, and so on. So the most hardware-sensitive aspects were optimized for stability, which means slower PWM on moon.
As usual, the sources are available for anyone who wants to modify it.
http://bazaar.launchpad.net/~toykeeper/flashlight-firmware/convoy/files/head:/ToyKeeper/bistro/mini/