Skip to content

minutes OTA meetup 13.2.2015

Emmanuel Baccelli edited this page Apr 9, 2015 · 4 revisions

#Attendees

  • Jeff Katz (kiwi.ki)
  • Trevor Jordan (kiwi.ki)
  • Arvid Picciani (airfy)
  • Christian Mehlis (airfy)
  • Ludwig Ortmann (airfy / FU Berlin)
  • Hans Christian (FU Berlin)

#goal of the meeting

define a common architecture for over the air full-system updates (excluding network protocol)

#OTA identified use cases

  • separate update code from main code
  • download with any high level protocol
  • encrypted and signed images
  • protection against power loss during flash
  • sometimes limited internal flash
  • binary diffs to save bandwidth/rx power (for example bsdiff)
  • relocate update code to ram

Architecture agreement

as per this PDF sent to the ML (OTA Taskforce)

  • minimalistic bootloader, which may execute app specific strategy out of:
    • copy from ext to internal storage
    • select other region to boot, trigger watchdog, expect AOK flag from new image or fallback
    • relocate itself to ram and run dangerous in-place ota
  • logical assignment in board config of storage to enums for OTA regions and key/value store
    • multiple OTA regions must be supported to have multiple images available on offline storage
  • existing crypto apis seems fairly good to implement signature checks
  • common relocation support
  • config store for bootreason and AOK flag will be eating an entire erase sector.
  • no common image format will be defined. checking for wether it makes sense to flash a certain image are left to the application
  • all the apis are designed to work on complete images

Open questions:

  • is there a smaller version of elf?
  • unclear if storage type abstraction is necessary

Other

  • common interest in implementing a v4 stack, should probably discuss that in the network task force
Clone this wiki locally