#include "led.h" #ifdef STEALTH const bool LED_STEALTH = true; #else const bool LED_STEALTH = false; #endif CRGB leds[NUM_LEDS]; bool ledstate = false; bool blinkState = false; CRGB ledcolor = CRGB::Black; uint32_t lastLedTime = 0; uint32_t lastBlinkTime = 0; void setLedBlink(bool blink) { blinkState = blink; } void SetLedColor(CRGB color) { ledcolor = color; setLedBlink(false); } void SetLedColor(CRGB color, bool blink) { SetLedColor(color); setLedBlink(blink); } void initLed(void) { FastLED.addLeds(leds, NUM_LEDS); // GRB ordering is typical FastLED.setBrightness(20); } void handleLed(void) { uint32_t timeNow = millis(); if (timeNow - lastLedTime > LEDTIMEOUT) { if (blinkState) { if (timeNow - lastBlinkTime > LEDBLINKTIME) { if (!ledstate) { leds[0] = CRGB::Black; } else { leds[0] = ledcolor; } ledstate = !ledstate; lastBlinkTime = timeNow; } } else { leds[0] = ledcolor; } FastLED.show(); lastLedTime = timeNow; } }