I swear I'm not making this up. I have a custom SAML21 board where the RESET signal is connected to a pushbutton using an identical circuit to the one on a SAML21 Xplained board. The problem is, when I push the button nothing happens. No reset.
I have verified that the RESET signal is doing what it should when I push the reset button. I have verified that the appropriate signal is present on the ASIC pin just as it disappears into the package body, so there is no break in the copper layer on the board or a bad solder joint. But I can push or hold the reset button as long as I want, the RESET pin gets pulled down to 0V, and my program continues running happily on the bench.
But it gets a bit stranger. If I hold the reset button down and then apply power to the board while the reset button remains pressed, the system will stay in reset until I release the reset button, at which point my program starts running. That tells me that the ASIC is capable of observing and responding to the external RESET signal. But after I release the reset button, the ASIC quits responding to the external RESET unless I repeat the hold-in-reset-while-applying-power process. Is there some "disable reset" feature in the ASIC that my program is triggering? I can't find one. It's not like the SAML RESET pin is muxable to a GPIO or something like that.