Watchdog: dvě špatné strany
Hlídací obvod je čítač, který resetuje procesor, když ho nikdo včas neshodí. Nastavuje se jediným číslem a to číslo má dvě špatné strany, ne jednu.
Příliš krátký
Krmení nikdy nepřijde přesně na čas — smyčku zdrží přerušení, zápis do flash, delší zpráva. Když je limit uvnitř toho rozptylu, watchdog zastaví funkční stroj. A následek není ten reset: následek je, že to obsluha vypne, a od té chvíle nehlídá nic.
Příliš dlouhý
Limit deset sekund znamená, že mrtvý program běží deset sekund. U stroje, který se pohybuje metrem za sekundu, to je deset metrů. Doba do resetu je součástí doby zastavení a patří do rozpočtu v SafetyLabu, stejně jako doba odpadu relé z GpioLabu.
Kolik výpadků povolit: každý další dělí četnost planých resetů pravděpodobností jednoho opožděného krmení. Při p = 10⁻³ je jeden výpadek reset jednou za deset sekund, čtyři výpadky jednou za tři sta let. Čtyři jsou obvyklý kompromis — a je to totéž číslo, které z jiné strany vychází RoboLinkLabu pro bezdrátovou smyčku.
A hlídat se má práce, ne běh
Nejčastější chyba: krmit watchdog v přerušení časovače. Takový watchdog hlídá, že tiká časovač — a ten tiká i tehdy, když se hlavní smyčka zasekla v nekonečném cyklu. Krmení patří tam, kde je vidět, že práce doopravdy proběhla: každá úloha nastaví svůj příznak, a krmí se, jen když jsou všechny.