How to reset the board without pressing the button?

I have an old Raspberry Pi 1B that I use to babysit the VF2 via UART. If the VF2 can’t boot but u-boot is still accessible, I can ssh into the RPI and run picocom to fix it.

Is there a way to reset the VF2 without pressing the reset button if it crashes and u-boot is not accessible?

2 Likes

There is a WDT (WatchDog Timer) in the JH7110. In theory that should be able to generate a NMI (Non-Maskable hardware Interrupt) and do a hard reset, if the timer runs out (you failed to kick the watchdog in time). I’ve never used it. It is used on satellites and space rovers, it is kind of like hardware outside of the JH7110 CPU that if it is not periodically told to reset it’s countdown timer it will reset the hardware when the time runs out. And for safety once a WDT is enabled typically the only way to disable it is a hardware reset (so code run-away should never be able to disable a WDT). I’ve not checked the JH7110.

EDIT: My starting point would be:
linux/drivers/watchdog/starfive-wdt.c
linux/Documentation/devicetree/bindings/watchdog/starfive,wdt.yaml

2 Likes

I would solder a wire to the reset button’s footprint. Look below the switch, it seems doable.

Then drive it low for a set amount of time to reset.

Alternatively, you could attach the power supply into a “smart” plug.

IMHO it is a shortcoming in the PCB’s design. If at all possible, reset should be exposed somewhere, even if just as a non-populated single DIP header footprint or even a pad.

3 Likes

I took a closer look at the push button.
Screenshot from the circuit diagram, page 1

Screenshot from the circuit diagram, page 18


I was not aware that the reset button also functions as a power on button.

2 Likes

I guess you’ve never turned off the board? Pressing it is how you turn it back on :slight_smile:

1 Like