esp8266 / esp8266/Arduino

Further transparent integration of compressed updates?

Open
#7,693 3 comments 0 reactions 1 assignee Claimed by @d-a-v View on GitHub
component: OTA type: enhancement
Dominant language
C++
Stars
16.7k
Forks
13.1k
PR merge metrics
No merged PRs in 30d

Description

This is to discuss expanding compressed OTA binaries.
https://github.com/esp8266/Arduino/issues/6614#issuecomment-723003246

My understanding so far is that .bin files must be compressed on the command line, and then signed manually (if so inclined), before being uploaded to the sketch. The sketch must have defined `ATOMIC_FS_UPDATE` for the bootloader to write the compressed FS (i'm curious how this works for say FS sizes of 3Mb which when compressed gives a file greater than max OTA size (which for 3Mb FS on a 4Mb flash is 512Kb).

I would like to propose.

- A mechanism to report compression functionality in the boot loader (ie a #DEFINE)
- A mechanism whereby the OTA updater class can report back to espota.py that it supports compression
- espota.py can then send compressed binaries instead.

advantages:
- no user input required, fully transparent, uploads will be much faster for everyone without the user having to do anything at all.

disadvantages
- possible extra handshake during OTA

Any thoughts?

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.