You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Printipi is fairly good at catching Unix signals and safely shutting down when it's asked too. However, in the case of the system freezing (or other extreme situations), the I/O might go a dangerously long time before being serviced. The primary source of concern is a runaway heater.
If the program exits crudely or freezes, then the heater pin might get stuck 'high'. One way to counter this issue is by using a Watchdog Timer - if the program goes so long without periodically clearing this timer, then the Raspberry Pi will automatically be reset. Upon reset, all the Pi's pins are floating, so the heater would default to low through its hardware pull-down resistor.
Watchdog timers run as cpu peripherals, so are resistant to freezes virtually everywhere. The bcm2708_wdog kernel module interfaces with the watchdog timer. It may even be possible to access it from userland the same way that DMA is. However, care must be taken to ensure that no other service is clearing our watchdog timer.
The text was updated successfully, but these errors were encountered:
Printipi is fairly good at catching Unix signals and safely shutting down when it's asked too. However, in the case of the system freezing (or other extreme situations), the I/O might go a dangerously long time before being serviced. The primary source of concern is a runaway heater.
If the program exits crudely or freezes, then the heater pin might get stuck 'high'. One way to counter this issue is by using a Watchdog Timer - if the program goes so long without periodically clearing this timer, then the Raspberry Pi will automatically be reset. Upon reset, all the Pi's pins are floating, so the heater would default to low through its hardware pull-down resistor.
Watchdog timers run as cpu peripherals, so are resistant to freezes virtually everywhere. The bcm2708_wdog kernel module interfaces with the watchdog timer. It may even be possible to access it from userland the same way that DMA is. However, care must be taken to ensure that no other service is clearing our watchdog timer.
The text was updated successfully, but these errors were encountered: