aboutsummaryrefslogtreecommitdiff
path: root/spaghetti-monster/ramping-ui
diff options
context:
space:
mode:
authorSelene ToyKeeper2023-11-02 11:05:02 -0600
committerSelene ToyKeeper2023-11-02 11:05:02 -0600
commitffd9f90898699df87bf9cb283aaa724774bd91bd (patch)
treee8b6a33a5814d0b1adc6c630043650dfc19ee959 /spaghetti-monster/ramping-ui
parentadded a "tactical mode" on "Off -> 6C" (diff)
parentslightly longer smooth-off animation, to make on and off feel symmetrical (diff)
downloadanduril-ffd9f90898699df87bf9cb283aaa724774bd91bd.tar.gz
anduril-ffd9f90898699df87bf9cb283aaa724774bd91bd.tar.bz2
anduril-ffd9f90898699df87bf9cb283aaa724774bd91bd.zip
merged multi-channel branch with a major refactor and half a year of updates
Diffstat (limited to '')
-rw-r--r--spaghetti-monster/ramping-ui/ramping-ui.c62
1 files changed, 31 insertions, 31 deletions
diff --git a/spaghetti-monster/ramping-ui/ramping-ui.c b/spaghetti-monster/ramping-ui/ramping-ui.c
index 5eb7d8f..583498a 100644
--- a/spaghetti-monster/ramping-ui/ramping-ui.c
+++ b/spaghetti-monster/ramping-ui/ramping-ui.c
@@ -59,43 +59,43 @@ uint8_t off_state(Event event, uint16_t arg) {
set_level(0);
// sleep while off (lower power use)
go_to_standby = 1;
- return MISCHIEF_MANAGED;
+ return EVENT_HANDLED;
}
// hold (initially): go to lowest level, but allow abort for regular click
else if (event == EV_click1_press) {
set_level(1);
- return MISCHIEF_MANAGED;
+ return EVENT_HANDLED;
}
// 1 click (before timeout): go to memorized level, but allow abort for double click
else if (event == EV_click1_release) {
set_level(memorized_level);
- return MISCHIEF_MANAGED;
+ return EVENT_HANDLED;
}
// 1 click: regular mode
else if (event == EV_1click) {
set_state(steady_state, memorized_level);
- return MISCHIEF_MANAGED;
+ return EVENT_HANDLED;
}
// 2 clicks (initial press): off, to prep for later events
else if (event == EV_click2_press) {
set_level(0);
- return MISCHIEF_MANAGED;
+ return EVENT_HANDLED;
}
// 2 clicks: highest mode
else if (event == EV_2clicks) {
set_state(steady_state, MAX_LEVEL);
- return MISCHIEF_MANAGED;
+ return EVENT_HANDLED;
}
// 3 clicks: strobe mode
else if (event == EV_3clicks) {
set_state(strobe_state, 0);
- return MISCHIEF_MANAGED;
+ return EVENT_HANDLED;
}
#ifdef USE_BATTCHECK
// 4 clicks: battcheck mode
else if (event == EV_4clicks) {
set_state(battcheck_state, 0);
- return MISCHIEF_MANAGED;
+ return EVENT_HANDLED;
}
#endif
// hold: go to lowest level
@@ -104,17 +104,17 @@ uint8_t off_state(Event event, uint16_t arg) {
// give the user time to release at moon level
if (arg >= HOLD_TIMEOUT)
set_state(steady_state, 1);
- return MISCHIEF_MANAGED;
+ return EVENT_HANDLED;
}
// hold, release quickly: go to lowest level
else if (event == EV_click1_hold_release) {
set_state(steady_state, 1);
- return MISCHIEF_MANAGED;
+ return EVENT_HANDLED;
}
// click, hold: go to highest level (for ramping down)
else if (event == EV_click2_hold) {
set_state(steady_state, MAX_LEVEL);
- return MISCHIEF_MANAGED;
+ return EVENT_HANDLED;
}
return EVENT_NOT_HANDLED;
}
@@ -131,12 +131,12 @@ uint8_t steady_state(Event event, uint16_t arg) {
target_level = arg;
#endif
set_level(arg);
- return MISCHIEF_MANAGED;
+ return EVENT_HANDLED;
}
// 1 click: off
else if (event == EV_1click) {
set_state(off_state, 0);
- return MISCHIEF_MANAGED;
+ return EVENT_HANDLED;
}
// 2 clicks: go to/from highest level
else if (event == EV_2clicks) {
@@ -153,12 +153,12 @@ uint8_t steady_state(Event event, uint16_t arg) {
#endif
set_level(memorized_level);
}
- return MISCHIEF_MANAGED;
+ return EVENT_HANDLED;
}
// 3 clicks: go to strobe modes
else if (event == EV_3clicks) {
set_state(strobe_state, 0);
- return MISCHIEF_MANAGED;
+ return EVENT_HANDLED;
}
// 4 clicks: toggle smooth vs discrete ramping
else if (event == EV_4clicks) {
@@ -167,13 +167,13 @@ uint8_t steady_state(Event event, uint16_t arg) {
set_level(0);
delay_4ms(20/4);
set_level(memorized_level);
- return MISCHIEF_MANAGED;
+ return EVENT_HANDLED;
}
// hold: change brightness (brighter)
else if (event == EV_click1_hold) {
// ramp slower in discrete mode
if (arg % ramp_step_size != 0) {
- return MISCHIEF_MANAGED;
+ return EVENT_HANDLED;
}
// FIXME: make it ramp down instead, if already at max
if (actual_level + ramp_step_size < MAX_LEVEL)
@@ -190,13 +190,13 @@ uint8_t steady_state(Event event, uint16_t arg) {
delay_4ms(8/4);
}
set_level(memorized_level);
- return MISCHIEF_MANAGED;
+ return EVENT_HANDLED;
}
// click, hold: change brightness (dimmer)
else if (event == EV_click2_hold) {
// ramp slower in discrete mode
if (arg % ramp_step_size != 0) {
- return MISCHIEF_MANAGED;
+ return EVENT_HANDLED;
}
// FIXME: make it ramp up instead, if already at min
if (actual_level > ramp_step_size)
@@ -214,7 +214,7 @@ uint8_t steady_state(Event event, uint16_t arg) {
delay_4ms(8/4);
}
set_level(memorized_level);
- return MISCHIEF_MANAGED;
+ return EVENT_HANDLED;
}
#ifdef USE_THERMAL_REGULATION
// TODO: test this on a real light
@@ -225,7 +225,7 @@ uint8_t steady_state(Event event, uint16_t arg) {
if (stepdown < MAX_LEVEL/4) stepdown = MAX_LEVEL/4;
set_level(stepdown);
}
- return MISCHIEF_MANAGED;
+ return EVENT_HANDLED;
}
// underheating: increase slowly if we're lower than the target
// (proportional to how low we are)
@@ -235,7 +235,7 @@ uint8_t steady_state(Event event, uint16_t arg) {
if (stepup > target_level) stepup = target_level;
set_level(stepup);
}
- return MISCHIEF_MANAGED;
+ return EVENT_HANDLED;
}
#endif
return EVENT_NOT_HANDLED;
@@ -244,36 +244,36 @@ uint8_t steady_state(Event event, uint16_t arg) {
uint8_t strobe_state(Event event, uint16_t arg) {
if (event == EV_enter_state) {
- return MISCHIEF_MANAGED;
+ return EVENT_HANDLED;
}
// 1 click: off
else if (event == EV_1click) {
set_state(off_state, 0);
- return MISCHIEF_MANAGED;
+ return EVENT_HANDLED;
}
// 2 clicks: toggle party strobe vs tactical strobe
else if (event == EV_2clicks) {
strobe_type ^= 1;
- return MISCHIEF_MANAGED;
+ return EVENT_HANDLED;
}
// 3 clicks: go back to regular modes
else if (event == EV_3clicks) {
set_state(steady_state, memorized_level);
- return MISCHIEF_MANAGED;
+ return EVENT_HANDLED;
}
// hold: change speed (go faster)
else if (event == EV_click1_hold) {
if ((arg & 1) == 0) {
if (strobe_delay > 8) strobe_delay --;
}
- return MISCHIEF_MANAGED;
+ return EVENT_HANDLED;
}
// click, hold: change speed (go slower)
else if (event == EV_click2_hold) {
if ((arg & 1) == 0) {
if (strobe_delay < 255) strobe_delay ++;
}
- return MISCHIEF_MANAGED;
+ return EVENT_HANDLED;
}
return EVENT_NOT_HANDLED;
}
@@ -284,12 +284,12 @@ uint8_t battcheck_state(Event event, uint16_t arg) {
// 1 click: off
if (event == EV_1click) {
set_state(off_state, 0);
- return MISCHIEF_MANAGED;
+ return EVENT_HANDLED;
}
// 2 clicks: tempcheck mode
else if (event == EV_2clicks) {
set_state(tempcheck_state, 0);
- return MISCHIEF_MANAGED;
+ return EVENT_HANDLED;
}
return EVENT_NOT_HANDLED;
}
@@ -298,7 +298,7 @@ uint8_t tempcheck_state(Event event, uint16_t arg) {
// 1 click: off
if (event == EV_1click) {
set_state(off_state, 0);
- return MISCHIEF_MANAGED;
+ return EVENT_HANDLED;
}
return EVENT_NOT_HANDLED;
}
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.