Skip to content

SFTP-OTA nice to have things #76

@jubeormk1

Description

@jubeormk1

Hi all,

As the basic functionality on Firmware update over SFTP has been completed in #24, I think that it is fair to have an open issue with a list of "nice to have" in the sftp-ota feature. I will start by adding mine, please comment to add more to the list:

  • Fail Fast! Anything going wrong in the upload process of the ota file should conclude the put action as soon as possible to avoid unnecessary delays.
  • Better progress information: (maybe a progress bar?) This is something that I have noticed already and finding a way to address this making it compatible with the most popular sftp clients would be welcome as the current progress information does not follow the real progress until (almost) the end of the put process.
  • Extra fields in ota-packer: Thanks to @mygnu article on secure ota updates for esp32 over ble with rust we are adding metadata in the ota-packer as a collection of TLV. That is great because we can extend the data added to the .ota file keeping it the metadata retro compatible and that makes sense for an OTA mechanism right? Adding more information such as target-ic will be desirable so the running ssh_stamp can quickly reject an ota that is not compatible.
  • Extend the SFTP functionality: We could have alternative ways to provision things such as client public keys via SFTP. We could add a readme or some form of logs to ssh_stamp that could be read using sftp. @mkj's sunset was made with flexibility in mind. Look at its demos and this crate for examples.
  • Make a list of all targets that support sftp-ota: There is nothing evident that would prevent sftp-ota to run on the currently target microcontrollers but at this stage of the development only esp32c6 has been tested. It would be a nice to have to create a table with the current state of testing/support in different targets.
  • Your idea here: Please contribute your ideas on what else sftp-ota should be doing or would be nice to have.
  • Bug hunting/improvements: By all means if you find a bug or an improvement that will help you and 70% of the possible users lets add it to the list! Bugs would be prioritised.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions