Core concepts at a glance
How NervesHub is organised: organizations, products, devices, firmware, deployment groups, and releases, and how they fit together.
Written By Josh Kalderimis
Last updated About 2 months ago
NervesHub has a small set of building blocks. Once these click, the rest of the platform follows.
Organization
βββ Product
βββ Devices (your hardware in the field)
βββ Firmware (signed .fw images you publish)
βββ Deployment groups
βββ Releases (which firmware a group of devices runs)The hierarchy
How an update flows
You build and sign firmware and publish it to a product.
You point a deployment group at that firmware as its release.
Devices matching the group's conditions (version + tags) are offered the update.
The device downloads it, verifies the signature, applies it, and reboots.
Tags are the glue: you label devices with tags, and deployment groups target those tags. That's how you roll a release out to "all field-test units" or "only eu + cellular devices" without touching individual devices.
Two connections, not one
A NervesHub server has two separate endpoints:
A web endpoint for people (the web UI and HTTP API).
A device endpoint for hardware (the long-lived websocket devices connect to).
On NervesCloud these are manage.nervescloud.com and devices.nervescloud.com. When you configure a device, host is the device endpoint.