aboutsummaryrefslogtreecommitdiff
path: root/spaghetti-monster/anduril/ramp-mode.c (unfollow)
Commit message (Collapse)AuthorFilesLines
2023-11-02reorganized project files (part 1)Selene ToyKeeper1-741/+0
(just moved files, didn't change the contents yet, and nothing will work without updating #includes and build scripts and stuff)
2023-10-23fixed bug: smooth ramp from turbo down to ceiling caused flickeringSelene ToyKeeper1-7/+19
when smooth_steps was enabled
2023-10-06smooth steps: fixed a few corner casesSelene ToyKeeper1-1/+5
- Off -> 1H - Off -> 2H and release - Off -> 2C - Off -> 3C or more - Ramp -> 2C (in smooth ramp mode) ... also reduced ROM size a bit. Now it does smooth animations for 2C turbo, regardless of the current ramp mode. Before, in smooth ramp mode, 2C turbo did a hard step. Hard steps were also eliminated for 1H from Off, momentary turbo from Off, regular turbo from Off, and anything longer than 2C from Off.
2023-09-08fixed soft start animation when using smooth ramp on turboSelene ToyKeeper1-1/+2
(it would jump up the last few levels before, instead of being smooth)
2023-08-26added "smooth steps" a.k.a. "soft start", to make brightness steps smootherSelene ToyKeeper1-10/+34
(also made ramp extras config menu count its own steps)
2023-08-24added channel mode per strobe mode, and made FSM channel mode more flexible,Selene ToyKeeper1-4/+8
and fixed issue in tactical mode where strobes wouldn't stop on button release
2023-06-29Removed references to Harry Potter,Selene ToyKeeper1-22/+22
because J.K. Rowling is the figurehead of a hate group and I don't want to condone that in any way. I liked a 2-word phrase she wrote once, "mischief managed", but that was decades ago... and now she is the face of a transphobic movement known as TERFs. She turned out to be a pretty terrible person who uses her massive wealth and influence to spread hate and oppress people. To be clear: Trans rights are human rights. ... and anyone who has a problem with that has no place in this project. Patch suggested by SiteRelEnby, and TBH it's embarrassing that I didn't remove the phrase sooner. It seemed fun and innocent in 2017 when this project started, but ... things changed. https://github.com/SiteRelEnby/anduril2/commit/a1cee423b4e0e16909a90d5c3e6a7b70df30d755
2023-04-19added stepped tint rampingSelene ToyKeeper1-6/+2
patch adapted from SammysHP: https://github.com/SammysHP/flashlight-firmware/commit/0df174a6f6cc2676703f55a9b86eb3d9b3896b33
2023-04-17made "Ramp 3H" do momentary turbo if current channel mode has no argsSelene ToyKeeper1-4/+23
2023-04-16reduced ROM by ~600 bytes by moving all eeprom config values to a "cfg" structSelene ToyKeeper1-38/+39
(this also made some parts of the code cleaner)
2023-04-15adapted smooth-sunset patch from SammysHPSelene ToyKeeper1-27/+22
https://github.com/SammysHP/flashlight-firmware/tree/smooth-sunset https://github.com/SammysHP/flashlight-firmware/compare/anduril2...smooth-sunset (also shortened file headers, as long as I was touching those files)
2023-04-13refactor progress checkpoint ... got Sofirn LT1S Pro and Emisar D4v2 workingSelene ToyKeeper1-9/+46
with the new channel mode system ... but there's a lot more left to do
2021-12-08fixed Ramp 3H with Anduril 2 style turboSelene ToyKeeper1-0/+5
(it was going to ceiling instead of full power) (also had to disable battcheck calibration on some large builds to make room)
2021-11-03reset tint while changing tint ramp styleSelene ToyKeeper1-1/+5
2021-11-03added runtime config to choose tint-ramping or tint-toggleSelene ToyKeeper1-2/+5
(Off->9H option 1, 0=smooth, 1=toggle)
2021-08-31reduced length of auto-reverse timing window from ~1000 ms to ~660ms, ↵Selene ToyKeeper1-1/+1
because it was too fast
2021-08-31made 2C ceiling/turbo behavior configurable in Simple UISelene ToyKeeper1-38/+55
also made it possible to block turbo in Advanced UI (each one has a 2C style: 0 = no turbo, only ceiling 1 = Anduril 1 style, direct to turbo 2 = Anduril 2 style, ceiling unless already there, then turbo )
2021-08-31added third 2C style: 0 = no turbo (but it's still available as momentary)Selene ToyKeeper1-2/+6
(also, adding this reduced the ROM size somehow)
2021-08-31added runtime option to choose Anduril 1 or Anduril 2 double-click turbo styleSelene ToyKeeper1-8/+24
(2C while on goes to full-power turbo (A1) or ceiling (A2)) also renamed _OPTION defs to _CONFIG for consistency
2021-08-31added runtime option to select whether to ramp up after hold-from-off ↵Selene ToyKeeper1-9/+21
(default) or stay at floor
2021-08-31added runtime config option for smooth ramp speedSelene ToyKeeper1-2/+24
2021-08-23moved jump start into FSM so it'll be more universal and the app won't need ↵Selene ToyKeeper1-8/+2
special clauses (also adjusted KR4 jump start levels a bit)
2021-08-23made jump start level configurable at runtime, and made it activate in more ↵Selene ToyKeeper1-0/+24
places
2021-08-12document the actual maximum for manual memory timer (~140 minutes, not 255)Selene ToyKeeper1-0/+3
2021-05-23added missing ifdefs for compiling without USE_SIMPLE_UISelene ToyKeeper1-1/+9
(compiles now, but isn't tested on hardware)
2021-05-07made manual memory remember tint too, not just brightnessSelene ToyKeeper1-0/+3
2020-10-16added ramp 3H -> momentary turboSelene ToyKeeper1-0/+14
2020-09-24documentation improvements:Selene ToyKeeper1-2/+4
- moved MODELS to BRANDS - added MODELS file generated from "make models" - added version check info to manual - clarified how memory options work - fixed docs for auto-lock feature - small code comment clarifications
2020-09-24fixed bug: zero clicks in ceiling config set ceiling to nonsense valueSelene ToyKeeper1-3/+3
2020-09-24changed menu style and moved menus from "click" events to "hold" eventsSelene ToyKeeper1-26/+23
(also reduced ROM size by 126 bytes)
2020-09-18clearer comments about "Ramp 2C" behaviors with each build optionSelene ToyKeeper1-6/+7
2020-09-18added USE_2C_MAX_TURBO option from Tom ESelene ToyKeeper1-4/+12
Makes "Ramp 2C" behave like Anduril1 instead of Anduril2. So it goes to full power turbo in the advanced UI, or ceiling in the simple UI. Otherwise, default Anduril2 behavior is for "Ramp 2C" to go to/from the ceiling level... unless already ramped up to that level in advanced mode, in which case it'll go to full turbo.
2020-09-15added hybrid memory option (a.k.a. manual memory timer)Selene ToyKeeper1-1/+26
Hybrid memory is a combination of automatic and manual, depending on how long the light was off. If it was a short time, automatic mem is used. For a longer time, it resets to the manual memory level. Also tweaked some of the larger build targets again to make sure they fit in ROM.
2020-09-14fixed bug: ramp 2H at floor went up instead of staying at floorSelene ToyKeeper1-3/+3
(thanks to SammysHP for suggesting this fix)
2020-08-31removed unnecessary blink_once calls, made blink_once a bit less brightSelene ToyKeeper1-1/+0
2020-08-24changed "Off 2H" to "ceil or turbo, based on simple UI active", andSelene ToyKeeper1-5/+9
changed "Full UI Ramp 2C" to "ceil or turbo, based on whether already ramped up or not"
2020-08-18shuffled functions around to make 4C lockout and 3C battcheck againSelene ToyKeeper1-17/+30
- moved all battcheck to 3C - moved all lockout to 4C - moved all unlock to 4C/4H - moved manual mem from 4C/4H to 10C/10H - moved auto-lock from 5C/5H to 10C/10H - added ramp 4C -> lockout - added ramp 5C -> momentary - added lockout 5C -> ramp ceiling
2020-08-06many button remappings:Selene ToyKeeper1-2/+10
- swapped lockout and battcheck - 3C/3H to exit lockout instead of 4C/4H - 4C/4H for manual mem instead of 5C/5H - 5C from ramp to momentary - 5H for sunset timer instead of 4H Also added tint ramping info to the manual.
2020-08-05added support for 1-step ramps in stepped ramp modeSelene ToyKeeper1-4/+11
(uses the midpoint between floor and ceiling)
2020-08-05made a couple actions use blink_once() instead of blip(), for better consistencySelene ToyKeeper1-2/+2
2020-08-05reduced rom 34 bytes by merging ramp-up code with ramp-down codeSelene ToyKeeper1-74/+10
(also removed USE_REVERSING option)
2020-07-31made simple UI's ramp configurable, and fixed bug where it wouldn't remember ↵Selene ToyKeeper1-5/+10
if simple UI was enabled
2020-07-30fixed bug: ramp mode acted strange if ramp level was changed after turning ↵Selene ToyKeeper1-0/+13
on sunset timer (it kept trying to adjust based on the original brightness, instead of the new brightness)
2020-07-30replaced "goodnight / sunset mode" with sunset timer, which works in both ↵Selene ToyKeeper1-2/+35
candle mode and regular ramp mode (not finished, but wanted to check in the code before continuing) (still needs the button mappings adjusted to avoid collision with 3C for change-ramp-style)
2020-07-22renamed ramping.* -> ramp-mode.*Selene ToyKeeper1-4/+4
2020-07-22more progress on refactoring Anduril into separate files... nearly done with ↵Selene ToyKeeper1-0/+460
the initial split