finges, this might be helpful:
http://toykeeper.net/torches/finges/
I took starry-offtime and tk-otc and did very small modifications to them to do what it sounds like you want:
- Turned off all blinky modes.
- Turned off 3-level offtime (so, it only senses short and long presses, no medium).
This should also reduce the size by enough that you can rebuild them without any special options. I got 812 bytes (69.3) for starry-offtime and 562 bytes (54.9) for tk-otc.
If you need any help calibrating the PWM levels for the FET and 7135, the bin/level_calc.py tool can estimate what those numbers should be according to your specs and lumen measurements. For example, to get six evenly-spaced modes on a FET+1 with XP-L emitter (including moon mode):
> ./bin/level_calc.py
How many total levels do you want? (4) 6
Lowest visible PWM level, for moon mode: (6) 1
How bright is moon mode, in lumens? (0.25) 10
How bright is the highest level, in lumens? (1000) 1300
Use dual PWM? [y/n] (n) y
Second channel, lowest visible PWM level: (6) 4
Second channel, how bright is the lowest mode, in lumens? (0.25) 0.25
Second channel, how bright is maximum, in lumens? (140) 140
1: visually 0.63 (0.25 lm): 0.00/255, 4.00/255
2: visually 2.69 (19.39 lm): 0.00/255, 38.39/255
3: visually 4.74 (106.74 lm): 0.00/255, 195.26/255
4: visually 6.80 (314.48 lm): 33.39/255, 255.00/255
5: visually 8.86 (694.83 lm): 108.28/255, 255.00/255
6: visually 10.91 (1300.00 lm): 255.00/255, 0.00/255
PWM1/FET values: 0,0,0,33,108,255
PWM2/7135 values: 4,38,195,255,255,0
On a non-FET driver, the last mode should be 255 on both channels.
You may also need to calibrate the CAP_SHORT value, depending on how fast your offtime capacitor drains.