Yeah, it’s helpful to add bits without slowing the pulse speed. However, there are still limitations there, and the limitations matter at moon levels.
With a single 7135 chip, the steps are typically about 0.6 lm apart. When using 10 bits instead of 8, it drops to 0.15 lm… but that’s still pretty coarse for really low levels.
The other limitation is that there is a lower bound to the pulse length. It depends quite a bit on the individual hardware, and varies a lot from one item to another, but moon doesn’t work at all if the pulses aren’t long enough for the 7135 chip to turn on and the LEDs to light up.
If I run things at 16 kHz, I typically have to set the PWM level to about 3 to 10 in order to get any light to come out. The exact number is unpredictable because it varies a lot even between identical lights. NarsilM worked around this by letting the user set the PWM level for moon directly. Anduril works around it by slowing the pulses down to reduce sensitivity to small changes in hardware. Adding extra digital resolution and decreasing MCU power would help somewhat, but it would still need a way to compensate for random variations in hardware response curves.
If possible, it’s much more effective to use a lower power channel. Regulating a big power channel to just 0.1% of its capacity using digital techniques is like trying to fill a thimble with a fire hose. It would be a lot easier to just use an eye dropper.