05-11-2020, 07:24 AM
Hi All: Here's a proposed plan for supporting PineTime firmware updates over Bluetooth LE. If you're a firmware developer, please take a look...
https://lupyuen.github.io/pinetime-rust-...ticles/dfu
It covers everything we need to do to implement firmware updates in our firmware: Bootloader, Bluetooth Stack, Firmware Rollback, Flash ROM Layout, Firmware Format, Mobile Apps, ...
We need to adopt a common mechanism for firmware updates if we wish to allow PineTime Owners to switch firmware easily. It's more work for us developers... But it's a huge benefit for PineTime Owners!
Please lemme know what you think... While writing this article I have received really good feedback from firmware developers. Their suggestions have been documented in the "Upcoming Enhancements" section.
The most serious limitation in the proposed design is that the firmware size must not exceed 232 KB. Hence there will be an upcoming enhancement to increase this limit (by moving the Standby Firmware Image to External SPI Flash).
Thanks everyone for the awesome work on PineTime... Now let's make PineTime fun and easy to learn and explore! :-)
https://lupyuen.github.io/pinetime-rust-...ticles/dfu
It covers everything we need to do to implement firmware updates in our firmware: Bootloader, Bluetooth Stack, Firmware Rollback, Flash ROM Layout, Firmware Format, Mobile Apps, ...
We need to adopt a common mechanism for firmware updates if we wish to allow PineTime Owners to switch firmware easily. It's more work for us developers... But it's a huge benefit for PineTime Owners!
Please lemme know what you think... While writing this article I have received really good feedback from firmware developers. Their suggestions have been documented in the "Upcoming Enhancements" section.
The most serious limitation in the proposed design is that the firmware size must not exceed 232 KB. Hence there will be an upcoming enhancement to increase this limit (by moving the Standby Firmware Image to External SPI Flash).
Thanks everyone for the awesome work on PineTime... Now let's make PineTime fun and easy to learn and explore! :-)