Cancel button is on a pin that does not allow for interrupts.
The cancel button can't have an interrupt that fires when the button is pressed like all the other buttons do. Currently we get around the issue by just polling the button every control loop cycle but it is theoretically possible for the micro to miss the button press if it gets pulled high again at the wrong time.