   }
 }
 void leaveArmedState() {
+  endPulsingFiringLED();
   digitalWrite(ARMED_LED, LOW);
 }
 
 // -------------- Firing State ---------------
 void enterFiringState () {
   blePrint("firing");
-  digitalWrite(FIRING_LED, HIGH);
+  firingLEDOn();
 
   startTimer(timerFiringState);
 }
 void updateFiringState() {
+  
   if(isTimerExpired(timerFiringState, 1000)) {
     stateMachine.transitionTo(armedState);
   }
 }
 void leaveFiringState() {
   blePrint("fired");
-  digitalWrite(FIRING_LED, LOW);
+  firingLEDOff();
   clearTimer(timerFiringState);
 }
 

  armedStatus();
  if (armed) {
    blePrint("armed");
  }
}
void updateArmedState() {
  armedStatus();
  digitalWrite(ARMED_LED, HIGH);  
  if (!armed) {

const byte TRIGGER_BUTTON = 3;
const byte ARMED_LED = 4;
const byte FIRING_LED = 5;

// current brightness of the firing LED (to enable pulsing); see the helpers for a little more detail
const float START_RADIAN = 4.712; // Start at the mid-point of the sin wave (all the way off)
const float MAX_RADIAN = 10.995; 
const float RADIAN_STEP = 0.0005; // how many radians do we step the sign wave per loop?
const float SIN_OFFSET = 127.5; // the offset to map the sin values back to 0-255 for analogWrite
float firingLEDBrightness = START_RADIAN;

// Pin configs for the Adafruit nrf8001 breakout board
const byte BLE_REQUEST = 10;
