Skip to main content

Rubik Pi 3

Affordable Qualcomm QCS6490 edge-AI SBC, production-ready with Avocado OS + Avocado Connect.

Thundercomm Rubik Pi 3 single-board computer
  • 12 TOPSAI Performance
  • QCS6490Octa-core Kryo 670 (6nm)
  • 8GBLPDDR4x Memory
  • 128GBUFS 2.2 Storage
  • Adreno 643LGPU
  • 100 x 75 mmPi-style form factor

Overview​

The Thundercomm Rubik Pi 3 is a compact single-board computer built on the Qualcomm QCS6490 6nm SoC. It features a Raspberry Pi-like form factor with a 40-pin header, dual camera connectors, HDMI + USB-C display output, and Wi-Fi 5/BT 5.2. At approximately 4-8W power consumption, it delivers strong AI inference capability per watt — making it an affordable platform for on-device AI development and edge product prototyping.

With Avocado OS it becomes a production target: an immutable, composable Linux base with secure OTA updates, rollback protection, and fleet management through Avocado Connect.

Specifications​

SpecificationValueNotes
ProcessorQualcomm QCS6490, Kryo 670 octa-core6nm process
AI Performance12 TOPSHexagon Processor with fused AI-accelerator
GPUAdreno 643L
Memory8GB LPDDR4x
Storage128GB UFS 2.2
Display (HDMI)1x HDMI 1.4 (4K@30)
Display (USB-C)1x USB-C DP 1.4 (4K@60)
Camera2x 22-pin 4-lane MIPI CSIRaspberry Pi compatible
USB1x USB 2.0, 2x USB 3.0, 1x USB 3.1 Gen1 Type-C
EthernetGigabit Ethernet
WirelessWi-Fi 5, Bluetooth 5.2
ExpansionM.2 M-Key, 40-pin GPIO header
Dimensions100 x 75 mm
Power~4W (CPU) / ~8W (full load)USB-C PD 3.0 (12V/3A) input
OS SupportAvocado OS, Ubuntu, Yocto Linux, Android

Use Cases​

  • Affordable AI development and education platform for embedded AI applications
  • Smart display and kiosk prototyping with dual-camera computer vision
  • Edge AI product prototyping with Raspberry Pi ecosystem compatibility

Getting Started​

Init, Install, & Build​

Follow the Any Supported Target instructions under Getting Started to begin. This target is rubikpi3. The provisioning specifics are below.

Provision​

Provisioning flashes Avocado OS to the board's onboard UFS storage over USB while the device is in EDL mode. You'll need three cables: a USB-C power cable into the power input (port 10) — PD 3.0, 12V/3A; bus power is not enough; a USB-C data cable for flashing on the USB-C port (port 5); and a Micro-USB cable for the debug UART on the Micro-USB port (port 2). Leave the Micro-USB cable disconnected while flashing.

Put the board in EDL mode (hold the EDL button (port 12) while connecting power), then build and provision the dev runtime using the ufs profile.

Host machine
avocado build
avocado provision -r dev --profile ufs

Hypervisor selection (GPU/NPU vs. virtualization)​

The QCS6490 boots one of two hypervisor configurations, chosen at provision time and written to the boot partitions. This is a hardware trade-off on this SoC — you get accelerators or guest virtual machines, not both:

AVOCADO_HYPERVISOR/dev/kvm (guest VMs)GPU / NPU (Adreno, Hexagon DSP)
gunyah (default)noyes
kvmyesno

Under Gunyah, TrustZone performs Peripheral Authentication (PAS) and hands the GPU and DSP their protected memory carveouts, so their firmware loads. Under KVM, Linux owns EL2 and there is no Qualcomm secure-memory mediation, so PAS rejects that firmware (error -22) and the GPU and DSP stay offline — but /dev/kvm works for running guest VMs.

Gunyah is the precondition for the accelerators rather than the whole story: /dev/dri and /dev/fastrpc also need the board support extension to ship the GPU firmware and the FastRPC userspace.

The default is Gunyah. To provision a board for virtualization instead, pass the environment variable through to the provisioning process:

Host machine
avocado provision -r dev --profile ufs --env AVOCADO_HYPERVISOR=kvm

The selection is a boot-partition choice; it is independent of A/B OS updates (both slots share it) and only changes on a reflash or an explicit re-provision.

Run​

Once provisioning completes, disconnect the USB-C data cable, leave USB-C power connected, and power-cycle the board — it boots Avocado OS from the onboard UFS storage. Connect the Micro-USB cable for the debug UART console. The root user is passwordless in the dev runtime used by this guide.