Releases: chrisjoyce911/esp32FOTA
Data partitions and filesystem agnosticism
What's Changed
- Abstracted away filesystem
- Added spiffs/littlefs/fatfs updatability
- Made crypto assets (pub key, rootca) loadable from multiple sources
- @tuan-karma's compiler warning fix (#a0e9e5c)
- LittleFS/SD/SD_MMC/SPIFFS (any FS) support for certs/signatures
- Auto assign filesystem when applicable
- Added SPIFFS/LittleFS partition support to execOTA()
- Added Callback setter for Update progress handler
- Implemented
esp32fota.setExtraHTTPHeader( name, value )
- C++11 compliance
- Credits update
- Updated examples
- Created test suite (#6)
- Added Dispatchable Workflow for library maintainers (manual triggering)
- bump version
New methods (see ReadMe for details)
void setProgressCb(ProgressCallback_cb fn);
void setExtraHTTPHeader( String name, String value );
void setCertFileSystem( fs::FS *cert_filesystem);
CryptoAsset();
CryptoFileAsset( const char* _path, fs::FS* _fs ) : public CryptoAsset;
CryptoMemAsset( const char* _name, const char* _bytes, size_t _len ) : public CryptoAsset;
void setPubKey( CryptoAsset );
void setRootCA( CryptoAsset );
New Contributors
Full Changelog: 0.1.6...0.2.0
HTTP/1.0 and HTTP/1.1
Some web servers answer HTTP/1.0 when they receive HTTP/1.0 request, and current version will refuse HTTP/1.0.
This rather trivial patch fixes that.
Thanks @nuclearcat
Configurable HTTPS port
The library use to be hard coded to use port 443 which causes problems when trying to connect to a custom HTTS port.
A new variable called _securePort, which has a default value of 443 has been added, as a variable rather than a hardcoded value you now have more options.
No breaking changes for anyone else, as the default value is set to 443.
Thanks to @willie-engelbrecht for the patch
HTTPS and bug fix's
0.1.3 includes :
- Added HTTPS
- return type for forceUpdate
- Content-Type issues
- New examples
Bugfix release
0.1.2 includes the following bugfixes:
- upgraded code from ArduinoJson v5 to v6
- return false added to execHTTPcheck for when connection test fails
- Make sketch filename case match folder name
- Force update added
Fixed error with checkURL
Fix a reported error when setting checkURL
Under heavy development
Purpose
A simple library to add support for Over-The-Air (OTA) updates to your project.
Features
- Web update (requires web server)
- Batch firmware sync
- Multi firmware update record
- Stream update (e.g. MQTT or other)
How it works
This library tries to access a JSON file hosted on a webserver, and reviews it to decide if a newer firmware has been published, if so it will download it and install it.