RK3588
Rockchip's flagship AIoT SoC: octa-core Cortex-A76/A55, a 6 TOPS NPU, 8K video and the richest high-speed I/O in the family (PCIe 3.0 x4, dual HDMI 2.1 out, HDMI input, SATA, dual GbE MACs).
- 4× Cortex-A76 + 4× Cortex-A55
- 6 TOPS NPU (3 cores)
- 8K@60 decode
- PCIe 3.0 x4
- HDMI 2.1 ×2 + HDMI RX
Specifications
| Architecture | ARMv8.2-A, DynamIQ big.LITTLE |
|---|---|
| CPU | 4× Cortex-A76 up to 2.4 GHz + 4× Cortex-A55 up to 1.8 GHz |
| GPU | Arm Mali-G610 MP4 (OpenGL ES 3.2, Vulkan 1.2, OpenCL 2.2) |
| NPU | 6 TOPS (INT8), 3 cores; INT4/INT8/INT16/FP16 |
| Memory | LPDDR4 / LPDDR4X / LPDDR5, up to 32 GB |
| Storage | eMMC 5.1, SD 3.0, SPI NOR/NAND, SATA 3.0 (combo PHY), NVMe over PCIe |
| Video decode | 8K@60 H.265 / VP9 / AV1, 8K@30 H.264 |
| Video encode | 8K@30 H.264 / H.265 |
| Display | HDMI 2.1 ×2, DP 1.4 ×2 (via USB-C), eDP 1.3, MIPI DSI ×2; up to 4 displays |
| Camera / ISP | 48 MP ISP, multiple MIPI CSI-2 D-PHY/C-PHY inputs |
Interfaces
| PCIe | PCIe 3.0 x4 (bifurcation 1×4 / 2×2 / 4×1) + 3× PCIe 2.1 x1 (shared combo PHY) |
|---|---|
| USB | USB 3.1 Gen1 ×2 (Type-C/DP alt-mode capable), USB 3 host ×1 (combo PHY), USB 2.0 host ×2 |
| Ethernet | 2× GMAC (RGMII, 10/100/1000) |
| SATA | Up to 3× SATA 3.0 via combo PHY |
| MIPI | MIPI CSI-2 inputs (D-PHY and C-PHY), MIPI DSI ×2 |
| HDMI input | HDMI 2.0 RX, 4K@60 |
| I2C / SPI / UART | I2C ×9, SPI ×5, UART ×10 |
| GPIO / PWM | 5 GPIO banks, PWM ×16 |
| Other | CAN ×3, I2S ×4, PDM, SPDIF, SARADC, SDIO 3.0 |
Interface counts depend on pin-muxing and combo-PHY configuration. Verify against the official RK3588 datasheet / TRM.
Development
Vendor BSP kernel 5.10 and 6.1 are production-ready. Mainline has boot, storage, USB, PCIe, Ethernet, HDMI output and GPU (Panthor) support; check the mainline status notes for multimedia pieces.
Rockchip Android SDKs for 12, 13 and 14 exist and are distributed via board vendors (Radxa, Firefly, FriendlyElec) and Rockchip partners.
Vendor U-Boot (next-dev) and mainline U-Boot both support RK3588; mainline needs the DDR init blob and BL31 from rkbin (or TF-A).
Board DTS files include rk3588.dtsi / rk3588s.dtsi. Most bring-up work is pinctrl, regulators, PCIe/PHY modes and camera graphs.
Supported by the Rockchip Linux SDK (Buildroot-based) and by upstream Buildroot defconfigs for popular boards.
meta-rockchip provides machine configs for RK3588 boards.
Operating systems
Typical use cases
- Edge AI boxes and NVRs
- 8K signage and multi-display kiosks
- Robotics and machine vision
- ARM PCs, servers and NAS
- Industrial HMI with PCIe expansion
RK3588 Tutorials
Android Kiosk Mode on Rockchip Devices (Lock Task, Device Owner, Boot to App)
Turn a Rockchip Android board into a single-purpose kiosk: device-owner provisioning, lock-task mode, booting straight into your app, and what to bake into the ROM instead.
Build Mainline U-Boot for Rockchip (RK3588, RK3568, RK3399)
Build a mainline U-Boot image with TF-A and the Rockchip DDR blob, then write it to SD, eMMC or SPI flash.
Build the Rockchip Linux Kernel (Vendor BSP and Mainline)
Cross-compile a Rockchip kernel on an x86 host, install the Image, DTB and modules, and know when to choose the vendor BSP or mainline.
Configure GPIO on Rockchip: Pin Numbering, Device Tree and libgpiod
Convert GPIO3_B5-style names to Linux line numbers, drive pins with libgpiod, and describe them properly in the device tree with pinctrl and overlays.
Convert YOLO to RKNN and Run It on the RK3588 NPU
Export YOLO to ONNX, quantise and convert it to .rknn with RKNN-Toolkit2 on an x86 host, then run it on the board with RKNN-Toolkit-Lite2, using all three RK3588 NPU cores.
Flash Any Rockchip Board with rkdeveloptool (Linux & macOS)
Build rkdeveloptool from source, set up udev permissions, and flash raw images, partitions and SPI flash on Rockchip boards.
How to Identify a Rockchip SoC (from Linux, U-Boot, USB or the Chip Marking)
Five quick ways to find out exactly which Rockchip SoC and board you are dealing with, even on an unknown device.
RK3588 PCIe Not Detecting NVMe: A Step-by-Step Debug Checklist
NVMe missing from lsblk? Work through software, device tree, power/reset and signal integrity in the right order to find why the PCIe link isn't training.
Rockchip Boot Process Explained: BootROM, TPL, SPL, BL31, U-Boot and Linux
A stage-by-stage walkthrough of how a Rockchip SoC boots, where each piece lives on flash, and how to tell from the serial log which stage failed.
Boards using RK3588
Radxa ROCK 5B
Radxa
- RAM4 / 8 / 16 / 32 GB LPDDR4X
- 以太网1× 2.5 GbE
- PCIeM.2 M-key PCIe 3.0 x4; M.2 E-key
Orange Pi 5 Plus
Shenzhen Xunlong (Orange Pi)
- RAM4 / 8 / 16 / 32 GB LPDDR4/4X
- 以太网2× 2.5 GbE
- PCIeM.2 M-key PCIe 3.0 x4; M.2 E-key
FriendlyElec NanoPC-T6
FriendlyElec
- RAM4 / 8 / 16 GB LPDDR4X
- 以太网2× 2.5 GbE
- PCIeM.2 M-key PCIe 3.0 x4; M.2 E-key; mini-PCIe (4G LTE)
Firefly Core-3588J
Firefly (T-Chip)
- RAMLPDDR4 (multiple capacities)
- 以太网GMAC routed to carrier
- PCIePCIe 3.0 x4 + PCIe 2.1 routed to carrier
Related projects
Compare RK3588
RK3588 FAQ
What CPU does the RK3588 have?
The RK3588 uses 4× Cortex-A76 up to 2.4 GHz + 4× Cortex-A55 up to 1.8 GHz (ARMv8.2-A, DynamIQ big.LITTLE), built on a 8 nm process.
Does the RK3588 have an NPU, and how many TOPS?
Yes. The RK3588 NPU is rated at 6 TOPS (INT8), 3 cores; INT4/INT8/INT16/FP16. Models are converted to .rknn with RKNN-Toolkit2 and run with the RKNN runtime.
What memory does the RK3588 support?
LPDDR4 / LPDDR4X / LPDDR5, up to 32 GB.
Does the RK3588 support PCIe and NVMe SSDs?
Yes: PCIe 3.0 x4 (bifurcation 1×4 / 2×2 / 4×1) + 3× PCIe 2.1 x1 (shared combo PHY). NVMe SSDs work on PCIe lanes routed to an M.2 M-key slot, provided the controller, PHY, power and reset are enabled in the device tree.
Which operating systems run on the RK3588?
Linux (vendor 5.10 / 6.1 BSP), Mainline Linux (growing support), Android 12 / 13 / 14, Debian, Ubuntu, Buildroot, Yocto. Vendor BSP kernel 5.10 and 6.1 are production-ready. Mainline has boot, storage, USB, PCIe, Ethernet, HDMI output and GPU (Panthor) support; check the mainline status notes for multimedia pieces.
What video can the RK3588 decode and encode?
Decode: 8K@60 H.265 / VP9 / AV1, 8K@30 H.264. Encode: 8K@30 H.264 / H.265.
Which boards use the RK3588?
Boards in our database include Radxa ROCK 5B, Orange Pi 5 Plus, FriendlyElec NanoPC-T6, Firefly Core-3588J. See the hardware database for full specs.
What is the RK3588 used for?
Typical applications: Edge AI boxes and NVRs, 8K signage and multi-display kiosks, Robotics and machine vision, ARM PCs, servers and NAS, Industrial HMI with PCIe expansion.
Documentation & official resources
- Rockchip official website
- rockchip-linux on GitHub (kernel, U-Boot, rkbin, tools)
- rkbin: DDR init, loaders and BL31 blobs
- Mainline U-Boot: Rockchip board docs
- linux-rockchip kernel tree (mainline SoC support)
- Collabora RK3588 mainline status notes
- RKNN-Toolkit2 & runtime (airockchip)
- RKNN Model Zoo: YOLO, OCR and more examples
- RKLLM: LLM runtime for Rockchip NPUs
Have a RK3588 question not covered here? Ask the community or browse RK3588 questions.
发现错误或有补充? 提出改进建议.