On Sat, Sep 6, 2014 at 6:57 PM, Brent Sink <[email protected]> wrote:
> I can't quite define it, but something seems to get corrupted. When the > new "corrupted" application runs, it only shows a white rectangle, rather > than the application. I guess I was wondering how others update their own > software applications - if they do something similar to what I'm doing or > if they are using opkg/apt-get/etc. The MD5 sum may be something I could > look into... I'm not familiar on how to implement that, but I'll do some > research. Thanks, > I've gotten frustrated with corrupt root filesystems enough that I keep mine read-only and ping-pong the firmware updates between two partitions. I.e., the BBB starts out booting off the rootfs in the 2nd partition (uboot, etc are in the 1st). The updater writes the new rootfs to the 3rd partition and then when it's done, the 3rd partition becomes the new active one. I keep all of my application data on a writable 4th partition so that it doesn't get overwritten by the firmware updates. This setup is a bit old school, but it has worked well for me. I also don't usually have access to devices to investigate corruption issues, so it can be hard to figure out the root cause. I use Buildroot to create my root filesystems. For an open-source project that I'm working on, I had to put together a firmware update utility to manage updates. It seems to work for me and for what I need on the other project, but it's not battle tested (the battle tested one is tied to a product). If you're interested, you can look at it here: https://github.com/fhunleth/fwup. I just updated an example project to show how it can be used on the BBB: https://github.com/fhunleth/bbb-buildroot-fwup. Frank > > On Sat, Sep 6, 2014 at 6:33 PM, William Hermans <[email protected]> wrote: > >> Define "something gets messed up". You're going to have to know what this >> something *is* before solving the issue. But perhaps you could use an MD5 >> sum to verify the file ? Then when there is a mismatch you delete the >> target file and try again ? >> >> >> On Sat, Sep 6, 2014 at 3:02 PM, Brent <[email protected]> wrote: >> >>> I have a Qt application that runs at start up. Currently, I update my >>> application by allowing the user to press a button inside of my application >>> which copies the updated application files from the USB drive to the eMMC. >>> It then sets a flag inside of a text file to "1", and reboots. When my >>> start up script is ran, it firsts checks the text file to see if there is a >>> "1", and if so it overwrites the old files with the new ones and then >>> launches the application. This works most of the time, but there are >>> occasions where something gets messed up and the new application does not >>> start. >>> >>> I was wondering if there is a better way of updating my application. >>> Could I use opkg to do this, and if so, how? Will it allow my application >>> to be running while it is updating it? What is the proper way to do this? >>> Thanks in advance for your help! >>> >>> -- >>> For more options, visit http://beagleboard.org/discuss >>> --- >>> You received this message because you are subscribed to the Google >>> Groups "BeagleBoard" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to [email protected]. >>> For more options, visit https://groups.google.com/d/optout. >>> >> >> -- >> For more options, visit http://beagleboard.org/discuss >> --- >> You received this message because you are subscribed to a topic in the >> Google Groups "BeagleBoard" group. >> To unsubscribe from this topic, visit >> https://groups.google.com/d/topic/beagleboard/4FY8Owh_i_I/unsubscribe. >> To unsubscribe from this group and all its topics, send an email to >> [email protected]. >> For more options, visit https://groups.google.com/d/optout. >> > > > > -- > -brent > > -- > For more options, visit http://beagleboard.org/discuss > --- > You received this message because you are subscribed to the Google Groups > "BeagleBoard" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > For more options, visit https://groups.google.com/d/optout. > -- For more options, visit http://beagleboard.org/discuss --- You received this message because you are subscribed to the Google Groups "BeagleBoard" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
