Software Update via Ethernet - the mbed application can pull down an updated application binary from a web server and activate that binary. This library works only with the LPC1768, as it relies on the magic-chip boot-loader mechanism.
Dependents:
WattEye
X10Svr
PUB_SWUpdate
Success!! With this library, a network connection, and a web server hosting a new binary image, you can update the mbed firmware over the air (FOTA) - well, at least via Ethernet so far.
As of March 2015, it has been tested with the following mbed official libraries:
And a custom derivation:
- HTTPClient v33, v32, which includes a custom HTTPFile.
Part of the update process involves checking the integrity of the downloaded binary file, for both a checksum and the program (file) size. To create this additional information, a small perl script is used (the important part is only 20 lines of code). See the documentation in the header file.
After the new binary is successfully downloaded, the checksum and the size are evaluated and if correct, then the old binary file is removed (this is the only way to cause the new binary to activate).
The mbed can then be automatically reset to activate the new image, or this may be deferred in case there is some other process necessary for an orderly restart.
Details are in the SWUpdate header file, and PUB_SWUpdate is a publicly accessible demonstration program for this library.
Changes
Revision | Date | Who | Commit message |
29:f67a7f54c173 |
2020-09-13 |
WiredHome |
Minor revision to debug macros
default tip
|
28:881661d475c1 |
2018-11-18 |
WiredHome |
Minor changes to debug build only
|
27:3d3089b8212d |
2019-07-14 |
WiredHome |
Clarify in return codes if the specified file does not exist.
|
26:f2bb6061dcb3 |
2018-05-07 |
WiredHome |
Added a method to get the current build number (SW version number).
|
25:af99bdcca2b4 |
2017-11-21 |
WiredHome |
Minor code cleanup
|
24:e400edb8d2ee |
2017-11-10 |
WiredHome |
Add a method to translate an error code into text string
|
23:cfe84db2b2cb |
2017-06-01 |
WiredHome |
Cleanup remove unnecessary include files.
|
22:2a010efe00da |
2016-12-29 |
WiredHome |
Minor change from sprintf to snprintf
|
21:253e7da56ff9 |
2015-11-30 |
WiredHome |
Remove unused code.
|
20:cf73b0d75bb7 |
2015-01-19 |
WiredHome |
Documentation changes only to detail supported platform, and operating behavior.
|
19:169aab9047bd |
2015-01-19 |
WiredHome |
Revise to detect full local file system.
|
18:5f7667d63a27 |
2014-10-11 |
WiredHome |
Documentation updates only.
|
17:1d318666246c |
2014-07-05 |
WiredHome |
The cleanup function was not properly forming the current version filename, so could delete it on some circumstances.
|
16:de99e872fc9d |
2014-07-05 |
WiredHome |
Permit reference to "long file" name on server, but truncate binary file name on local file system to 6 chars, allowing 2 for version number => staying at final of 8.3.
|
15:49cc43dcbbf6 |
2014-06-28 |
WiredHome |
Turned off debug, and added a disclaimer about which mbed firmware it is known to work with (in case it doesn't work with them all).
|
14:0e012d53c6df |
2014-06-27 |
WiredHome |
bin file must be 8-chars total, so revised the example to have a shorter filename, and sequence number to be 2 digit, not 3.
|
13:cf76c2bd3dfc |
2014-06-21 |
WiredHome |
Documentation is now up to date and believed accurate.
|
12:f1fdf8cabbc4 |
2014-06-21 |
WiredHome |
Still working on the documentation to get it to show up well on the library page.
|
11:4ef0309135e6 |
2014-06-21 |
WiredHome |
another documentation update.
|
10:78d727e8d0de |
2014-06-21 |
WiredHome |
Documentation update only.
|
9:73067ef14c30 |
2014-06-21 |
WiredHome |
Several updates to make it more robust and reliable, including removal of all other .bin files.
|
8:8e840a036116 |
2014-06-15 |
WiredHome |
Documentation and rearranging a few files for easier maintenance.
|
7:a7efbae7e02e |
2014-06-15 |
WiredHome |
Minor update to a debug diagnostic, and turned off debug.
|
6:6025fddc1af9 |
2014-06-14 |
WiredHome |
More updates to the docs for doxygen.
|
5:e10f18e9b93a |
2014-06-14 |
WiredHome |
doc update, trying to get doxygen to present this non-class function.
|
4:1a3656ae80dc |
2014-06-14 |
WiredHome |
doc update
|
3:c69fff55fc60 |
2014-06-14 |
WiredHome |
Updated documentation to support integrity checking.
|
2:ef2ac9627546 |
2014-06-14 |
WiredHome |
Improve documentation
|
1:208de08b1a19 |
2014-06-14 |
WiredHome |
Unconditionally try to remove the old bin file when a new one has been downloaded.; Add a few more warning messages.; Provide a placeholder for an integrity check of the new download.
|
0:e221363f7942 |
2014-04-21 |
WiredHome |
Software Update - not yet reliable
|