aboutsummaryrefslogtreecommitdiff
path: root/spaghetti-monster
diff options
context:
space:
mode:
authorSelene ToyKeeper2021-05-07 17:04:27 -0600
committerSelene ToyKeeper2021-05-07 17:04:27 -0600
commitb32c2d8abc050ff404e824051158384eeb6ec437 (patch)
tree4b33cbba89c0baa128fffe4f9a834c50de7404de /spaghetti-monster
parentaux LED config cleaning... (diff)
downloadanduril-b32c2d8abc050ff404e824051158384eeb6ec437.tar.gz
anduril-b32c2d8abc050ff404e824051158384eeb6ec437.tar.bz2
anduril-b32c2d8abc050ff404e824051158384eeb6ec437.zip
made manual memory remember tint too, not just brightness
Diffstat (limited to 'spaghetti-monster')
-rw-r--r--spaghetti-monster/anduril/load-save-config-fsm.h13
-rw-r--r--spaghetti-monster/anduril/load-save-config.c26
-rw-r--r--spaghetti-monster/anduril/off-mode.c4
-rw-r--r--spaghetti-monster/anduril/ramp-mode.c3
-rw-r--r--spaghetti-monster/anduril/tint-ramping.h4
5 files changed, 33 insertions, 17 deletions
diff --git a/spaghetti-monster/anduril/load-save-config-fsm.h b/spaghetti-monster/anduril/load-save-config-fsm.h
index 885fb72..9d3dd86 100644
--- a/spaghetti-monster/anduril/load-save-config-fsm.h
+++ b/spaghetti-monster/anduril/load-save-config-fsm.h
@@ -32,13 +32,16 @@ typedef enum {
ramp_discrete_steps_e,
#endif
#ifdef USE_MANUAL_MEMORY
- manual_memory_e,
- #ifdef USE_MANUAL_MEMORY_TIMER
- manual_memory_timer_e,
- #endif
+ manual_memory_e,
+ #ifdef USE_MANUAL_MEMORY_TIMER
+ manual_memory_timer_e,
+ #endif
+ #ifdef USE_TINT_RAMPING
+ manual_memory_tint_e,
+ #endif
#endif
#ifdef USE_TINT_RAMPING
- tint_e,
+ tint_e,
#endif
#ifdef USE_STROBE_STATE
strobe_type_e,
diff --git a/spaghetti-monster/anduril/load-save-config.c b/spaghetti-monster/anduril/load-save-config.c
index 2880c6d..3823521 100644
--- a/spaghetti-monster/anduril/load-save-config.c
+++ b/spaghetti-monster/anduril/load-save-config.c
@@ -34,13 +34,16 @@ void load_config() {
ramp_stepss[1] = eeprom[ramp_discrete_steps_e];
#endif
#ifdef USE_MANUAL_MEMORY
- manual_memory = eeprom[manual_memory_e];
- #ifdef USE_MANUAL_MEMORY_TIMER
- manual_memory_timer = eeprom[manual_memory_timer_e];
- #endif
+ manual_memory = eeprom[manual_memory_e];
+ #ifdef USE_MANUAL_MEMORY_TIMER
+ manual_memory_timer = eeprom[manual_memory_timer_e];
+ #endif
+ #ifdef USE_TINT_RAMPING
+ manual_memory_tint = eeprom[manual_memory_tint_e];
+ #endif
#endif
#ifdef USE_TINT_RAMPING
- tint = eeprom[tint_e];
+ tint = eeprom[tint_e];
#endif
#if defined(USE_PARTY_STROBE_MODE) || defined(USE_TACTICAL_STROBE_MODE)
strobe_type = eeprom[strobe_type_e]; // TODO: move this to eeprom_wl?
@@ -94,13 +97,16 @@ void save_config() {
eeprom[ramp_discrete_steps_e] = ramp_stepss[1];
#endif
#ifdef USE_MANUAL_MEMORY
- eeprom[manual_memory_e] = manual_memory;
- #ifdef USE_MANUAL_MEMORY_TIMER
- eeprom[manual_memory_timer_e] = manual_memory_timer;
- #endif
+ eeprom[manual_memory_e] = manual_memory;
+ #ifdef USE_MANUAL_MEMORY_TIMER
+ eeprom[manual_memory_timer_e] = manual_memory_timer;
+ #endif
+ #ifdef USE_TINT_RAMPING
+ eeprom[manual_memory_tint_e] = manual_memory_tint;
+ #endif
#endif
#ifdef USE_TINT_RAMPING
- eeprom[tint_e] = tint;
+ eeprom[tint_e] = tint;
#endif
#if defined(USE_PARTY_STROBE_MODE) || defined(USE_TACTICAL_STROBE_MODE)
eeprom[strobe_type_e] = strobe_type; // TODO: move this to eeprom_wl?
diff --git a/spaghetti-monster/anduril/off-mode.c b/spaghetti-monster/anduril/off-mode.c
index e37f08d..094cca8 100644
--- a/spaghetti-monster/anduril/off-mode.c
+++ b/spaghetti-monster/anduril/off-mode.c
@@ -133,8 +133,8 @@ uint8_t off_state(Event event, uint16_t arg) {
&& (off_time >= (manual_memory_timer * SLEEP_TICKS_PER_MINUTE))
#endif
) {
- #if defined(USE_MANUAL_MEMORY_TIMER_FOR_TINT) && defined(USE_TINT_RAMPING) && defined(TINT_RAMP_TOGGLE_ONLY)
- tint = 0;
+ #ifdef USE_TINT_RAMPING
+ tint = manual_memory_tint;
#endif
set_level(nearest_level(manual_memory));
} else
diff --git a/spaghetti-monster/anduril/ramp-mode.c b/spaghetti-monster/anduril/ramp-mode.c
index 9d6eba9..b0a86a0 100644
--- a/spaghetti-monster/anduril/ramp-mode.c
+++ b/spaghetti-monster/anduril/ramp-mode.c
@@ -393,6 +393,9 @@ uint8_t steady_state(Event event, uint16_t arg) {
else if (event == EV_10clicks) {
// turn on manual memory and save current brightness
manual_memory = actual_level;
+ #ifdef USE_TINT_RAMPING
+ manual_memory_tint = tint; // remember tint too
+ #endif
save_config();
blink_once();
return MISCHIEF_MANAGED;
diff --git a/spaghetti-monster/anduril/tint-ramping.h b/spaghetti-monster/anduril/tint-ramping.h
index bd86659..e482999 100644
--- a/spaghetti-monster/anduril/tint-ramping.h
+++ b/spaghetti-monster/anduril/tint-ramping.h
@@ -20,6 +20,10 @@
#ifndef TINT_RAMPING_H
#define TINT_RAMPING_H
+#ifdef USE_MANUAL_MEMORY
+uint8_t manual_memory_tint;
+#endif
+
// not actually a mode, more of a fallback under other modes
uint8_t tint_ramping_state(Event event, uint16_t arg);
If you find this content useful please consider a small donation via bitcoin: bitcoin:1mxKyQsHHugqRxPKgwaA7wUwJEGCNthn2?amount=0.001&message=Donation Scraping git contents via cgit is very resource intensive. The continued hosting of these git repositories is entirely financed by your bitcoin contributions. For donations of a least 1 mBTC you include your IP address in the message of your bitcoin donation. This will remove this message in the future for requests from your IP, which will significantly reduce token usage. In any case, any contributions to bitcoin address 1mxKyQsHHugqRxPKgwaA7wUwJEGCNthn2 are very welcome. Thanks in advance for you contribution to a self-sustaining ecosystem.