I’m curious if anyone is aware of a general procedure or best practices for performing upgrades on the PFC controllers? Specifically for systems that are deployed in the field, both for firmware and runtime applications where access to the codesys IDE is not available. Ideally I am looking for some method to be able to perform the upgrade (FW and application SW) via SD card or a simple application that can be run from a laptop by someone with limited technical knowledge.
The typical situation is that a customer might want their system updated to the latest version for security or enhancement reasons. Since deployment, the customer might have made configuration (settings) changes to their equipment and also added users in the runtime from the HMI. If the controller were to be updated with new firmware and an updated application loaded, these settings would be wiped out.
I would envision something like this:
- Create a complete backup of the current application such that the controller can be rolled back to the original state if something fails. (Bootable SD card?)
- Store current configuration and credentials (hash files?) on the SD card to load back into the controller after the upgrade.
- Load new FW on the controller (via wagoUpload or is this possible from an SD card too?)
- Load runtime application to the controller (via bootable SD card?)
- Remove bootable SD card, insert original SD card with config files. From Application, trigger program for loading of config files and user credentials.
- Carry out test to confirm that upgrade was successful
I have already written code to save configuration settings to a CSV file and load them back when the application is freshly installed. I don’t know how the user credentials are stored and whether it might be possible to carry those over after a firmware/ application upgrade.
Does anyone have some documentation they could point towards or tips that they might suggest looking at to carry out upgrades in the field? Is the process I described above possible to do?