I have been testing my app for many month now and today when I came to check on it, the app was gone.
It seems to me that the modem was set to factory settings. Is there any scenario where the modem would do this on its own? If yes, how can I disable?
I see in my Installed Applications list, factoryRecoveryService, I searched for instructions on it but didn’t find any. Could this service have caused my app to be deleted? Any information on it is appreciated.
Hi,
If your module was set to factory settings, so how can you know that factoryRecoveryService was installed to your module?
If your legato status is not marked with “good” status, it will rollback to previous good version. I think this version does not include your apps.
To prevent this issue, you can incorporate your apps to the image.
Use the systocwe tool to turn your app in to a cwe file.
Use the swicwe tool to create your new image.
Ex: swicwe -o my_firmware.spk -c carrier.spk yocto_linux.cwe legato.cwe app.cwe
In the “Installed applications” list, one of the services listed is factoryRecoveryService. I don’t know that this service caused my app to be deleted or not, I’m just trying to figure out what happened and wondered if this service could have something to do with it.
When I loaded my app, I loaded it as marked good so that it wouldn’t rollback, plus, it had been running for three months without any problems.
I would like to incorporate my app and my specific configuration into an image file, but I’m not familiar with how to do that. Is there any documentation that I can use as a guide to creating an image file?
Also, I’m using Developer Studio for window, is it possible to create the image as you described above, or do I need a LINUX environment?
Hi Eddie,
The factoryRecovery application isn’t responsible for removing the application. This app handles the FX30 factory reset after the reset button is pressed and held at powerup.
The only reasons your app would be lost are:
Manual intervention by using DevStudio to reset
Legato rollback
Module EFS recovery mechanism due to some form of corruption
As stated by jerdung, the best way to ensure your apps are permanent is to build them into the image.
Disregard previous question. I found the problem. I corrected a line in the MyApp.adef file and I was able to add my app to a .cwe file successfully.
I do have another question though:
How can I capture other configuration changes in my environment and add them to my image. For example, I changed the iptables.rules file and I disable the wifiService. How do I make these changes also part of my image?
Hi Eddie,
There’s one more condition in which your app could be stopped, but I don’t think the app is removed. The Legato framework has a built in protection mechanism called the faultLimit. If your app crashes twice within a short time period, the app is stopped.
For your firewall rules, you could do a full yocto build and add it to the root file system, or you could create a Legato application to run the script and convert it to a cwe as jerdung suggested.
I haven’t tried the cwe method though.
BR,
Chris