Security
Signed releases
Ed25519-signed manifests, checked on the device before it installs, with the previous version kept for rollback.
Security
Your key, or managed signing
Sign with your own key and keep it offline, or let us build and sign for you.
Delivery
Low-power check-ins
CoAP and OSCORE: a few hundred encrypted bytes per check-in, and no TLS handshake.
Device client
Native MicroPython client
A small native MicroPython module written in Rust, installed with mip.
Battery-aware scheduling
Check-in intervals per group
Set intervals per product or device group, and see when each device checks in next.
Battery-aware scheduling
Update windows
Devices check in often only inside a release's window, and rarely outside it.
Battery-aware scheduling
Install conditions
Install only when your conditions are met, such as battery above a threshold.
Delivery
Staged rollouts
Waves of 1%, 10%, 50% and 100%, with an automatic pause on failures, and rollback.
Git and CI/CD
GitHub, a GitHub Action and the CLI
Connect a GitHub repository, release from CI with the Action, or sign and release with the CLI.
Git and CI/CD
Reproducible managed builds
Tag a release and we build it in an isolated, reproducible build.
Hardware and firmware
ESP32-S2, S3, C3 and C6
MicroPython on Espressif's ESP32-S2, ESP32-S3, ESP32-C3 and ESP32-C6.
Hardware and firmware
Original ESP32
Through our own MicroPython firmware build, as its executable memory is tight. Still being worked on.
Security and compliance
Audited infrastructure
Built on Fly.io and Tigris, which hold SOC 2 Type 2 reports. Those reports are theirs, not otalite's.
Security and compliance
Data Processing Agreement
A Data Processing Agreement covering the data otalite processes for you.