balena Documentation
website·Indexed 43 days ago
https://docs.balena.io/Documentation for the balena platform, including balenaCloud and balenaOS. Learn how to deploy Linux containers to fleets of connected edge devices, manage hardware provisioning, use the balena CLI, and follow device-specific setup guides for hardware like Nvidia Jetson, BeagleBone, and Intel NUC.
What's inside balena
- balena provides tools to automate the registration of devices with AWS IoT Core. The process leverages balenaCloud to store and distribute registration credentials (keys and certificates) to devices as environment variables. This allows devices to securely interact with AWS IoT Core without manual credential management per device.
Overview of Cloud IoT Provisioning with ClearBlade-GCP
The ClearBlade-GCP IoT platform allows balena devices to register and interact with the ClearBlade IoT Core service. The provisioning process automates device registration by leveraging a GCP Cloud Function to validate device identity via balenaCloud, generating public key pairs, and registering the device with IoT Core. The resulting credentials are stored in balenaCloud and pushed to the device as environment variables.Overview of the balena Offline Updates process
Offline updates allow updating devices without an internet connection by preloading a balenaOS image and reflashing it. Unlike a standard reflash, this process preserves the device's unique identity (UUID) and configurations in
config.json, allowing the device to resume operation with the same name and UUID but with an updated release or balenaOS version.Warning: This process wipes all data on the device. Any user data or system settings written to device partitions will be lost. To recover or preserve data, use external mass storage (USB) mounted into a privileged data container, as external storage is not affected by the update process.
Overview of the balena platform
balena is a platform designed to deploy code to fleets of connected edge devices using Linux containers. It optimizes cloud paradigms for remote hardware, providing container workflows with low overhead and high reliability. The platform allows users to monitor, manage, and update device fleets remotely via a dashboard and CLI.Overview of Seeed reComputer J3010 Jetson Orin Nano 4GB Hardware
The Seeed reComputer J3010 uses a Jetson Orin Nano 4GB SOM (part number 900-13767-0040-000) on a J401 carrier board. The board features an HDMI port for monitor connection and a debug interface consisting of UART TXD, UART RXD, and GND pins located underneath the Orin Nano SOM. By default, balenaOS provisioning targets an NVME drive, which must be attached to the carrier board before booting from a USB flasher image.Overview of balena Cloud IoT Provisioning with Azure
balena provides tools to automate the registration of devices with Azure IoT Hub. The process leverages balenaCloud to store and distribute registration credentials (keys/certificates) to devices as environment variables. This allows devices to securely interact with Azure IoT Hub without manual credential management per device.Overview of balena Local mode
Local mode is a development environment for balena that allows developers to build and sync code directly to a single device on their local network. It bypasses the balenaCloud build service and deployment pipeline by using the Docker daemon on the device itself to build container images. The device Supervisor then starts these containers locally.Set up a fleet for Robustel EG5120 i.MX8MP
A fleet is a group of devices sharing the same architecture and running the same code. To create a fleet for the Robustel EG5120 i.MX8MP:
- Log into the balenaCloud dashboard.
- Click Create fleet.
- Enter a fleet name.
- Select Robustel EG5120 i.MX8MP as the device type.
- Click Create new fleet.
Set up a fleet for Nvidia Jetson Xavier
A fleet is a group of devices sharing the same architecture that run the same code. To create a fleet for Nvidia Jetson Xavier:
- Log into the balenaCloud dashboard.
- Click Create fleet.
- Enter a fleet name.
- Select Nvidia Jetson Xavier as the device type.
- Click Create new fleet.
Create a fleet for Raspberry Pi 4 (64-bit)
A fleet is a group of devices sharing the same architecture that run the same code. To create one:
- Log into the balenaCloud dashboard.
- Click Create fleet.
- Enter a fleet name.
- Select Raspberry Pi 4 (using 64bit OS) as the device type.
- Click Create new fleet.
Access hardware interfaces in single-container fleets
In single-container fleets, containers are run in privileged mode by default. This provides automatic access to/devand hardware interfaces like GPIO, I2C, and SPI, allowing hardware modules to be used as they would be in a standard Linux environment.Create a balenaCloud fleet for Raspberry Pi CM4 IO Board
A fleet is a group of devices sharing the same architecture and running the same code. To create a fleet for a Raspberry Pi CM4 IO Board:
- Log into the balenaCloud dashboard.
- Click Create fleet.
- Enter a fleet name.
- Select Raspberry Pi CM4 IO Board as the device type.
- Click Create new fleet.