Orange Pi 3B (Rockchip RK3566)

Shenzhen Xunlong Software CoSBClinux

⚡ The essentials in 60 seconds

The Orange Pi 3B, introduced in August 2023 by Shenzhen Xunlong Software Co., Ltd., stands out in the crowded landscape of single-board computers by offering a compelling balance of performance, connectivity, and affordability. At its heart lies the Rockchip RK3566 system-on-chip, a 22-nanometer processor that integrates a quad-core Arm Cortex-A55 CPU running at up to 1.8 GHz. For those new to embedded computing, the Cortex-A55 is a 64-bit architecture designed for energy efficiency, making it ideal for tasks that require sustained operation without excessive heat or power consumption. The board is paired with an Arm Mali-G52 2EE graphics processing unit, which supports modern graphics APIs like OpenGL ES 3.2 and Vulkan 1.1, ensuring smooth visual interfaces and basic gaming capabilities. Beyond traditional graphics, the RK3566 includes a neural processing unit capable of 0.8 trillion operations per second at INT8 precision, allowing for local artificial intelligence tasks such as image recognition or voice processing, alongside a video processing unit that handles 4K video decoding at 60 frames per second.

One of the most significant features of the Orange Pi 3B is its storage flexibility, particularly the inclusion of an M.2 M-Key slot. This connector allows users to attach solid-state drives using either SATA III or PCIe 2.0/2.1 x1 NVMe protocols. While the interface is limited to PCIe Gen2 speeds with a theoretical maximum throughput of 500 MB/s, this is still a substantial upgrade over traditional microSD cards, offering faster boot times and more reliable data handling for applications like network-attached storage or media servers. The board supports multiple storage options simultaneously, including a microSD slot, an optional eMMC module socket, and 16 or 32 MB of SPI NOR flash. This variety enables complex boot configurations, such as loading the bootloader from SPI flash while running the operating system from an NVMe SSD, a setup officially supported by the vendor for high-performance scenarios.

In terms of physical design, the Orange Pi 3B adheres to the Raspberry Pi 3B form factor, measuring approximately 56 by 89 millimeters. This "business card" size makes it compatible with many existing cases and cooling solutions designed for the Raspberry Pi 3, providing a drop-in upgrade path for users seeking more power or different connectivity options. The board features a 40-pin GPIO header that is electrically compatible with the Raspberry Pi standard, exposing up to 28 general-purpose input/output pins along with interfaces for UART, I2C, SPI, and PWM. It is important to note for hardware enthusiasts that while the header is physically compatible, the software mapping differs, and notably, no analog-to-digital converter lines are broken out on this header. Additionally, users should be aware that there are two hardware revisions, v1.1 and v2.1, which have different internal wiring for the Ethernet and Wi-Fi modules. Using the wrong device tree configuration for your specific revision can result in non-functional networking, so verifying your board version is crucial for successful setup.

Connectivity options are robust for a board in this price range. The Orange Pi 3B includes a Gigabit Ethernet port, which is essential for stable network performance in server or desktop applications. Wireless connectivity is provided by a Wi-Fi 5 (802.11ac) dual-band module and Bluetooth 5.0, though there is some discrepancy in early documentation regarding the exact chip model, with official sources citing the AP6256 module. For peripheral connections, the board offers one USB 3.0 host port, two USB 2.0 host ports, and a USB Type-C port that serves as both the power input and an OTG device port. The power requirement is strictly 5 volts at 3 amps, and the board does not support USB Power Delivery contracts, so users must ensure their power supply meets these specifications to avoid instability. Video output is versatile, featuring HDMI 2.0 for 4K displays, eDP 1.3 for laptop-style panels, and MIPI DSI/CSI interfaces for small displays and cameras, making it suitable for digital signage or kiosk projects.

Software support for the Orange Pi 3B has matured significantly since its launch. The board is supported in mainline Linux kernels starting from version 6.11, which means it benefits from upstream community development and long-term stability. Armbian, a popular community-driven operating system distribution, offers community-supported images for this board, utilizing mainline U-Boot and kernel versions. For users requiring specific hardware acceleration for the NPU or advanced video encoding, the vendor provides official images for Android, Ubuntu, and Debian that include the necessary closed-source binary blobs. However, it is worth noting that the quality of these official images can vary, and the community generally recommends Armbian for general-purpose use due to its consistent updates and mainline kernel support. Recent updates have addressed previous limitations, such as enabling I2C on the GPIO header in newer kernel versions, demonstrating the active development surrounding this platform.

Despite its strengths, potential users should be aware of certain limitations. The PCIe interface for the NVMe slot is limited to Gen2 speeds, meaning that high-end Gen3 or Gen4 SSDs will not operate at their full potential, so budget drives are often the most cost-effective choice. Furthermore, the board’s power consumption and thermal characteristics are not officially specified in detail, though the 22nm process of the RK3566 suggests moderate efficiency. Users planning for 24/7 operation, such as in a NAS setup, should monitor temperatures and consider adequate cooling. The presence of multiple hardware revisions and the need for specific firmware files for the Wi-Fi module can also introduce complexity for beginners. Nevertheless, the Orange Pi 3B remains a highly competitive option for developers and hobbyists looking for a compact, powerful, and versatile single-board computer with modern storage and connectivity features at an accessible price point.

Forum (1 topic) →

AttrSpecsverified
socRockchip RK3566, 22 nm. CPU: quad-core Arm Cortex-A55 (ARMv8-A, 64-bit) @ up to 1.8 GHz. GPU: Arm Mali-G52 2EE — OpenGL ES 1.1/2.0/3.2, OpenCL 2.0, Vulkan 1.1, 2D acceleration (official page). NPU: 0.8 TOPS @ INT8 (RKNN; Caffe/TF/TFLite/ONNX/PyTorch/ Keras/Darknet model conversion). VPU: 4K@60 H.265/H.264/VP9 decode, 1080p@100 H.265 / 1080p@60 H.264 encode; 8 MP ISP with HDR. PMIC: Rockchip RK809-5 (official page; also in the mainline DTS at i2c0 address 0x20).? unverified
ram2 / 4 / 8 GB LPDDR4/LPDDR4x (official page).? unverified
storagemicroSD slot; eMMC module socket (16/32/64/128/256 GB); 16/32 MB SPI NOR flash; M.2 M-Key slot for SATA III or PCIe 2.0/2.1 x1 NVMe SSD — the official wiki states the slot is electrically PCIe2.0 x1, "theoretical maximum speed 500 MB/s"; PCIe 3.0/4.0 SSDs work but run at Gen2 x1 speed (Orange Pi wiki, Orange Pi 3B §2.6, retrieved 2026-10-13).✔
networking10/100/1000M Ethernet with YT8531C PHY (official page; GMAC1/RGMII in the mainline DTS). Wi-Fi 5 (802.11ac dual-band) + BT 5.0/BLE, module AP6256 (official page; mainline DTS binds brcm,bcm43456-fmac on the SDIO bus and brcm,bcm4345c5 Bluetooth on uart1). > ? unverified
usb1× USB 3.0 host, 2× USB 2.0 host, 1× USB 2.0 OTG/device-capable port (official page).? unverified
video_out_cameraHDMI 2.0 up to 4K@60, 2-lane MIPI DSI, eDP 1.3; 1× 2-lane MIPI CSI. Audio: 3.5 mm jack (RK809 codec via I2S, "Analog RK809" sound card in mainline DTS) + HDMI audio.? unverified
gpio_40_pin_headerRaspberry-Pi-compatible 40-pin header, up to 28 GPIOs plus UART, I2C, SPI, PWM (CNX; official page lists "GPIO, UART, I2C, SPI, PWM"). No ADC/DAC lines are broken out on the header per the official pin definition (pin map image cited by the kernel patch: orangepi.org/img/pi3b/0719-pi3b-19.png). Header I²C is on pins 3/5 = I2C2_M1 (enabled in mainline only in Nov 2025, see Problems).✔
miscMaskROM, Reset and Power keys; 2-pin 5 V fan connector; 2-pin RTC battery connector.? unverified
powerUSB Type-C, 5 V / 3 A (official page). The board is 5 V only — no USB-PD contract is mentioned anywhere in official material.? unverified
consumption? unverified
temperature✔
pcb56 × 89 mm (official page; CNX says 85 × 56 mm — same footprint, digits transposed in one of the two sources), ~49–52 g.? unverified
  • Manufacturer: Shenzhen Xunlong Software Co., Ltd. (brand: Orange Pi). Devicetree compatible string is xunlong,orangepi-3b (mainline DTS, retrieved 2026-10-13).
  • Year introduced: 2023. Announced early August 2023, deliveries started 2023-08-15 (CNX Software, 2023-08-05, retrieved 2026-10-13). Armbian's board config also records INTRODUCED="2023" (armbian/build config/boards/orangepi3b.csc, retrieved 2026-10-13).
  • Launch price (Aug 2023, Amazon pre-order, per CNX): - 2 GB — $34.99 · 4 GB — $39.99 · 8 GB — $50.99 - with 256 GB eMMC module: $51.99 / $57.99 / $67.99; AliExpress from ~$30 (CNX 2023-08-05). The "≈$60 with NVMe" reputation comes from the 8 GB SKU plus a cheap 2280/2242 SSD, since the M.2 slot is on-board at no extra cost.
  • Status: Active. Listed on the official product page (fetched live 2026-10-13): orangepi.org Orange Pi 3B.
  • Variants: RAM SKUs of 2 / 4 / 8 GB LPDDR4/4x; optional eMMC module 16–256 GB; 16 or 32 MB SPI flash (official product page). Two hardware revisions exist — v1.1 and v2.1 — with different Ethernet-PHY and Wi-Fi wiring; mainline carries separate device trees rk3566-orangepi-3b-v1.1.dts / rk3566-orangepi-3b-v2.1.dts (rockchip Makefile, retrieved 2026-10-13). Not to be confused with the 2019 Allwinner H6 Orange Pi 3 (CNX).

+ Strengths

  • M.2 M-Key NVMe/SATA on a ~$35–60 board — the headline feature; at launch CNX called it the differentiator vs the Geniatech XPI-3566, the only earlier Pi-3B-form-factor RK3566 board (CNX). Slot is switchable between SATA III and PCIe 2.1 x1 NVMe (official page).
  • Raspberry Pi 3B form factor / CM4-style density: 56 × 89 mm "business card" board with Pi-compatible 40-pin header — a drop-in upgrade path for Pi 3B cases/cooling; competes with the Radxa ROCK 3C and ASUS Tinker Board 3, also RK3566-based (CNX Tinker Board 3 article, retrieved 2026-10-13). (The sibling Radxa ROCK 3B uses the bigger RK3568 @ 2.0 GHz with the same Mali-G52 2EE, radxa.com/products/rock3/3b.)
  • Four independent storage classes (microSD, eMMC module, SPI NOR, M.2 SSD) — rare at this price; SPI NOR enables network/SPI-boot flows and Armbian BOOT_SUPPORT_SPI=yes.
  • 0.8 TOPS NPU + full VPU (4K60 decode) in a Pi-3B outline; eDP 1.3 output (laptop-panel friendly) alongside HDMI 2.0 and MIPI DSI/CSI (official page).
  • Up to 8 GB LPDDR4x — the largest RAM option in the Pi-3B-form-factor RK3566 class (CNX).
  • Genuine mainline + Armbian mainline-U-Boot support (kernel 6.11+, board config quoted above), which the older Orange Pi PC generation never had.

− Weaknesses

  • M.2 is only PCIe 2.1 x1 (~500 MB/s theoretical). Fast Gen3/Gen4 NVMe drives are capped; buy a cheap drive. Official wiki §2.6 (Orange Pi wiki, retrieved 2026-10-13).
  • Two hardware revisions (v1.1 / v2.1) with different wiring. v2.1 moved the Ethernet PHY to MDIO address 1 with a different reset GPIO and wires the AP6256 to SDIO "sdmmc1" with its own regulator; using the wrong DT gives dead Ethernet and/or no Wi-Fi. Evidence: separate mainline files rk3566-orangepi-3b-v1.1.dts / -v2.1.dts (retrieved 2026-10-13).
  • Header I²C was unusable on mainline until late 2025. I2C2 (header pins 3/5) was only enabled by "arm64: dts: rockchip: Enable i2c2 on Orange Pi 3B" (Michael Opdenacker, committed 2025-11-21); the commit notes these are the only header pins with I²C that don't conflict with other blocks (commit b92c4eae, retrieved 2026-10-13). On kernels 6.11–6.17 you need your own DT overlay for I²C devices on the header.
  • NVMe vs SATA needed two U-Boot images / wrong overlay prefix on Armbian until PR "orangepi3b: one U-Boot image for NVMe and SATA, fix overlay prefix" (armbian/build#10896, retrieved 2026-10-13); related overlay-name bug: "[Bug]: dt_makefile_patcher ignores dtb filenames with periods" (v1.1/v2.1 naming) (armbian/build#7187). Symptom: board boots to NVMe but not SATA (or vice-versa) on older Armbian builds — update.
  • Vendor-kernel GPU stack is a closed blob; mainline uses panfrost. The DTS enables the Mali-G52 (mali-supply = <&vdd_gpu>) under the open panfrost driver (dtsi); hardware video decode in Chromium on Armbian regressed at one point (armbian/build#9175). RKNN NPU runtime is only packaged for the vendor kernel images.
  • Wi-Fi is a Broadcom SDIO part needing board firmware. brcmfmac needs brcmfmac43456-sdio… firmware + NVRAM for the xunlong board match; missing files = Wi-Fi adapter absent after mainline kernel updates.
  • Uneven image quality across the many official OS downloads — CNX's launch warning (CNX); the vendor wiki itself is the reference for which image to use per interface.
  • Documentation drift: CNX lists the Wi-Fi module as CDTech 20U5622/AW859A while the official page and mainline DTS say AP6256/BCM43456 (see SoC & specs note); dimensions are quoted differently by the two primary sources. Verify against your silkscreen revision.
  • Retour d'expérience expert expert — expert-pi-like
    • Retour d'expérience sur l'Orange Pi 3B. Le format Pi 3B avec le slot M.2 intégré est vraiment le point fort pour transformer un boîtier existant. Attention toutefois, le slot est limité au PCIe 2.1 x1, donc ne comptez pas sur les débits d'un SSD Gen4, c'est plafonné autour de 500 MB/s théoriques. J… — expert-pi-like
    • Salut expert-pi-like, merci pour ce retour. Justement, je débute avec une v2.1 et j'ai galéré au démarrage. Je pensais que mon module NVMe était HS mais en lisant les tickets Armbian, j'ai vu qu'il y avait un souci de prefixe d'overlay et qu'il fallait parfois deux images U-Boot différentes selon q… — maker-du-93
    • Pour compléter, si vous passez sous mainline (pas le kernel vendor), préparez-vous à chasser les firmware WiFi. Le module AP6256 (BCM43456) nécessite les fichiers brcmfmac43456-sdio spécifiques. J'ai eu la carte wifi qui disparaissait après une mise à jour du noyau car le fichier NVRAM correspondan… — linux-ouin-ouin

Community feedback and projects

  • Official NVMe-boot build (SPI flash + NVMe SSD)

    Official NVMe-boot build (SPI flash + NVMe SSD) — vendor tutorial to boot Linux from an (unverified au 2026-10-13) — internal hosted on internal site, live status verified on 2026-10-13. Project documented in the orangepi-3b (SBC) sheet; role: deepen hands-on…

Content not available yet.

  • M.2 is only PCIe 2.1 x1 (~500 MB/s theoretical). Fast Gen3/Gen4 NVMe drives are capped; buy a cheap drive. Official wiki §2.6 (Orange Pi wiki, retrieved 2026-10-13).
  • Two hardware revisions (v1.1 / v2.1) with different wiring. v2.1 moved the Ethernet PHY to MDIO address 1 with a different reset GPIO and wires the AP6256 to SDIO "sdmmc1" with its own regulator; using the wrong DT gives dead Ethernet and/or no Wi-Fi. Evidence: separate mainline files rk3566-orangepi-3b-v1.1.dts / -v2.1.dts (retrieved 2026-10-13).
  • Header I²C was unusable on mainline until late 2025. I2C2 (header pins 3/5) was only enabled by "arm64: dts: rockchip: Enable i2c2 on Orange Pi 3B" (Michael Opdenacker, committed 2025-11-21); the commit notes these are the only header pins with I²C that don't conflict with other blocks (commit b92c4eae, retrieved 2026-10-13). On kernels 6.11–6.17 you need your own DT overlay for I²C devices on the header.
  • NVMe vs SATA needed two U-Boot images / wrong overlay prefix on Armbian until PR "orangepi3b: one U-Boot image for NVMe and SATA, fix overlay prefix" (armbian/build#10896, retrieved 2026-10-13); related overlay-name bug: "[Bug]: dt_makefile_patcher ignores dtb filenames with periods" (v1.1/v2.1 naming) (armbian/build#7187). Symptom: board boots to NVMe but not SATA (or vice-versa) on older Armbian builds — update.
  • Vendor-kernel GPU stack is a closed blob; mainline uses panfrost. The DTS enables the Mali-G52 (mali-supply = <&vdd_gpu>) under the open panfrost driver (dtsi); hardware video decode in Chromium on Armbian regressed at one point (armbian/build#9175). RKNN NPU runtime is only packaged for the vendor kernel images.
  • Wi-Fi is a Broadcom SDIO part needing board firmware. brcmfmac needs brcmfmac43456-sdio… firmware + NVRAM for the xunlong board match; missing files = Wi-Fi adapter absent after mainline kernel updates.
  • Uneven image quality across the many official OS downloads — CNX's launch warning (CNX); the vendor wiki itself is the reference for which image to use per interface.
  • Documentation drift: CNX lists the Wi-Fi module as CDTech 20U5622/AW859A while the official page and mainline DTS say AP6256/BCM43456 (see SoC & specs note); dimensions are quoted differently by the two primary sources. Verify against your silkscreen revision.

Code library — examples written for this board

  • clignotante.py Python

    The getting-underway script on an SBC: an LED on the GPIO header blinks at 1 Hz. python3-gpiod drives the GPIO chip straight through the kernel, with no proprietary library.

  • bouton-gpio.py Python

    A button on the GPIO header triggers an action on press and release. Generic version that polls the gpiod line directly, with a 30 ms software debounce filter.

  • capteur-i2c.sh Bash

    The Linux reflex for any I2C sensor: scan the bus with i2cdetect, confirm the chip is there, then read a few registers with i2cget. Direct terminal output without writing a line of application code.

  • surveillance-temperature.sh Bash

    With zero dependencies, this script reads the thermal sensor exposed by the Linux kernel, logs CPU temperature and frequency to CSV and prints an alert past a threshold. Perfect to size passive cooli…

  • capteur-dht11.py Python

    The Adafruit CircuitPython driver runs on stock Linux: it bit-bangs the DHT 1-wire protocol through libgpiod. The script prints temperature and humidity every 2 s, shrugging off invalid frames withou…

  • servo-pwm-sysfs.sh Bash

    The Linux kernel PWM interface (sysfs) is identical on every board: 20 ms period, 0.5-2.5 ms pulse. This bash script sweeps a servo over 3 cycles then cuts power to stop the buzzing.

  • serveur-web-capteur.py Python

    With no external dependency, the board becomes a web server: an HTML page shows SoC temperature and uptime, a JSON endpoint exposes them to dashboards. The network reflex for monitoring a headless SB…

  • reseau-ethernet.sh Bash

    In a fixed installation, a static IP avoids hunting the board in the DHCP lease list. The script creates (or fixes) a manual NetworkManager profile on the Ethernet port, then pings the gateway to ver…

  • journal-cron.sh Bash

    The cron + short-script pair is Linux' universal scheduler: every minute, CPU load and temperature are appended to a CSV with built-in rotation. Zero dependencies, zero daemons, survives reboots on i…

  • veilleur-systemd.py Python

    A heartbeat LED plus a per-second service check: the script becomes a systemd daemon with Restart=always, started at boot. The robustness pattern for a headless embedded board.

Examples and repos found online