# Rock-Chip.com

> Rock-Chip.com is an independent engineering resource and community for developers working with Rockchip SoCs (RK3588, RK3588S, RK3576, RK3568, RK3566, RK3399, RV1106, RV1126 and more). It covers embedded Linux, Android BSP, U-Boot, device tree, RKNN/NPU AI, camera/MIPI, PCIe and hardware debugging. It is not affiliated with Rockchip Electronics Co., Ltd.

Full text for AI tools: https://rock-chip.com/llms-full.txt

## SoC database
- [RK3588 specifications and development](https://rock-chip.com/socs/rk3588): 4× Cortex-A76 up to 2.4 GHz + 4× Cortex-A55 up to 1.8 GHz; NPU 6 TOPS
- [RK3588S specifications and development](https://rock-chip.com/socs/rk3588s): 4× Cortex-A76 up to 2.4 GHz + 4× Cortex-A55 up to 1.8 GHz; NPU 6 TOPS
- [RK3576 specifications and development](https://rock-chip.com/socs/rk3576): 4× Cortex-A72 up to 2.2 GHz + 4× Cortex-A53 up to 1.8 GHz; NPU 6 TOPS
- [RK3399Pro specifications and development](https://rock-chip.com/socs/rk3399pro): 2× Cortex-A72 up to 1.8 GHz + 4× Cortex-A53 up to 1.4 GHz; NPU 3 TOPS
- [RK3399 specifications and development](https://rock-chip.com/socs/rk3399): 2× Cortex-A72 up to 1.8–2.0 GHz + 4× Cortex-A53 up to 1.4–1.5 GHz; NPU none
- [RK3288 specifications and development](https://rock-chip.com/socs/rk3288): 4× Cortex-A17 up to 1.8 GHz; NPU none
- [RK3568 specifications and development](https://rock-chip.com/socs/rk3568): 4× Cortex-A55 up to 2.0 GHz; NPU 1 TOPS
- [RK3566 specifications and development](https://rock-chip.com/socs/rk3566): 4× Cortex-A55 up to 1.8 GHz; NPU 0.8 TOPS
- [RK3562 specifications and development](https://rock-chip.com/socs/rk3562): 4× Cortex-A53 up to 2.0 GHz; NPU 1 TOPS
- [RK3528 specifications and development](https://rock-chip.com/socs/rk3528): 4× Cortex-A53 up to 2.0 GHz; NPU none
- [RK3328 specifications and development](https://rock-chip.com/socs/rk3328): 4× Cortex-A53 up to 1.5 GHz; NPU none
- [PX30 specifications and development](https://rock-chip.com/socs/px30): 4× Cortex-A35 up to 1.5 GHz; NPU none
- [RK3326 specifications and development](https://rock-chip.com/socs/rk3326): 4× Cortex-A35 up to 1.5 GHz; NPU none
- [RV1126 specifications and development](https://rock-chip.com/socs/rv1126): 4× Cortex-A7 up to 1.5 GHz + RISC-V MCU; NPU 2 TOPS
- [RV1109 specifications and development](https://rock-chip.com/socs/rv1109): 2× Cortex-A7 up to 1.5 GHz + RISC-V MCU; NPU 1.2 TOPS
- [RK3229 specifications and development](https://rock-chip.com/socs/rk3229): 4× Cortex-A7 up to 1.5 GHz; NPU none
- [RK3128 specifications and development](https://rock-chip.com/socs/rk3128): 4× Cortex-A7 up to 1.3 GHz; NPU none
- [RK3506 specifications and development](https://rock-chip.com/socs/rk3506): 3× Cortex-A7 up to 1.5 GHz + Cortex-M0; NPU none
- [RK3308 specifications and development](https://rock-chip.com/socs/rk3308): 4× Cortex-A35 up to 1.3 GHz; NPU none
- [RV1106 specifications and development](https://rock-chip.com/socs/rv1106): 1× Cortex-A7 up to 1.2 GHz + RISC-V MCU; NPU 1 TOPS
- [RV1103 specifications and development](https://rock-chip.com/socs/rv1103): 1× Cortex-A7 up to 1.2 GHz + RISC-V MCU; NPU 0.5 TOPS

## SoC comparisons
- [RK3588 vs RK3588S](https://rock-chip.com/compare/rk3588-vs-rk3588s): Same CPU, GPU, 6 TOPS NPU and video engines
- [RK3588 vs RK3576](https://rock-chip.com/compare/rk3588-vs-rk3576): RK3588 has far stronger CPU performance (Cortex-A76 vs A72), a faster GPU, 8K video and PCIe 3.0 x4
- [RK3576 vs RK3568](https://rock-chip.com/compare/rk3576-vs-rk3568): RK3576 is a big step up: 8 cores (A72 + A53) vs 4× A55, a 6 TOPS NPU vs 1 TOPS, and 4K@120 display
- [RK3568 vs RK3566](https://rock-chip.com/compare/rk3568-vs-rk3566): Same CPU cluster, GPU and video engines
- [RK3588 vs RK3568](https://rock-chip.com/compare/rk3588-vs-rk3568): RK3588 is the flagship (8 cores, 6 TOPS, 8K video, PCIe 3.0 x4); RK3568 is the cost-effective industrial workhorse (4× A55, 1 TOPS, PCIe 3.0 x2, dual GbE, CAN-FD)
- [RK3588 vs RK3399](https://rock-chip.com/compare/rk3588-vs-rk3399): RK3588 roughly doubles to triples RK3399 CPU throughput, adds a 6 TOPS NPU, 8K video and PCIe 3.0
- [RV1106 vs RV1126](https://rock-chip.com/compare/rv1106-vs-rv1126): Both are vision SoCs

## Engineering guides
- [Android Kiosk Mode on Rockchip Devices (Lock Task, Device Owner, Boot to App)](https://rock-chip.com/guides/android-kiosk-mode-rockchip): 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)](https://rock-chip.com/guides/build-mainline-u-boot-for-rockchip): 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)](https://rock-chip.com/guides/build-rockchip-linux-kernel): 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](https://rock-chip.com/guides/configure-gpio-device-tree-rockchip): 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](https://rock-chip.com/guides/convert-yolo-to-rknn-rk3588): 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)](https://rock-chip.com/guides/flash-rockchip-with-rkdeveloptool): 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)](https://rock-chip.com/guides/how-to-identify-a-rockchip-soc): 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](https://rock-chip.com/guides/rk3588-pcie-nvme-not-detected): 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](https://rock-chip.com/guides/rockchip-boot-process-explained): 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.
- [Rockchip Ethernet PHY Debugging: RGMII Delays, MDIO and Link Problems](https://rock-chip.com/guides/rockchip-ethernet-phy-debugging): No link, link but no traffic, or heavy packet loss on a Rockchip GMAC? Diagnose PHY detection, RGMII timing, clocks and reset in a systematic order.
- [Rockchip USB Device Not Detected: Host, OTG, VBUS and PHY Checklist](https://rock-chip.com/guides/rockchip-usb-device-not-detected): A USB port that shows nothing in lsusb usually has a role, power or PHY problem. Here is the order to check them on Rockchip SoCs.
- [What Is MaskROM Mode? Rockchip Recovery and Loader Mode Explained](https://rock-chip.com/guides/what-is-maskrom-mode): MaskROM is the Rockchip BootROM's USB recovery mode, the reason Rockchip boards are nearly unbrickable. Learn how to enter it, how it differs from Loader mode, and how to flash from it.

## Known issues and error fixes
- ["Creating Comm Object failed!"](https://rock-chip.com/issues/rkdeveloptool-creating-comm-object-failed): rkdeveloptool can see the Rockchip USB device but cannot open it. It is almost always a USB permission problem on Linux, or another tool holding the device.
- ["Download boot failed!"](https://rock-chip.com/issues/rkdeveloptool-download-boot-failed): The loader you sent with rkdeveloptool db could not be downloaded or started by the BootROM. Usually it is the wrong loader for the SoC, or the device is no longer in MaskROM.
- ["not found any devices!"](https://rock-chip.com/issues/rkdeveloptool-not-found-any-devices): The host does not see any Rockchip device on USB, so the board is not in MaskROM/Loader mode or is not connected through the right port.
- ["PCIe Link Fail"](https://rock-chip.com/issues/pcie-link-fail-nvme-not-detected): The PCIe controller probed but link training with the device failed. Vendor kernels print "PCIe Link Fail"; mainline DesignWare PCIe prints "Phy link never came up".
- ["stmmac_open: Cannot attach to PHY (error: -19)"](https://rock-chip.com/issues/stmmac-cannot-attach-to-phy): The GMAC (stmmac) driver could not find the Ethernet PHY on the MDIO bus. -19 is ENODEV: the PHY never answered.
- ["Link is Up - 1Gbps/Full but no DHCP / no traffic"](https://rock-chip.com/issues/ethernet-link-up-no-traffic-rgmii-delay): The PHY negotiates a gigabit link, but packets are corrupted or dropped, so DHCP fails. This is the classic RGMII clock-to-data delay mismatch.
- ["usb 1-1: device descriptor read/64, error -71"](https://rock-chip.com/issues/usb-device-descriptor-read-64-error-71): The host saw a device connect but could not read its descriptor. -71 is EPROTO, a USB protocol/signal error, usually caused by power, cabling or PHY configuration.
- ["mmc0: error -110 whilst initialising SD card"](https://rock-chip.com/issues/mmc-error-110-whilst-initialising-sd-card): The SD/MMC controller timed out (-110 = ETIMEDOUT) talking to the card. Common causes are IO voltage (vqmmc) configuration, card-detect or bus timing.
- ["Waiting for root device /dev/mmcblk0p2..."](https://rock-chip.com/issues/waiting-for-root-device): The kernel booted but cannot find the root filesystem named in root=, because the storage driver is missing or the device name/UUID is wrong.
- ["Starting kernel ..."](https://rock-chip.com/issues/stuck-at-starting-kernel): U-Boot handed over to Linux and the serial console went silent. Either the kernel is printing to a different console, or it crashed very early because of a DTB or memory mismatch.
- ["rknn_init fail! ret=-6 (RKNN_ERR_MODEL_INVALID)"](https://rock-chip.com/issues/rknn-init-fail-model-invalid): The RKNN runtime rejected the .rknn file. Usually the model was converted with a toolkit version the board's librknnrt does not support, or for a different target platform.
- ["RKNN_ERR_TARGET_PLATFORM_UNMATCH (-13)"](https://rock-chip.com/issues/rknn-target-platform-unmatch): The .rknn model was compiled for a different NPU than the one it is running on. RKNN models are not portable across SoC families.
- ["VIDIOC_STREAMON returned -1 (Broken pipe)"](https://rock-chip.com/issues/v4l2-vidioc-streamon-broken-pipe): Streaming failed because the media pipeline is inconsistent. EPIPE means a link is disabled or formats/sizes do not match between the sensor, MIPI receiver and CIF/ISP entities.
- ["[drm] Cannot find any crtc or sizes"](https://rock-chip.com/issues/hdmi-no-display-cannot-find-any-crtc): The DRM driver found no connected output with a usable mode. The monitor was not detected, EDID could not be read, or the VOP→HDMI route is not enabled in the device tree.

## Hardware database
- [Rockchip boards, SBCs and SOMs](https://rock-chip.com/boards): 22 boards filterable by SoC, RAM, PCIe, MIPI, NPU
- [Radxa ROCK 5B](https://rock-chip.com/boards/radxa-rock-5b): RK3588, 4 / 8 / 16 / 32 GB LPDDR4X, 1× 2.5 GbE
- [Orange Pi 5](https://rock-chip.com/boards/orange-pi-5): RK3588S, 4 / 8 / 16 / 32 GB LPDDR4/4X, 1× Gigabit
- [Orange Pi 5 Plus](https://rock-chip.com/boards/orange-pi-5-plus): RK3588, 4 / 8 / 16 / 32 GB LPDDR4/4X, 2× 2.5 GbE
- [FriendlyElec NanoPC-T6](https://rock-chip.com/boards/friendlyelec-nanopc-t6): RK3588, 4 / 8 / 16 GB LPDDR4X, 2× 2.5 GbE
- [FriendlyElec NanoPi R6S](https://rock-chip.com/boards/friendlyelec-nanopi-r6s): RK3588S, 8 GB LPDDR4X, 2× 2.5 GbE + 1× Gigabit
- [Khadas Edge2](https://rock-chip.com/boards/khadas-edge2): RK3588S, 8 / 16 GB LPDDR4X, None onboard (via expansion)
- [Radxa CM5](https://rock-chip.com/boards/radxa-cm5): RK3588S, 4 / 8 / 16 GB LPDDR4X, Gigabit PHY on module
- [Firefly Core-3588J](https://rock-chip.com/boards/firefly-core-3588j): RK3588, LPDDR4 (multiple capacities), GMAC routed to carrier
- [ArmSoM Sige5](https://rock-chip.com/boards/armsom-sige5): RK3576, LPDDR5 (up to 16 GB), 2× Gigabit
- [Radxa ROCK 3A](https://rock-chip.com/boards/radxa-rock-3a): RK3568, 2 / 4 / 8 GB LPDDR4, 1× Gigabit
- [Pine64 Quartz64 Model A](https://rock-chip.com/boards/pine64-quartz64-model-a): RK3566, 2 / 4 / 8 GB LPDDR4, 1× Gigabit
- [Orange Pi 3B](https://rock-chip.com/boards/orange-pi-3b): RK3566, 2 / 4 / 8 GB LPDDR4/4X, 1× Gigabit
- [Radxa ZERO 3W](https://rock-chip.com/boards/radxa-zero-3w): RK3566, 1 / 2 / 4 / 8 GB LPDDR4, None (ZERO 3E variant has Gigabit)
- [Pine64 ROCKPro64](https://rock-chip.com/boards/pine64-rockpro64): RK3399, 2 / 4 GB LPDDR4, 1× Gigabit
- [Radxa ROCK Pi S](https://rock-chip.com/boards/radxa-rock-pi-s): RK3308, 256 / 512 MB DDR3, 1× 10/100
- [Luckfox Pico Max](https://rock-chip.com/boards/luckfox-pico-max): RV1106, 256 MB DDR3L (in-package), 1× 10/100
- [Luckfox Pico Ultra W](https://rock-chip.com/boards/luckfox-pico-ultra-w): RV1106, 256 MB DDR3L (in-package), 1× 10/100
- [Luckfox Lyra series](https://rock-chip.com/boards/luckfox-lyra): RK3506, In-package DDR3L (RK3506G2), 10/100 on Ethernet variants
- [Luckfox Pico (RV1103)](https://rock-chip.com/boards/luckfox-pico): RV1103, 64 MB DDR2 (in-package), 10/100 on Plus variant
- [Pine64 ROCK64](https://rock-chip.com/boards/pine64-rock64): RK3328, 1 / 2 / 4 GB LPDDR3, 1× Gigabit
- [FriendlyElec NanoPi R2S](https://rock-chip.com/boards/friendlyelec-nanopi-r2s): RK3328, 1 GB DDR4, 2× Gigabit (one via USB 3.0)
- [ASUS Tinker Board S](https://rock-chip.com/boards/asus-tinker-board-s): RK3288, 2 GB LPDDR3, 1× Gigabit

## Tools
- [Rockchip GPIO number calculator](https://rock-chip.com/tools/gpio-calculator): GPIO3_B5 ⇄ Linux GPIO 109 ⇄ gpiochip3 line 13 ⇄ device tree
- [Rockchip command cheatsheet](https://rock-chip.com/cheatsheet): rkdeveloptool, serial console, device tree, GPIO, PCIe, NPU, V4L2

## Community
- [Rockchip developer Q&A](https://rock-chip.com/community): Questions and answers from engineers
- [Rockchip Experts Network](https://rock-chip.com/experts/join): Engineers with Rockchip experience
- [Engineering services](https://rock-chip.com/services): Hardware, BSP, Android, RKNN and debugging support for Rockchip products

## Optional
- [About and disclaimer](https://rock-chip.com/about)
