Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

refactor: migrate OTA firmware updates to tasks #7256

Merged
merged 7 commits into from
Oct 9, 2024

Conversation

AlCalzone
Copy link
Member

@AlCalzone AlCalzone commented Oct 8, 2024

This PR migrates the OTA firmware update flow to use the task scheduler. This enables queuing multiple OTA updates without waiting for the previous one to finish.

@AlCalzone AlCalzone marked this pull request as ready for review October 9, 2024 09:15
@AlCalzone
Copy link
Member Author

@robertsLando Z-UI needs to remove the check for ongoing firmware updates for this to work. The driver will throw on the updateFirmware call if there is an ongoing firmware update for that node anyways.
Also, after calling updateFirmware, Z-UI should probably indicate that there is an update pending for a node, even if there was no progress yet.

@AlCalzone
Copy link
Member Author

AlCalzone commented Oct 9, 2024

TODO:

  • verify that parallel updates don't block each other

@AlCalzone
Copy link
Member Author

@zwave-js-bot automerge

@zwave-js-bot zwave-js-bot merged commit 387a14c into master Oct 9, 2024
17 checks passed
@zwave-js-bot zwave-js-bot deleted the firmware-update-tasks branch October 9, 2024 10:33
AlCalzone added a commit that referenced this pull request Oct 10, 2024
### Features
* Skip rebuilding routes for nodes with priority return routes (#7252)
* Add `node info received` event (#7253)
* OTA firmware updates now use the task scheduler. This allows running multiple OTA updates at once. (#7256)
* Implement Multilevel Switch mocks, add default state for Binary Switch mocks (#7270)

### Bugfixes
* Use configured network keys on secondary controller if learned keys are absent (#7226)
* Pending tasks are removed when hard-resetting or entering bootloader (#7255)

### Config file changes
* Add incompatibility warning to UZB1 (#7225)
* Override Central Scene CC version for Springs Window Fashions VCZ1 (#7263)

### Changes under the hood
* Dependency updates
* Fix bootstrap command in devcontainer (#7254)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants