Raspberry Pi BCM2835 Hardware Watchdog


I haven’t been keeping up with the times in SoC design, and only recently found out that the Raspberry Pi has a built-in hardware watchdog that will reset the device in case of most hard freezes – which is very handy when you’re doing GPU-intensive stuff and it locks up on you.

So, for future reference, here’s my recipe for setting it up on a vanilla Raspbian install (sadly, the .deb for the watchdog package doesn’t do this by itself):

sudo modprobe bcm2708_wdog
sudo sh -c "echo 'bcm2708_wdog' >> /etc/modules"
sudo apt-get install watchdog chkconfig
sudo chkconfig watchdog on
sudo /etc/init.d/watchdog start
sudo sh -c "echo 'watchdog-device = /dev/watchdog' >> /etc/watchdog.conf"
sudo reboot

Even without the hardware support, the watchdog daemon is pretty handy for unattended operation, although I’ve already demonstrated to my satisfaction that the 15 second interval is not enough for you to log in and change watchdog.conf if you make a mistake.

As such, I recommend symlinking watchdog.conf to the FAT partition so that you can edit it on any machine if you lock yourself out…


See Also: