I am working with the EMX to perform in-field firmware upgade I have followed the instructions in the API documentation and managed to successfuly perform firmware upgrades via obtaining a frimware file from a FTP server.
The question i have is in regards to production deployment, it would seem that to program a newly purchased (factory settings) device, the following steps are required to enable in field firmware upgrades.
deploy an application that calls SystemUpdate.EnableBootloader(); which formats the flash spitting it into 2 sections i.e. boot section and application section, this app gets erased and the device reboots into the application section of flash.
now that we are in the application section of flash I deploy another application which does nothing other than call SystemUpdate.AccessBootloader(); when the device reboots it now is accessing the boot section of the code.
I now have to deploy a third application which is my boot application. This performs an application upgrade over an FTP server which writes the application image then reboots and runs the application image.
As you can see there are 3 image deployments + 1 in field deployment involved in getting my application running.
Is it possible to deploy only one image which already provides a formated flash memory structure and boot application code so that i can avoid steps 1 and 2?