Appearance
Start a new device
This page takes you from an empty account to a device you can update. It covers four steps: get an image, flash it, put the device in your account, then pick how you will manage it. For the different ways a device can join your account, see How onboarding works.
1. Download an image
Pick your board and download a Pantavisor image from Download image in the Hub (/download-image). You can also build your own image: see Building device images.
2. Flash and boot
Write the image to your device's storage and power it on. How you flash it depends on the board:
- Most boards boot from an SD card: write the
.wicimage with a tool such as Raspberry Pi Imager, balenaEtcher ordd. See Flashing via SD card. - Other boards flash their on-board storage over USB. See Flashing images in the Pantavisor docs for the method your board needs.
For a full walkthrough on a Raspberry Pi, see Download and flash image.
The device needs network access to reach the Hub. A device with no Ethernet can get your Wi-Fi details from Provision Wi-Fi in the Hub (/provision-wifi).
3. Put the device in your account
On first boot the device registers with the Hub. Then:
- An image downloaded from the Hub joins your account on its own and appears in your Devices list.
- Any other image registers unclaimed. Claim it with its ID and challenge (
pvr device scanon the same network shows both).
4. Choose how you will manage it
Once the device is in your account, every change is a new revision the device downloads and installs. You can make those changes three ways, and you can mix them:
| Way | Best for | Guide |
|---|---|---|
| The Hub web app | Looking at status and logs, editing configuration, rolling back | Devices, Deploying updates |
pvr CLI | Cloning the device's state, adding apps, scripting and CI | Updating with pvr |
| An AI assistant | Asking in plain words: build an app, deploy it, find out why an update failed | The MCP connector, Building with an AI assistant |
To build and deploy your own app, start with Builds.
Automating provisioning
To provision devices without manual steps, create an auto-join token and put it in your image or provisioning flow. See Auto-join tokens.
For factory flows where the token could leak, add a second check: enable owner verification on the token so devices must also prove they hold a private key over mutual TLS. See TLS onboarding.