lp:~i-dan-3/flashlight-firmware/pwm-strobe

Created by Dan Stahlke and last modified
Get this branch:
bzr branch lp:~i-dan-3/flashlight-firmware/pwm-strobe
Only Dan Stahlke can upload to this branch. If you are Dan Stahlke please log in for upload directions.

Branch merges

Related bugs

Related blueprints

Branch information

Owner:
Dan Stahlke
Project:
Flashlight Firmware Repository
Status:
Development

Recent revisions

238. By Dan Stahlke <dstahlke@psi>

Added accurate 16-bit PWM strobe modes

Disabled by default. Only supported on CPUs having a 16-bit PWM, which means only attiny1634, which means only Emisar D4v2 and D4Sv2. I don't have a D4Sv2 to test, so currently it's only implemented on D4v2. The relevant functions could probably be directly copied from hwdef-Emisar_D4v2.h to hwdef-Emisar_D4Sv2.h.

Strobe rate can be continuously varied from 1Hz to 500Hz. Theoretically it could run faster, but this is already enough to freeze something that's spinning at 30000 RPM. Uses full brightness (1x7135 plus FET) with a 1:256 duty cycle (party strobe) or 1:4 duty cycle (tactical strobe). Rate adjustment has acceleration, going twice as fast after 1 second and 4x as fast after 2 seconds. It still takes about 10 seconds to traverse the whole range from 1Hz to 500Hz.

With this I was able to freeze my Proxon drill (similar to Dremel) running at 20000 RPM. Unfortunately the flash rate fluctuates by about 0.1%, probably due to the CPU's RC oscillator.

237. By Selene Scriven <email address hidden>

added a compile flag to fix compatibility with GCC 7/8/9's new semantics for "inline"
(should fix builds on newer compilers, I think)

236. By Selene Scriven <email address hidden>

added arbitrary ramp shape powers to level_calc.py, to more easily hit specific values

235. By Selene Scriven <email address hidden>

fixed attiny13 builds

234. By Selene Scriven <email address hidden>

merged fsm to trunk... lots of updates:
+ attiny1634 support
+ Emisar D4v2 support
+ Mateminco MF01S / MT18 support
+ Fireflies E01 and E07v2 support
+ RGB aux LED support
+ added factory reset function
+ added manual / automatic memory toggle
+ added 2-level brightness during lockout
+ added Fireflies UI
+ made momentary mode also support strobe-group modes
* thermal regulation rewritten, behaves mostly better now
* strobe modes auto-reverse their ramp now
* muggle mode fixes
* UI diagram and manual updated
* button timing adjusted, and compile-time options added for it
* general refactoring

233. By Selene Scriven <email address hidden>

Added setup info for Fedora.

232. By Selene Scriven <email address hidden>

added GXB172 firmware from loneoceans (tiny841 boost driver)

231. By Selene Scriven <email address hidden>

merged updates from fsm branch, because it has been way too long since the last time

230. By Selene Scriven <email address hidden>

updated NarsilM to 1.3, based on Tom E's NarsilMulti v1.3 2019-04-25.zip

229. By Selene Scriven <email address hidden>

added link to HQ ProgKey, since it's increasingly important for newer drivers

Branch metadata

Branch format:
Branch format 7
Repository format:
Bazaar repository format 2a (needs bzr 1.16 or later)
Stacked on:
lp:flashlight-firmware
This branch contains Public information 
Everyone can see this information.

Subscribers