Analyse code hangup
Sometimes the press of a button is missed or results in a hang-up. In that case only sending a message over the UART gets the system going again.
First analyse the issue from code. Perhaps the issue is that the switch is not debounced.