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