diff --git a/rampinglight.c b/rampinglight.c index aed90df6b3b1803bfd28a4e7fc2c4ed163637ead..03093ea53ccdb5f67eaece9dc01c1ddce205f3e6 100644 --- a/rampinglight.c +++ b/rampinglight.c @@ -17,6 +17,7 @@ // Optional features #define BATTCHECK +#define STROBE #define LOW_VOLTAGE_PROTECTION #include @@ -55,6 +56,7 @@ #define TURBO_PRESSES 2 #define BATTCHECK_PRESSES FIXED_SIZE+1 +#define STROBE_PRESSES FIXED_SIZE+2 #define CONFIG_PRESSES 10 /** @@ -78,6 +80,9 @@ enum State { #ifdef BATTCHECK kBattcheck, // Battery level #endif // ifdef BATTCHECK +#ifdef STROBE + kStrobe, // Strobe +#endif // ifdef STROBE }; /** @@ -398,6 +403,12 @@ int main(void) { break; #endif // ifdef BATTCHECK +#ifdef STROBE + case STROBE_PRESSES: + state = kStrobe; + break; +#endif // ifdef STROBE + case CONFIG_PRESSES: state = kConfig; break; @@ -420,6 +431,12 @@ int main(void) { break; #endif // ifdef BATTCHECK +#ifdef STROBE + case STROBE_PRESSES: + state = kStrobe; + break; +#endif // ifdef STROBE + case CONFIG_PRESSES: state = kConfig; break; @@ -510,6 +527,13 @@ int main(void) { break; #endif // ifdef BATTCHECK +#ifdef STROBE + case kStrobe: + set_pwm(TURBO_PWM); + blink(1, 4); + break; +#endif // ifdef STROBE + case kConfig: disable_output(); set_pwm(FLASH_PWM);