Board overview: RSB‑3810 is a 2.5” Pico‑ITX SBC powered by MediaTek Genio 1200 (MT8395) featuring:
- CPU: Octa-core (4x Cortex-A78 @ 2.2GHz + 4x Cortex-A55 @ 2.0GHz)
- GPU: Mali-G57 MC5
- NPU: Up to 4.8 TOPS
- RAM: 8GB LPDDR4X onboard
- Storage: 32GB eMMC 5.1
- Connectivity: 2x GbE, WiFi 6/BT 5.2 support via M.2
- I/O: HDMI 2.0, MIPI-DSI/LVDS, USB 3.0, UART, I²C, SPI
- Expansion: UIO40‑Express connector for additional I/O
Board setup (vendor docs)
- Platform overview and OS support: Advantech ESS Wiki – RSB‑3810
- General SBC bring‑up/BIOS/Linux materials: Advantech Academy – SBC intro
Prerequisites
- RSB‑3810 with power supply
- microSD card or eMMC‑backed OS (Ubuntu 22.04 LTS or Debian recommended)
- Serial console cable (optional, but recommended for debugging)
- Network access
- A Linux/macOS workstation for initial setup
Quick path: File updates (no A/B)
Use Thistle’s file‑update mode to ship signed files and app bundles without changing partitions. On Advantech’s Ubuntu, EFI is typically mounted at/boot/efi
; we will use that as the persistent directory.
- Download tools
- Workstation (TRH):
- Device (TUC on RSB‑3810, aarch64):
- Initialize and release a simple file update on the workstation
- Copy config to device and run client
OS preparation and partitioning (A/B)
- Install a supported Linux OS image for RSB‑3810 (e.g., Ubuntu provided by Advantech).
- Boot the board and ensure you have SSH access.
- Ensure storage has three partitions available: one FAT32/boot partition and two equally‑sized ext4 rootfs partitions (A/B). If your image ships with a single rootfs, add a second partition for B and resize as needed.
lsblk
and parted
on the board (adapt device as needed). The Advantech Ubuntu image typically uses eMMC with multiple partitions. For A/B setup, you’ll need to identify your rootfs partition (often mmcblk0p9
) and create a second partition for B. This is safest from a recovery image (microSD) so the rootfs is not mounted:
Verify persistent EFI (/boot/efi)
On Advantech’s Ubuntu image for RSB-3810, the EFI system partition (typicallymmcblk0p8
) is mounted at /boot/efi
by default. This partition is formatted as FAT32 and is essential for bootloader updates. Verify and, if needed, ensure it’s in /etc/fstab
:
The A/B layout is required for fail‑safe updates. If your deployment cannot repartition, you can still use Thistle’s file update mode, but this guide focuses on rootfs A/B.
Thistle Tools
If you didn’t complete the “Quick path” above, download the tools as shown there. Use/boot/efi
as the persistent directory on this Ubuntu image.
What runs where
- TRH (Thistle Release Helper): runs on your workstation to prepare and release bundles
- TUC (Thistle Update Client): runs on the RSB‑3810 device to install bundles
Download TRH on the workstation (example)
Download TUC on the device (example)
If the device has no outbound internet access, download the TUC binary on the workstation and transfer it via
scp
, then finish on the device shell:Initialize and Prepare a Release
- Initialize a release workspace and choose a persistent directory (use
/boot/efi
on this Ubuntu image so it survives rootfs swaps). This will generateconfig.json
with credentials:
- Build your target rootfs image
myrootfs.img
(or use an existing base image). Prepare it as the update payload:
- Release the bundle to Thistle Backend:
Device Configuration
Deploy the generated device config to the RSB‑3810 and set A/B parameters.Run an Update Cycle
Execute the Update Client on the board:Notes
- Ensure your boot firmware (U‑Boot) loads the kernel and rootfs from the active A/B partition. The RSB-3810’s U-Boot (provided as UEFI firmware) may need configuration for A/B switching. See the Custom Bootloader Integration and Thistle U‑Boot pages.
- For RSB-3810 specifically, U-Boot environment variables can be accessed via serial console at boot (interrupt with any key when prompted).
- If you don’t need boot‑time rollback, the Quick path (file updates) is sufficient.