I have two Autonomo boards. Suddenly one has stopped responding, even the serial port is not showing up anymore. The other board is still responding fine.
Can I check the hardware in some way?
It happened when experimenting with the grove-GPS together with the LoRaBEE and sending massive data via LoRaBee (programming mistake). The board freezed and dit not work anymore afterwards. Nothing changed with connections or hardware wiring.
Are running Windows, or if not, does your platform give you audio notifications when a new device is plugged in? Does it connect briefly and then disconnect, after plugging it in or pushing the reset button?
You can also reset the board by grounding the reset pin on the SWD port. It is the pin diagonally opposite pin 1 (marked by the triangle), or looking from the front, the top row, the pin most to the right. I have found sometimes it helps to do several resets on that pin in a row. This appears to put it into the reprogramming mode (likely a feature of the boot loader) where it shows up on the secondary COM port. (This normally happens briefly when programming it with Arduino.)
I could put a new sketch in the board and afterwards it seems to work fine again. Do I need to do anything else, or do you expect it to stay okay from this point on?
If it was your sketch that caused the device’s USB to become unresponsive, then you should be fine now. In the unlikely event that it was caused by something else, you may see a recurrence.
I have encountered these sort of lockups before, usually when trying out new stuff. Poorly implemented sleep mode can easily put the device into this mode. The problem usually arises when the device starts executing the problem code very soon after power on or reset (such as entering sleep immediately). One solution is to add a 5 second or greater delay at the start of setup(). This will give you a chance, during that delay, to initiate a new upload after resetting the board.
Thanks for the explanation, makes sense. The board is still working as expected after the reset.