Skip to content

A firmware release management service for IOT devices and friends

License

Notifications You must be signed in to change notification settings

scientifichackers/firmware-release-server

Repository files navigation

Sponsor

Firmware Release Server

A firmware release management service for IOT devices and friends.

Originally developed for use with Joovv.

Why?

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.

What?

Underneath is an extremely simple django application that allows uploading firmware images using the admin panel

image

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.

Deployment

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.

image

  • Add env vars

image

You should be good to go now!

About

A firmware release management service for IOT devices and friends

Resources

License

Stars

Watchers

Forks

Packages

No packages published