aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* merged from upstream fsm branch to get a whole bunch of kernel-level ↵Selene ToyKeeper2019-11-2421-318/+446
|\ | | | | | | improvements
| * added -fwhole-program gcc flag, suggested by Agro. Signficantly reduces ROM ↵Selene ToyKeeper2019-11-221-1/+1
| | | | | | | | size! :)
| * merged tiny fix from irq-refactor branch (fixed spurious wakeup)Selene ToyKeeper2019-11-201-2/+2
| |\
| | * fixed unintentional wakeup right after going to sleepSelene ToyKeeper2019-11-201-2/+2
| | | | | | | | | | | | | | | (by enabling the PCINT slightly sooner, before setting its "handled" flag)
| * | merged irq-refactor branch, which fixes some small but long-standing issues:Selene ToyKeeper2019-11-1916-310/+399
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - fixed occasional short/aborted frames in aux LED sleep animation - fixed rare case of bogus voltage and/or temperature values - fixed issue where nice_delay_ms() didn't work in setup() - fixed theoretical possibility of extra-noisy buttons causing a hang - fixed reboot loop which happened after any crashes - fixed issue where button press in sleep mode could occasionally crash (but the issue may have been created by this branch before being fixed by it) - reduced occasional missed button events while asleep (still seems to happen but not nearly as much) Also does some other things: - cleans up the ADC code significantly - cleans up the WDT code - adds a voltage stabilizer/lowpass option (enabled on t1634 builds) - greatly reduces time spent per interrupt, which might make a future PWM-DSM technique possible - moves most interrupt-handling logic to a non-critical code path, deferring that code until timing doesn't matter as much - sped up button state measurements - very slightly reduces power used in sleep mode
| | * Mateminco MF01S can fit muggle mode again, barelySelene ToyKeeper2019-11-191-3/+3
| | |
| | * reduced build size by a few bytesSelene ToyKeeper2019-11-192-3/+3
| | |
| | * the Q8 can just barely fit muggle mode againSelene ToyKeeper2019-11-191-3/+3
| | |
| | * enabled prevent_reboot_loop() on all builds, to reduce the impact of any ↵Selene ToyKeeper2019-11-191-5/+7
| | | | | | | | | | | | | | | | | | | | | potential crashes (even though I just fixed the only known bug which could trigger an unintentional reboot)
| | * fixed ADC cycles running 2X as fast as intendedSelene ToyKeeper2019-11-191-8/+8
| | |
| | * cleaned up WDT code a bit, reduced total size,Selene ToyKeeper2019-11-192-29/+25
| | | | | | | | | | | | | | | | | | fixed bug where ticks_since_last could have the wrong value sometimes, reduced power use in sleep mode very slightly by skipping button-handling code while asleep
| | * fixed issue where button-press-during-sleep could occasionally cause a rebootSelene ToyKeeper2019-11-181-3/+7
| | | | | | | | | | | | | | | (by turning off PCINT when the light is awake)
| | * turned off muggle mode on Q8 and MF01S, to make builds small enough againSelene ToyKeeper2019-11-142-0/+11
| | |
| | * oops, put voltage lowpass on the wrong D4SSelene ToyKeeper2019-11-142-3/+4
| | |
| | * added a lowpass filter for battery voltage measurementsSelene ToyKeeper2019-11-143-37/+29
| | | | | | | | | | | | | | | (but only on attiny1634 devices, since it costs a bit of space and isn't strictly necessary)
| | * fixed factory reset (wasn't running interrupt logic since it's deferred now)Selene ToyKeeper2019-11-143-12/+11
| | | | | | | | | | | | | | | | | | (also fixed issue where nice_delay_ms() was aborted during setup()) (and adjusted the timing to make factory reset similar to the speed it was before this change)
| | * fixed ADC code; measures and behaves correctly now, and is easier to read...Selene ToyKeeper2019-11-143-41/+41
| | | | | | | | | | | | | | | | | | ... but factory reset's auto-calibrate still doesn't get the right values for some reason (manual calibration works, but not auto)
| | * started refactoring ADC code to split voltage and temperature into their own ↵Selene ToyKeeper2019-11-142-212/+226
| | | | | | | | | | | | functions
| | * refactored how interrupts work...Selene ToyKeeper2019-11-1410-38/+108
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | set a flag and return immediately, then handle the actual logic later during a less-critical code path Enables smarter responses to standby wakeups. Seems to fix missed button presses during standby, and most of the too-fast sleep ticks. Also eliminated waits from button state measurement, so it can happen easier during standby. (also eliminates the chance of an infinite loop on extra-noisy hardware) Also might improve timing-sensitive interrupts like attiny85 PWM channel 4, or a PWM-DSM hybrid technique I'd like to try. BUT this change also appears to break the thermal sensor, so that needs to be fixed.
| * | added SOS mode to the BLF LT1 Lantern build, because people wanted itSelene ToyKeeper2019-11-182-7/+44
| |/
| * fixed some compile issues related to delay_4ms()Selene ToyKeeper2019-11-134-2/+4
| |
* | merged changes from fsm branch, including version check and stuck-button safetySelene ToyKeeper2019-10-1518-58/+596
|\|
| * merged Emisar D4S V2 support branchSelene ToyKeeper2019-10-063-0/+197
| |\
| | * added Emisar D4S V2 supportSelene ToyKeeper2019-08-293-0/+197
| | |
| | * merged updates from fsm branchSelene ToyKeeper2019-08-294-2/+18
| | |\
| * | | made lantern's muggle mode brighter (matches default stepped ramp level 4 of 5)Selene ToyKeeper2019-10-021-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | and made the floor slightly lower (almost as low as level 1 of 5) because this light doesn't run hot enough for the previous limit to make sense (was roughly step 2.9 of 5)
| * | | added a default version.h for people who don't use the build scriptSelene ToyKeeper2019-10-021-0/+4
| | | |
| * | | after safety ramp-down, if the button remains stuck, lock the lightSelene ToyKeeper2019-09-281-1/+9
| | | |
| * | | added a version check function on 15+ clicks from off, added a safety ↵Selene ToyKeeper2019-09-244-0/+52
| | | | | | | | | | | | | | | | | | | | | | | | | | | | ramp-down if button is held too long at ceiling (also removed muggle mode from a couple build targets because it doesn't fit, not enough ROM)
| * | | sped up blink_digit() a little bit, because it was annoyingly slowSelene ToyKeeper2019-09-241-3/+4
| | | |
| * | | made the maximum number of clicks 15 instead of 14Selene ToyKeeper2019-09-241-1/+1
| | | |
| * | | merged updates from trunk, including gcc7/8/9 compatibilitySelene ToyKeeper2019-09-183-5/+20
| |\ \ \
| | * | | added a compile flag to fix compatibility with GCC 7/8/9's new semantics for ↵Selene ToyKeeper2019-09-181-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | "inline" (should fix builds on newer compilers, I think)
| | * | | added arbitrary ramp shape powers to level_calc.py, to more easily hit ↵Selene ToyKeeper2019-08-281-3/+11
| | | | | | | | | | | | | | | | | | | | specific values
| | * | | fixed attiny13 buildsSelene ToyKeeper2019-08-261-1/+3
| | |\ \ \ | | | | |/ | | | |/|
| | * | | merged fsm to trunk... lots of updates:Selene ToyKeeper2019-08-1142-739/+2366
| | |\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | + 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
| | * | | | Added setup info for Fedora.Selene ToyKeeper2019-06-151-0/+6
| | | | | |
| | * | | | merged updates from fsm branch, because it has been way too long since the ↵Selene ToyKeeper2019-05-1820-285/+3150
| | |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | last time
| | * | | | | added link to HQ ProgKey, since it's increasingly important for newer driversSelene ToyKeeper2019-05-181-0/+1
| | | | | | |
| * | | | | | merged MF01-Mini / MT07 support branchSelene ToyKeeper2019-09-152-0/+106
| |\ \ \ \ \ \
| | * | | | | | just cleaning up some commentsSelene ToyKeeper2019-08-262-8/+2
| | | | | | | |
| | * | | | | | merged from upstream fsm branch to get factory reset function and other updatesSelene ToyKeeper2019-07-319-348/+849
| | |\ \ \ \ \ \
| | * | | | | | | mf01-mini: enable aux LED low modeSelene ToyKeeper2019-07-311-3/+3
| | | | | | | | |
| | * | | | | | | added support for Mateminco MF01-MiniSelene ToyKeeper2019-06-282-0/+112
| | | | | | | | |
| | * | | | | | | merged from fsm branch for updatesSelene ToyKeeper2019-06-038-116/+467
| | |\ \ \ \ \ \ \
| | * \ \ \ \ \ \ \ merged from fsm branch to get a bunch of new updatesSelene ToyKeeper2019-05-2215-155/+266
| | |\ \ \ \ \ \ \ \
| * | | | | | | | | | added some ideas for stuff to do, updated the UI diagram to show the stepped ↵Selene ToyKeeper2019-09-153-49/+195
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ramp mode differently
| * | | | | | | | | | level_calc.py: note the highest level for each channel before the next ↵Selene ToyKeeper2019-09-151-0/+10
| | |_|_|_|_|_|_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | channel starts, so it'll be easier to identify the channel transition points
* | | | | | | | | | slowed down rainbow RGB mode, added a ramp-down on stuck-button for safety ↵Selene ToyKeeper2019-09-071-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | purposes
* | | | | | | | | | added button LED support to D4v2Selene ToyKeeper2019-09-066-7/+72
|/ / / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (in a way which doesn't break backward compatibility... ... but it really needs some refactoring to reduce code duplication)