Hacker News new | ask | show | jobs
by thesuitonym 822 days ago
You probably turn your TV and Nest on less than once per year. It's much easier for always on devices to update when they're not in use than an item like a scooter, which when it's off, it's actually off.

That said, I don't know why you would ever connect a transportation device to the internet. All of my vehicles are too old to connect to the internet, but when I finally have to replace them, the first thing I'll do is physically remove the Wi-Fi/cellular antenna

2 comments

You can just do the equivalent of a blue-green deployment: you have two copies of the firmware, a flag that tells you which is active, and a tiny bootloader that respects that flag on startup. At any point during regular operation the firmware can update the other copy, and once done toggle the flag. Next time the scooter is started it uses the new version. If the device is shut down during update it continues to boot from the old version, and just tries again next time. Bonus points if you have a small watchdog that toggles the flag if the current version fails to boot.
One pretty understandable reason for a transportation device to update itself is for new GPS ephemeris data. I think it would be cool if there was a device protocol that somehow securely promulgated such data from devices that are expected to be well-connected, like your smartphone, to "things" that are not, like watches and cameras and scooters.