Issue
Extreme care must be used when using PE programs to perform an automatic flash backup on a controller
Product Line
Andover Continuum
Environment
- Infinet Controller
- BACnet Controller
Cause
An incorrect code in the program can cause issue to the controller and require a full reload.
Resolution
BEWARE of PE programs that set the flag to flash a controller
Infinet and BACnet controllers that have the ability to have their objects backed up to flash and running a program to reflash them when the application data changes should be used with extreme caution.
If you accidently created a program that looped and continuously wrote
Accstatusbackup = accbackupnow
and tried to change the application data such as creating a point or editing a
program you will receive an error stating "OMS database not currently available (Backing Up)"
This type of program is very bad, and can reset the controller requiring a full reload.
This is not to say that such programs shouldn’t be created to reflash a controller when needed, just create them as a fall thru or stop the program at the end of execution and have them triggered ie... a certain time of the day and test to see if there needs to be a reflash ie...
If accstatusbackup = accbackupneeded then
Accstatusbackup = accbackupnow
Endif
Also keep in mind that flash memory circuits are rated for a maximum of 100,000 write operations and there is an automatic software based circuit breaker that will set the accstatusbackup to accbackupdisabled when 10,000 writes occur. This should be considered a safety net that the controller has been flashed 10,000 times, that would be a good point to ask "WHY". You can reset this by setting the accstatusbackup = accbackupenable and you’ll be able to continue to write to the flash.
It would be a good practice to have a numeric that is alarmed to notify in the event of the controller excessively writing the flash. This number could be whatever you think your threshold for writes should be ie.. if you wanted to know when the controller has been flashed > 20 you would know that something is probably happening and maybe you should address it.