aboutsummaryrefslogtreecommitdiff
path: root/hwdef-emisar-d4k-3ch.c (unfollow)
Commit message (Collapse)AuthorFilesLines
2023-11-02reorganized project files (part 1)Selene ToyKeeper1-362/+0
(just moved files, didn't change the contents yet, and nothing will work without updating #includes and build scripts and stuff)
2023-10-29applied new delay factor to other DSM builds, and some new DSM_* definesSelene ToyKeeper1-2/+10
2023-10-27converted noctigon-m44 to use PWM+DSM instead of PWM+PFM (dynamic PWM)Selene ToyKeeper1-0/+1
(this gives better, smoother low modes and reduced flicker)
2023-10-26minor comment cleanupSelene ToyKeeper1-0/+1
2023-10-13rewrote emisar-d4k-3ch to use delta-sigma modulation (PWM + DSM),Selene ToyKeeper1-148/+131
which gives much better resolution, especially for the 8-bit channel. Also... - set_channel_mode() aborts when going from/to the same channel, to avoid unnecessary flicker - hsv2rgb() uses 16-bit R/G/B and V now - changed default channel to All - reduced default channel modes to just A, B, C, and All - smooth ramp floor defaults to 1/150 - raised level when aux LEDs turn on high during use (for better compatibility with red main LEDs)
2023-08-25emisar-d4k-3ch auto-tint mode: fixed issue with LEDs turning off at moon,Selene ToyKeeper1-5/+12
and changed algorithm to two simple crossfades instead of one funky and probably incorrect crossfade with an extra triangle in the middle (but it may be best to convert to sine-shaped crossfades instead of linear) (I can't really test this one very will since I don't have D4K hardware with red+warm+cool LEDs, so I'm guessing based on my unbalanced RGB model with the LEDs in the wrong order)
2023-08-25started splitting set_level(0) into its own set_level_zero(), andSelene ToyKeeper1-101/+31
made USE_AUX_RGB_LEDS_WHILE_ON work more like the old indicator LEDs, where it gets set automatically with set_level() Using set_level_zero() reduces space used by channel modes, and simplifies code for each mode's set_level_*() functions. I measured about 220 bytes less in the emisar-d4k-3ch build this way, while also reducing the chance of bugs.
2023-08-25made custom 3H handler system work, added circular HSV ramping,Selene ToyKeeper1-11/+22
fixed some minor issues with LEDs not getting turned off in corner cases (strobe on channel 1 -> strobe on channel 2, 1 might not get turned off)
2023-08-24added emisar-d4k-3ch buildSelene ToyKeeper1-0/+421