OTA update demo (staged rollout + worst-case hardware test)
Just a quick followup to the post above. Here is a full end-to-end demo of the OTA pipeline doing its job.
What's happening in the video
I upload a new software version through the hawkBit web frontend
I roll it out to the "dev" distribution channel only
The instrument cluster checks and sees the new version is available for its channel and pulls it down
It installs the update and reboots
It comes back up running the new version
Why the "dev channel" matters
This is the same staged-rollout pattern real vehicle fleets use. They don't push an update to every car at once; they rather push it to a canary group first, watch it behave and only then widen the rollout. The instrument-cluster's update channels work the same way: dev, and eventually a stable channel for everyone else, so a bad build never has to reach every device at the same time.
One detail worth pointing out
I ran this demo on a Raspberry Pi 5 with a VERY slow SD card on purpose. Wanted to see the update pipeline handle a sluggish I/O scenario rather than only showing the happy path on ideal hardware. It completed the download, install, and reboot without issue.
This is a proper update pipeline with targeted rollout groups, the same shape as what's used on actual vehicle software fleets, just running on a cheap board instead of a car's ECU cluster.