Recovery Using the Safemode App

When a problem occurs with a ZAP, the Safemode App attempts an automatic recovery.

The Safemode App resides on extended flash. It attempts to recover from faults using the limited set of functions available in safemode.

The Safemode App is invoked in a number of error conditions:

If the Safemode App is successfully loaded, it attempts to recover with fault reset, OTA firmware update, and factory reset.

Safemode App Counters

For each of its recovery strategies ZentriOS counts the attempts. Safemode App counters are stored in a battery backed up register and persist through reboot. ZentriOS specifies the maximum allowed attempts.

Counter NameDescriptionDefault Max ValueReset Condition
Safemode App LoadCounts the number of times the Safemode App is loaded10
non-configurable
Zap successfully loaded, reset faults, power cycle
Faults ResetCounts the number of times the Safemode App invokes a faults reset3Zap updated, factory reset, power cycle
OTACounts the number of times the Safemode App invokes an OTA3Zap updated, factory reset, power cycle
Factory ResetCounts the number of times the SafemodeApp invokes a factory reset3Zap updated, power cycle

Safemode App Procedure

The Safemode App receives, as a parameter, the error condition that caused ZentriOS to enter safemode.

The default Safemode App procedure is as follows:


See the variables:

Custom Safemode App

Under special circumstances a customer may require a custom Safemode App that follows a different procedure. Contact Zentri support to discuss this.

SoftAP and Remote Terminal Recovery

ZentriOS tracks the number of attempts to load the safemode app. If this count exceeds the specified maximum attempts, ZentriOS enters Kernel Safemode Serial command mode and runs the Soft AP and remote terminal.

In this case a manual recovery may still be possible using the remote terminal via Soft AP. Contact Zentri support for details.