You could monitor an available input pin, and trigger this routine in your code.
The hardware reset pin will always work though (and is probably a better choice)....
//key to allow software reset in RSTC_CR
const int RSTC_KEY = 0xA5;
// **** Z ****
// required parameters: none // Software reset the processor
// Note: This will also terminate the current socket connection.
DBG_PRINTLN("RESET command received from client. Rebooting NOW!");
RSTC->RSTC_CR = RSTC_CR_KEY(RSTC_KEY) | RSTC_CR_PROCRST | RSTC_CR_PERRST;