A firmware release management service for IOT devices and friends.
Originally developed for use with Joovv.
This makes OTA updates a pleasure.
Your hardware engineer now has a proper place to upload their releases, and your app can determine whether an update is required or not, by making trivial API calls.
Underneath is an extremely simple django application that allows uploading firmware images using the admin panel
And makes the releases accesbile to devices by simple APIs
GET http://<domain>/api/latest-after/0.3.5/
{
"version": "1.0.0",
"firmware_bin": "http://<domain>/media/firmware_uploads/1.0.0/firmware_1w0H51u.bin",
"bootloader_bin": "http://<domain>/media/firmware_uploads/1.0.0/bootloader.bin",
"partitions_bin": "http://<domain>/media/firmware_uploads/1.0.0/partitions.bin",
"comments": "fixed the timestamp issues",
"uploaded_at": "2019-04-25T23:45:16.777279Z"
}
GET http://<domain>/api/latest/
also works.
This project ships out of the box for deploying to caprover.
- Install caprover
- Create a new app. Make sure to turn on "Has Persistent Data"
- Add persistent directory.
- Add env vars
You should be good to go now!