Stuck in an interrupt?

Your logic seems a bit screwed up.

  • Your ISR sets failSafe to HIGH
  • The first function that loop() calls sets failSafe to LOW
  • The next function that loop() calls expects failSafe to be HIGH
  • And in the function getInputs() as well as setting failSafe LOW it has a WHILE failSafe is HIGH

Back the drawing board I think.

...R