Our modular handheld controller is a carrier board for an RK3588 SoM. Case study: Modular Handheld Controller
RK3588 / RK3588S
Rockchip flagship: 8 Arm cores, 6 TOPS NPU, 8K video and PCIe 3.0 x4, at the cost of LPDDR4X/LPDDR5 routing, an 8 to 12 layer board and a four-regulator PMIC tree.

- CPU
- 4x A76 + 4x A55, 2.2 to 2.4 GHz
- GPU
- Mali-G610 MP4
- NPU
- 6 TOPS (INT4 to FP16, BF16, TF32)
- Video
- 8K60 H.265/VP9/AVS2 decode, 8K30 H.265/H.264 encode
- PCIe
- PCIe 3.0 x4 + 3x PCIe 2.1 x1 (RK3588S: 2x PCIe 2.1 x1)
What the RK3588 / RK3588S is for
Right for
- Multi-stream video boxes: NVR and transcoding, with 8K60 H.265 decode and 8K30 H.264/H.265 encode in hardware
- HDMI capture appliances: RK3588 (and RK3588J/M) has a native HDMI 2.0 RX up to 2160p60, which RK3588S, RK3588C and RK3582 lack
- NVMe or 10GbE expansion: one PCIe 3.0 x4 controller that bifurcates to 2x2 or 4x1, plus three PCIe 2.1 x1 lanes
- Multi-display signage and kiosks: four video ports, two HDMI 2.1 TX, two DP 1.4a, two MIPI DSI
- Products that would rather buy a module: the largest SoM ecosystem of any Rockchip part, in B2B, SO-DIMM, MXM, SMARC, Qseven and LGA formats
Wrong for
- Battery or fanless sub-5 W products: theta JA is 8.7 C/W and the A76 clusters, GPU and NPU each get their own buck regulator on reference-class boards
- Low-cost 4 to 6 layer boards: every vendor board or module with a stated layer count is 8 layers (FriendlyELEC) to 10 or 12 layers (Firefly, Forlinx)
- Designs that need DDR4 or socketed memory: LPDDR4, LPDDR4X, LPDDR5 and (datasheet V2.2) LPDDR5X only
- PCIe 3.0 on the RK3588S or RK3582: they only have PCIe 2.1 x1 lanes
- Fully open firmware: mainline U-Boot still needs Rockchip's closed DDR init blob
Cost and constraints
- BOM driven by the SoC (RK3588S about USD 55 at qty 1 on LCSC, RK3588J about USD 89), an RK806-1 PMIC plus three RK860 regulators, and LPDDR4X/LPDDR5
- DDR is trained by a closed rkbin blob at LPDDR4/4X 2112 MHz and LPDDR5 2400 MHz in the current release, so layout has to meet those rates
- Ambient range is 0 to 80 C for RK3588 and RK3588S in the current datasheets (V2.2 / V1.7; earlier revisions said -20 to 85 C); -40 to 85 C needs the RK3588J or RK3588M at lower clocks
- Package is a 23 x 23 mm FCBGA1088 at 0.65 mm pitch (RK3588) or a 17 x 17 mm FCCSP1253 at 0.4 mm pitch (RK3588S, RK3588S2, RK3582)
- Mainline Linux covers CPU, GPU, display, USB3, PCIe and the NPU, but H.264/H.265 encode and the ISP are still vendor-kernel only
Inside the RK3588 / RK3588S
Drawn by Groundplane from the datasheet v1.7. Not Rockchip artwork.
- LPDDR4/4X/5, 4x 16-bit
- eMMC 5.1
- SD 3.0 / SDIO 3.0
- FSPI NOR/NAND
- 4x Cortex-A76, 512 KB L2 each
- 4x Cortex-A55, 128 KB L2 each
- 3 MB shared L3 (DSU)
- 3x Cortex-M0 MCU
- Mali-G610 MP4
- 2D engine (RGA)
- 3-core NPU, 6 TOPS
- INT4/8/16, FP16, BF16, TF32
- Decoder: 8K60 H.265/VP9/AVS2
- Encoder: 8K30 H.265/H.264
- JPEG encoder and decoder
- Dual ISP, up to 48 MP
- VICAP, 6 MIPI inputs
- VOP2, 4 video ports
- HDR10/HLG post-processing
- 2x crypto engine
- Secure OTP, TrustZone
- 18 PLLs, 24 MHz oscillator
- PMU, 45 power domains
- TS-ADC (7 ch), SARADC (8 ch)
- PCIe 3.0 x4 (RC/EP)
- 3x PCIe 2.1 / SATA 3 combo
- 2x USB 3.1 Gen1 OTG + DP
- USB 3.1 host, 2x USB 2.0
- 2x GMAC RGMII
- 2x HDMI 2.1 TX / eDP 1.3
- 2x DP 1.4a, 2x MIPI DSI
- HDMI 2.0 RX
- 2x D/C-PHY + 4x CSI D-PHY
- UART, I2C, SPI, I2S, PWM
Read from the documents
Each value names the document it was read from.
| CPU | 4x Cortex-A76 (512 KB L2 each) + 4x Cortex-A55 (128 KB L2 each), 3 MB shared L3; max CPU frequency 2.2 to 2.4 GHz | Datasheet V1.7, 1.2.1, Table 3-2 |
|---|---|---|
| GPU | Mali-G610 MP4 (Valhall, 4 shader cores), OpenGL ES 1.1/2.0/3.2, OpenCL 2.2, Vulkan 1.2; max 1000 MHz | Datasheet V1.7, 1.2.7, Table 3-2 |
| NPU | 6 TOPS, three cores (joint or independent), INT4, INT8, INT16, FP16, BF16, TF32; 3x 384 KB buffer; max 1000 MHz | Datasheet V1.7, 1.2.6 |
| Video decode | H.265 Main10, VP9 and AVS2 8K60; H.264 8K30; AV1 (8/10-bit) 4K60; MPEG-1/2, VC-1, VP8 1080p60 | Datasheet V1.7, 1.2.4 |
| Video encode | H.265 and H.264 up to 8K30, multi-channel at lower resolutions; JPEG encode up to 8192x8192 | Datasheet V1.7, 1.2.4, 1.2.5 |
| Memory | LPDDR4, LPDDR4X, LPDDR5 or LPDDR5X; four 16-bit channels (64-bit), up to 2 ranks per channel, 32 GB address space | Datasheet V2.2, 1.2.2 |
| Storage | eMMC 5.1 (HS400), SD 3.0, SDIO 3.0, FSPI serial flash (1/2/4-bit, 2 chip selects) | Datasheet V1.7, 1.2.2, 1.2.13 |
| Display | 4 video ports (VP0 7680x4320@60, VP1/VP2 4096x4320@60, VP3 2048x1080@60); 2x HDMI 2.1 TX or eDP 1.3 (HDMI to 8K60, FRL 12 Gbps, DSC 1.2a); 2x DP 1.4a to 8K30 (shared with USB3); 2x MIPI DSI to 4K60; BT.1120 out | Datasheet V1.7, 1.2.10, 1.2.11 |
| Video input | HDMI 2.0 RX, 2160p60, HDCP 2.3 and 1.4 | Datasheet V1.7, 1.2.8 |
| Camera | 2x MIPI D/C-PHY (4-lane D-PHY or 3-trio C-PHY) + 4x 2-lane MIPI CSI D-PHY (pairable to 4-lane), up to 6 cameras; DVP 8/10/12/16-bit; ISP to 48 MP (8064x6048@15 dual ISP) | Datasheet V1.7, 1.2.8, 1.2.9 |
| PCIe | PCIe 3.0 x4 controller, RC or EP, bifurcation 1x4, 2x2, 4x1 or 1x2 + 2x1; plus 3x PCIe 2.1 x1 (RC only) on combo PHYs | Datasheet V1.7, 1.2.13 |
| SATA | Up to 3x SATA 3.1 at 6 Gbps, each sharing a combo PHY with PCIe 2.1 (one also with USB 3) | Datasheet V1.7, 1.2.13 |
| USB | 2x USB 3.1 Gen1 OTG with DP alt mode (Type-C), 1x USB 3.1 Gen1 host on a combo PHY, 2x USB 2.0 host | Datasheet V1.7, 1.2.13 |
| Ethernet | 2x GMAC, RGMII 10/100/1000 or RMII 10/100 | Datasheet V1.7, 1.2.13 |
| Other I/O | 10x UART, 9x I2C, 5x SPI (SPI0 to SPI4), 16x PWM, 8-channel 12-bit SARADC, 4x I2S, 2x SPDIF, 2x PDM | Datasheet V2.2, 1.2.12 to 1.2.14 |
| Process | 8 nm | Product brief |
| Package | FCBGA1088L, 23 x 23 mm, 0.65 mm ball pitch, 0.36 mm balls, MSL3 | Datasheet V1.7, 1.2.14, 2.4 |
| Operating range | Ambient 0 to 80 C (V1.7 said -20 to 85 C); junction max 125 C; theta JA 8.7, JB 3.5, JC 0.12 C/W | Datasheet V2.2, Table 3-1, Table 3-2, Table 4-1 |
Variants
| RK3588S | Same CPU, GPU, NPU and codecs in a 17 x 17 mm FCCSP1253L (0.4 mm pitch). Drops the PCIe 3.0 x4 controller, HDMI RX, one GMAC, one HDMI/eDP TX, one DP/USB3 OTG and one combo PHY (two PCIe 2.1/SATA lanes remain). Two 2-lane CSI D-PHYs instead of four, up to 4 cameras. Ambient 0 to 80 C, theta JA 8.2 C/W. LPDDR4, LPDDR4X or LPDDR5 (no LPDDR5X listed). RK3588S-D adds Dolby Audio. | Datasheet V1.7 |
|---|---|---|
| RK3588S2 | Same package as RK3588S with remapped camera pins: one MIPI D/C-PHY CSI port becomes a D-PHY port (4-lane or 2x 2-lane), two former ground balls become a CSI clock, for up to 5 cameras. Rockchip recommends RK3588S2 replace RK3588S; fitting it on an RK3588S PCB needs Rockchip's compatibility patch. | Errata Rev 1.0 |
| RK3588J | Industrial grade, same FCBGA1088L and feature set, -40 to 85 C ambient. Normal mode: A76 1.6 GHz, A55 1.3 GHz, GPU 700 MHz, NPU 800 MHz. Overdrive mode (A76 2.0 GHz, A55 1.7 GHz, GPU 850 MHz, NPU 950 MHz) may shorten lifetime at high temperature. MIPI DSI is D-PHY only; VP1/VP2 limited to 4096x2304. | Datasheet V1.5 |
| RK3582 | Cost-down part on the RK3588S package: 2x Cortex-A76 + 4x Cortex-A55, no 3D GPU (2D engine only), 5 TOPS NPU, encode listed as 4K60. Clocks are TBD and ambient is 0 to 80 C in datasheet V1.1, which also contradicts itself on memory types and HDMI TX count. | Datasheet V1.1 |
| RK3588M | Automotive variant, AEC-Q100 Grade 3, same FCBGA1088L. A76 2.0 GHz, A55 1.7 GHz, GPU 1.0 GHz, NPU 950 MHz, -40 to 85 C ambient. VP1/VP2 limited to 4096x2304. | Datasheet V1.5 |
| RK3588C | Different package: FCCSP766L, 17 x 19 mm, 0.6/0.65 mm pitch. Same CPU (2.2 to 2.4 GHz), GPU, 6 TOPS NPU and codecs, but LPDDR4/4X only, PCIe 3.0 x2 (1x2 or 2x1), one HDMI 2.1 TX plus one HDMI 2.0/eDP 1.4 TX, one DP/USB3 OTG, no HDMI RX; only a DVP camera input is listed. 0 to 80 C ambient, theta JA 15.6 C/W. | Datasheet V1.4 |
What to watch when you design with it
Size a heatsink for the RK3588 / RK3588S with its datasheet θJC and Tj max filled in, and download the STEP.
Power and PMIC
Every public RK3588 schematic checked (Radxa ROCK 5B, ROCK 5 ITX and CM5, FriendlyELEC NanoPC-T6 LTS, Khadas Edge2) uses one RK806-1 PMIC plus three RK860 buck regulators: two RK860-2 and one RK860-3. The RK806 has ten bucks (BUCK1 6.5 A, BUCK2 to 4 5 A, BUCK5 to 10 3 A), eleven LDOs, 2.7 to 5.5 V input, SPI or I2C control and OTP power sequencing, in a 7 x 7 mm QFN68. Radxa notes that Rockchip recommends a 4 V RK806 supply; 5 V costs efficiency and can cause audible buck whine.
Sources: PMIC Rev 1.2, PMIC Rev 1.7, Board schematic V1.45, Other 1.0, wiki.friendlyelec.com, dl.khadas.com
DDR
Four 16-bit channels (64-bit), LPDDR4, LPDDR4X or LPDDR5 (datasheet V2.2 adds LPDDR5X), up to 32 GB. The DDR IO VDDQ is 0.6 V for LPDDR4/4X and 0.5 V for LPDDR5, with VDDQ_CKE at 1.1 V or 1.05 V. DDR training is a closed Rockchip blob; the current rkbin loader runs LPDDR4/4X at 2112 MHz and LPDDR5 at 2400 MHz. Module vendors publish length data you can design against: FriendlyELEC a CM3588 net pin-delay table, ArmSoM a CM7s trace-length sheet.
Sources: Datasheet V1.7, Datasheet V2.2, raw.githubusercontent.com, wiki.friendlyelec.com, docs.armsom.org
Layer count
Vendor boards with a stated stackup: FriendlyELEC NanoPC-T6 and CM3588 are 8-layer, Firefly Core-3588J and Forlinx FET3588-C are 10-layer, Firefly Core-3588L is 12-layer. The RK3588S 0.4 mm pitch package pushes toward HDI; the RK3588 0.65 mm package is routed on 8-layer through-hole boards by FriendlyELEC.
Sources: wiki.friendlyelec.com, forlinx.net, Datasheet V1.7, Datasheet V1.5
High-speed interfaces
Forlinx's carrier guidance for the FET3588-C: PCIe 3.0 and 2.0 at 85 ohm differential, intra-pair skew under 3 mil, 220 nF 0201 AC caps on PCIe 3.0 TX and 100 nF on PCIe 2.0, pair spacing 5x trace width, REFCLK at 100 ohm from the same source as the slot. USB 3 at 90 ohm with 100 nF on SSTX; DP at 100 ohm alone or 95 ohm when shared with USB 3. HDMI TX at 100 ohm with 220 nF for HDMI 2.1. Radxa adds that if the module already carries 220 nF on HDMI, keep the total between 100 and 250 nF. The third USB 3 port, SATA and PCIe 2.1 share combo PHYs, so fix the lane plan before choosing connectors.
Sources: Other V1.6, Other 1.0, Datasheet V1.7
Boot and maskrom
The boot ROM loads from FSPI, eMMC or SD and downloads code over USB OTG (datasheet). Boot order is set by a resistor divider on SARADC_IN0_BOOT (ball AM16): ROCK 5B and Forlinx define seven levels, with LEVEL1 (pulled to ground) forcing USB maskrom; SARADC_IN1 to ground is recovery. Download uses the USB 2.0 pins of OTG0 (TYPEC0_OTG_DP/DM); keep TYPEC0_USB20_VBUSDET connected. There is no PCIe or NVMe boot in the ROM list, so NVMe boot needs a loader in SPI flash. SDMMC_DET selects SD or ARM JTAG at reset and must be stable before power-up; Radxa says to pull it low to boot from microSD. On Radxa boards, hold the maskrom button while connecting the OTG/power port.
Sources: Datasheet V1.7, Other V1.6, Board schematic V1.45, Other 1.0, docs.radxa.com
Thermal
Datasheet theta JA is 8.7 C/W, JB 3.5 C/W and JC 0.12 C/W on a 10-layer 114 x 101 mm test board, with junction max 125 C. Commercial parts are rated 0 to 80 C ambient in datasheet V2.2 (V1.7 said -20 to 85 C), and most modules quote 0 to 60 or 0 to 70 C. For -40 C or long life at heat, RK3588J in normal mode runs the A76 cores at 1.6 GHz; RK3588M runs them at 2.0 GHz.
Sources: Datasheet V1.7, Datasheet V2.2, Datasheet V1.5, Datasheet V1.5
Gotchas
RK3588S2 is not a drop-in on an RK3588S layout without Rockchip's software patch, because camera ports moved. "Jetson compatible" 260-pin SO-DIMM modules (Turing RK1, Mixtile Core 3588E, ArmSoM AIM7) only fit selected Jetson carriers per their vendors, and Radxa states the NX5 does not support Jetson Nano carriers. Datasheet V1.7 no longer lists the CAN controllers that V1.3 listed, though several modules still expose CAN.
Sources: Errata Rev 1.0, Datasheet V1.7, mixtile.com, docs.armsom.org, radxa.com
Layout guides for the RK3588 / RK3588S's interfaces
Public layout guidance for each interface this chip has, from vendors who publish it, plus our calculators.
LPDDR4
Point-to-point routing; TI notes that on-die termination on both ends means no board termination is needed. Byte lanes length-matched to their strobe and command/address matched to the clock, all over a solid reference plane. Impedance targets differ by vendor: TI AM62x and ADI EE-480 use 40 ohm single-ended and 80 ohm differential, Synaptics SL1680 uses 50 and 85 ohm, AMD Versal 45 and 82 ohm. Use the SoC vendor's own target and simulate.
- AM62x, AM62Lx DDR Board Design and Layout GuidelinesTexas Instruments, SPRAD06, C, 2025
- AM62Ax, AM62Px, AM62Dx LPDDR4 Board Design and Layout GuidelinesTexas Instruments, SPRAD66, B, 2024
- ADSP-2184x/ADSP-SC84x LPDDR4 Board Design GuidelinesAnalog Devices, EE-480, 1, 2026
- SL1680 General PCB Design and LPDDR4 & LPDDR4(x) Interface Layout GuidelinesSynaptics, PN 506-001390-01, E
- DDR length matching calculatorGroundplane calculator
LPDDR4X
Same topology and matching discipline as LPDDR4, with a lower I/O voltage, so routing rules are usually published for both together. Synaptics SL1680 gives 50 ohm single-ended and 85 ohm differential for LPDDR4 and LPDDR4X; AMD Versal gives 45 and 82 ohm. Check the SoC vendor target before fixing the stackup.
- SL1680 General PCB Design and LPDDR4 & LPDDR4(x) Interface Layout GuidelinesSynaptics, PN 506-001390-01, E
- SL1640 General PCB Design and DDR4 & LPDDR4(x) Interface Layout GuidelinesSynaptics, PN 506-001529-01, D
- Versal Adaptive SoC PCB Design User Guide: PCB Routing Guidelines for LPDDR4/4x InterfacesAMD, UG863, 1.12, 2026
- DDR length matching calculatorGroundplane calculator
LPDDR5
LPDDR5 replaces the bidirectional strobe with a write clock (WCK) and an optional read strobe, so clock routing and skew budgets change from LPDDR4. AMD Versal specifies 40 ohm single-ended for command/address and data and 75 ohm differential for the clocks and read strobe.
- Versal Adaptive SoC PCB Design User Guide: PCB Routing Guidelines for LPDDR5/5x InterfacesAMD, UG863, 1.12, 2026
- PCB Design Guidelines (HSSI, EMIF, MIPI, True Differential, PDN) User Guide: Agilex 5 FPGAs and SoCsAltera, 821801, 2026
- DDR length matching calculatorGroundplane calculator
eMMC
A single-ended bus: CLK, CMD, DAT0 to DAT7 and, for HS400, the data strobe. TI and Synaptics both route it at 50 ohm single-ended, match the group, and keep stubs short; Synaptics places a 22 or 33 ohm series resistor on CLK and STRB. At HS400 TI also checks the eMMC I/O supply impedance, not just the traces.
- AM62Px eMMC HS400 Board Design and Simulation GuidelinesTexas Instruments, SPRADP5, A, 2026
- Astra Machina Foundation Series eMMC ConfigurationSynaptics, PN 506-001594-01, D
- i.MX28 Layout and Design GuidelinesNXP (Freescale), AN4215, 0, 2010
SD card / SDIO
Single-ended CLK, CMD and four data lines over a solid ground plane, at constant trace width and matched length. NXP asks for clock-to-neighbor spacing greater than twice the trace height above the plane and 1.5 times for data and CMD, with 45 degree bends. UHS modes switch the I/O to 1.8 V, so a level translator often sits next to the socket.
- NVT4557/NVT4558/NVT4858 voltage-level translator layout guidelineNXP, AN13158, 1.1, 2022
- i.MX28 Layout and Design GuidelinesNXP (Freescale), AN4215, 0, 2010
- SD Physical Layer Simplified SpecificationSD Association, 9.10, 2023
PCIe
AC-coupled differential lanes routed with no stubs, minimal vias and back-drilled or blind vias where speed demands, with lane-to-lane skew handled by the receiver. Targets differ by guide: TI Jacinto 7 uses 85 ohm differential for lanes and 100 ohm for the reference clock, while TI's earlier SoC guide tabulates 100 ohm and, for some devices, 95 ohm. Match the target to your connector and stackup.
- Jacinto7 AM6x, TDA4x, and DRA8x High-Speed Interface Design GuidelinesTexas Instruments, SPRACP4, A, 2024
- High-Speed Interface Layout GuidelinesTexas Instruments, SPRAAR7, J, 2023
USB 3.x
SuperSpeed TX and RX pairs are routed at 90 ohm differential in all three TI guides (SPRAAR7 lists 95 ohm for some devices), with AC coupling capacitors on TX, symmetric pad and via placement, and matched via counts within each pair. Keep the pairs away from the USB 2.0 pair and other aggressors, and place ESD at the connector.
- High-Speed Layout Guidelines for Signal Conditioners and USB HubsTexas Instruments, SLLA414, A, 2026
- Jacinto7 AM6x, TDA4x, and DRA8x High-Speed Interface Design GuidelinesTexas Instruments, SPRACP4, A, 2024
- High-Speed Interface Layout GuidelinesTexas Instruments, SPRAAR7, J, 2023
USB 2.0
One D+/D- pair at 90 ohm differential, routed in parallel for its whole length with minimal deviations at the connector and package. NXP keeps clocks and periodic signals at least 50 mils away and other signals at least 20 mils away from the pair.
- High-Speed Layout Guidelines for Signal Conditioners and USB HubsTexas Instruments, SLLA414, A, 2026
- High-Speed Interface Layout GuidelinesTexas Instruments, SPRAAR7, J, 2023
- i.MX28 Layout and Design GuidelinesNXP (Freescale), AN4215, 0, 2010
HDMI
Four TMDS pairs (three data, one clock) at 100 ohm differential, as both TI guides state, with tight intra-pair matching and as few vias as possible between the SoC and the connector. HDMI also needs 5 V supply switching, DDC and CEC level handling, hot-plug detect and ESD at the connector.
- High-Speed Layout Guidelines for Signal Conditioners and USB HubsTexas Instruments, SLLA414, A, 2026
- High-Speed Interface Layout GuidelinesTexas Instruments, SPRAAR7, J, 2023
- TPD12S016 PCB Layout Guidelines for HDMI ESDTexas Instruments, SLLA324, 2012
DisplayPort / eDP
Main-link lanes are routed at 100 ohm differential in both TI guides, with no stubs and few vias; TI Jacinto 7 allows 2 vias per trace. When DisplayPort shares a USB-C connector through alt mode, the lanes run through the Type-C mux and the SuperSpeed rules apply to the shared path.
- High-Speed Layout Guidelines for Signal Conditioners and USB HubsTexas Instruments, SLLA414, A, 2026
- Jacinto7 AM6x, TDA4x, and DRA8x High-Speed Interface Design GuidelinesTexas Instruments, SPRACP4, A, 2024
MIPI DSI
MIPI D-PHY clock and data lanes are routed as 100 ohm differential pairs over a solid reference; TI Jacinto 7 allows no stubs, 2 vias per trace and 40 ps lane-to-lane skew. Connectors and flex cables to the panel are usually the largest discontinuity, so keep the board segment short and clean.
- Jacinto7 AM6x, TDA4x, and DRA8x High-Speed Interface Design GuidelinesTexas Instruments, SPRACP4, A, 2024
- PCB Design Guidelines (HSSI, EMIF, MIPI, True Differential, PDN) User Guide: Agilex 5 FPGAs and SoCsAltera, 821801, 2026
MIPI CSI-2
Same D-PHY rules as DSI: 100 ohm differential lanes in both TI guides, with lane-to-lane skew bounded (40 ps in TI Jacinto 7). Size the lane count and lane rate from the sensor's output format before routing.
- Jacinto7 AM6x, TDA4x, and DRA8x High-Speed Interface Design GuidelinesTexas Instruments, SPRACP4, A, 2024
- High-Speed Interface Layout GuidelinesTexas Instruments, SPRAAR7, J, 2023
- PCB Design Guidelines (HSSI, EMIF, MIPI, True Differential, PDN) User Guide: Agilex 5 FPGAs and SoCsAltera, 821801, 2026
- MIPI CSI-2 bandwidth calculatorGroundplane calculator
Ethernet (RGMII / RMII)
TI routes MAC-to-PHY (MII family) traces at 50 ohm single-ended, under 6 inches, matched within 20 mils for gigabit, and the PHY-side MDI pairs at 100 ohm differential. RGMII also needs a 1.5 to 2.0 ns clock-to-data delay, added on the board or inside the MAC or PHY (RGMII-ID); decide which before layout so it is not applied twice.
- Ethernet PHY PCB Design Layout ChecklistTexas Instruments, SNLA387, 2021
- PCB Design Guideline for RGMII InterfaceRenesas, R01AN6272EJ0141, 1.41, 2026
- i.MX28 Layout and Design GuidelinesNXP (Freescale), AN4215, 0, 2010
SATA
AC-coupled TX and RX pairs at 100 ohm differential in TI's SoC guide, routed with the same via, stub and reference plane rules as PCIe and USB 3. On Rockchip parts SATA usually shares a combo PHY with PCIe or USB 3, so the lane is routed once to whichever connector the design picks.
- High-Speed Interface Layout GuidelinesTexas Instruments, SPRAAR7, J, 2023
- High-Speed Layout Guidelines for Signal Conditioners and USB HubsTexas Instruments, SLLA414, A, 2026
Board-level design guides
Impedance and timing, power, thermal and ESD guidance that applies to any board around this chip.
Impedance and timing
Every high-speed interface on the board comes down to the same two numbers: the trace impedance your stackup actually gives, and the delay each trace adds. Set the stackup with your fab first, then route to its impedance table and match lengths in time, not millimeters, where the layers differ.
- High-Speed Interface Layout GuidelinesTexas Instruments, SPRAAR7, J, 2023
- PCB impedance calculatorGroundplane calculator
- PCB propagation delay calculatorGroundplane calculator
Power delivery
For each switching regulator, place and route the input capacitor first, keep the switching current loop small, and keep the switch node short. Give the SoC rails solid planes and decoupling at the balls, and size current-carrying copper and vias for the real load.
- Five steps to a great PCB layout for a step-down converterTexas Instruments, SLYT614, 2015
- AN-1149 Layout Guidelines for Switching Power SuppliesTexas Instruments, SNVA021, C, 2013
- AN-1229 SIMPLE SWITCHER PCB Layout GuidelinesTexas Instruments, SNVA054, C, 2013
- Buck converter calculatorGroundplane calculator
- LDO power dissipation calculatorGroundplane calculator
- PCB trace width calculatorGroundplane calculator
- Via current calculatorGroundplane calculator
Thermal
Theta-JA is measured on a JEDEC test board that carries most of the heat, so it does not transfer directly to a product board; use it to compare packages and use the psi metrics for estimates. Thermal vias under the package, copper area and copper thickness move the most heat into the board.
- Semiconductor and IC Package Thermal MetricsTexas Instruments, SPRA953, D, 2024
- AN-2020 Thermal Design By Insight, Not HindsightTexas Instruments, SNVA419, C, 2013
- Heatsink thermal resistance calculatorGroundplane calculator
- LDO power dissipation calculatorGroundplane calculator
ESD protection
Place the TVS as close to the connector as design rules allow, route from the connector to the TVS with no stub, and keep the protected IC further from the TVS than the TVS is from the connector. Choose parts by clamping performance and by capacitance low enough for the interface speed.
- ESD Protection Layout GuideTexas Instruments, SLVA680, A, 2022
- Reading and Understanding an ESD Protection Data SheetTexas Instruments, SLLA305, A
- TPD12S016 PCB Layout Guidelines for HDMI ESDTexas Instruments, SLLA324, 2012
- PCB conductor spacing calculator (IPC-2221)Groundplane calculator
Rockchip's hardware design guide
Rockchip's hardware design guide, EVB reference schematics and DDR templates come from Rockchip or an authorized agent, usually under NDA, or through your SoM vendor. We do not link copies circulating elsewhere. The vendor schematics and open designs on the Boards tab are real, shipped layouts on the RK3588 / RK3588S and the best public reference.
BSP, mainline and toolkits
| Area | Status | Links |
|---|---|---|
| Vendor BSP kernel | rockchip-linux/kernel carries RK3588 on four branches: develop-5.10 (5.10.252), develop-6.1 (6.1.172), develop-6.6 (6.6.89, last commit 2025-09) and develop-6.12 (6.12.69). Radxa ships 6.1 (linux-6.1-stan-rkr5.1) and 5.10; Armbian's "vendor" kernel is 6.1 rkr7.2 and "vendor-next" is 6.12. Joshua Riek's linux-rockchip (6.1.75) has been dormant since 2025-03.Checked 2026-10-13 | |
| Mainline Linux: base | Pinctrl in 5.19, GMAC glue in 6.1, clock driver in 6.2; first RK3588 device trees (ROCK 5B) in 6.3. Thermal in 6.4, SARADC and RK806 in 6.5. PCIe 3.0 x4, PCIe 2.0 and SATA nodes in 6.6. CPU OPP tables (cpufreq) in 6.11. Hardware RNG in 6.15. The crypto engine is not supported as of 7.3-rc7.Checked 2026-10-13 | |
| Mainline Linux: USB | USB 2.0 PHY in 6.6, first USB 3 controller in 6.7, USBDP combo PHY with all USB 3 ports in 6.10. Board-level USB-C (PD) enablement varies by board.Checked 2026-10-13 | |
| Mainline Linux: GPU | Mali-G610 via the Panthor DRM driver from 6.10 (2024-07); Mesa 24.1 added the userspace side.Checked 2026-10-13 | |
| Mainline Linux: display | VOP2 in 6.8, HDMI/eDP PHY in 6.9, HDMI 2.0 TX (dw-hdmi-qp) on HDMI0 in 6.13 and HDMI1 plus HDMI audio in 6.15, CEC in 6.19, HDMI FRL PHY code in 7.0. MIPI DSI driver in 6.14 with DSI nodes in 6.16. DisplayPort in 6.18. HDMI RX (Synopsys hdmirx) in 6.15.Checked 2026-10-13 | |
| Mainline Linux: video | Hantro AV1 decode driver in 6.5 (node in 6.7); VDPU121 decode and JPEG-only VEPU121 encode in 6.12. H.264 and HEVC decode on VDPU381 (rkvdec) landed in 7.0 (single core). No mainline H.264/H.265 encode and no ISP driver as of 7.3-rc7; CSI D-PHY nodes arrived in 6.18, VICAP capture and the MIPI CSI-2 receiver in 7.2. RGA2 node in 6.12, RGA3 driver in 7.2.Checked 2026-10-13 | |
| Mainline Linux: NPU | The "rocket" accel driver and NPU nodes landed in 6.18 (2025-11); userspace is Mesa's Teflon TensorFlow Lite delegate, first in Mesa 25.3. Board device trees enable it individually.Checked 2026-10-13 | |
| U-Boot and TF-A | Mainline U-Boot supports RK3588 from v2023.04; v2026.10 documents 30 RK3588/RK3588S boards plus a generic RK3582/RK3588S/RK3588 target. It still needs Rockchip's closed DDR init blob (rkbin TPL) and BL31 from rkbin or TF-A, which supports RK3588 from v2.12. Vendor U-Boot (rockchip-linux next-dev) is based on U-Boot 2017.09.Checked 2026-10-13 | |
| UEFI | edk2-rk3588 v1.1 (2025-04-09) boots ACPI or device tree; mainline DT mode on its Platinum boards (ROCK 5A/5B/5 ITX, Orange Pi 5/5 Plus, Edge2, NanoPC-T6, R6C/R6S, CM3588 NAS and others). ACPI is developed against Windows.Checked 2026-10-13 | |
| NPU toolkit | RKNN-Toolkit2: the README states v2.5.0, the newest GitHub release is v2.3.2 (2025-04-09). RKLLM (rknn-llm) for LLMs is at release v1.3.1 (2026-09-29), with w8a8 and fp16 models shown for RK3588. Both target the vendor-kernel RKNPU driver, not mainline rocket.Checked 2026-10-13 | |
| Video (MPP) | Rockchip MPP 1.1.0 (2026-08-11) on the vendor kernel. nyanmisaka's ffmpeg-rockchip adds MPP decode (H.264, HEVC, VP9, AV1 and more) and encode (H.264, HEVC, MJPEG) to FFmpeg, tested on BSP 5.10 and 6.1.Checked 2026-10-13 | |
| 2D (RGA) | librga last tagged v1.10.0 (2023-10-09), with commits into 2026; ffmpeg-rockchip exposes RGA scale, vpp and overlay filters.Checked 2026-10-13 | |
| Android | Radxa ships Android 12 (rkr14, 2024) for ROCK 5B and 5B+; its support matrix lists Android 12 for the RK3588 boards and Android 14 only for ROCK 5C. Firefly ships Android 12 and Android 14 for ROC-RK3588S-PC.Checked 2026-10-13 | |
| Distributions | Armbian: 56 RK3588-family board configs, kernels vendor 6.1, vendor-next 6.12, current 6.18 and edge 7.3. Joshua Riek's Ubuntu Rockchip was archived on 2026-04-29 (last release v2.4.0, 2024-10). Radxa OS is Debian 12 on BSP 6.1. Debian 13 (trixie, kernel 6.12) lacks RK3588 HDMI output, which needs 6.13. OpenWrt 25.12 supports ROCK 5A/5B/5B+/5C/5T/5 ITX, NanoPC-T6, NanoPi R6S/R6C and ArmSoM Sige7. Talos overlays cover ROCK 5, Orange Pi 5, CM3588 NAS and Turing RK1.Checked 2026-10-13 | |
| Community | Radxa forum, Armbian Rockchip subforums, ArmSoM forum, Orange Pi forum, the Pine64 QuartzPro64 wiki (upstreaming status) and the linux-rockchip mailing list are active.Checked 2026-10-13 |
RK3588 / RK3588S on GitHub
Repositories for this chip: vendor code, mainline work, toolkits, distributions and open hardware.
- Kernelrockchip-linux/kernelRockchip BSP kernel; RK3588 device trees and drivers live on develop-5.10 and develop-6.1, with develop-6.6 and develop-6.12 also carrying them. Last commit 2026-08.
- Kernelradxa/kernelRadxa fork of the BSP kernel; branch linux-6.1-stan-rkr4.1 is the current ROCK 5 series and CM5 kernel. Last commit 2026-10.
- Kerneltorvalds/linuxMainline Linux has about 86 RK3588 device trees; display, GPU via Panthor and NPU via the Rocket driver are now upstream. Last commit 2026-10.
- Bootloaderrockchip-linux/u-bootRockchip U-Boot; the next-dev branch has the RK3588 SoC code in arch/arm/mach-rockchip/rk3588 that board vendors fork. Last commit 2026-08.
- Bootloaderrockchip-linux/rkbinClosed DDR init, SPL loaders and BL31 blobs; bin/rk35 holds the rk3588_ddr and rk3588_bl31 binaries U-Boot packs into idbloader. Last commit 2026-08.
- Bootloaderu-boot/u-bootMainline U-Boot with generic-rk3588_defconfig and board configs such as rock5b, nanopc-t6 and orangepi-5. Last commit 2026-10.
- BootloaderTrustedFirmware-A/trusted-firmware-aRead-only mirror of TF-A; plat/rockchip/rk3588 is the open BL31 that replaces the rkbin blob on mainline builds. Last commit 2026-10.
- Bootloaderedk2-porting/edk2-rk3588EDK2 UEFI firmware for RK3588 boards, giving ACPI or device tree boot of generic ARM64 distributions and Windows. Last commit 2026-09.
- NPUairockchip/rknn-toolkit2RKNN-Toolkit2 model converter, Lite2 Python runtime and RKNPU2 C runtime; RK3588 is a first-tier target for its 6 TOPS NPU. Last commit 2026-10.
- NPUairockchip/rknn-llmRKLLM toolkit and runtime for running quantized LLMs and VLMs on the NPU; demos are written against rk3588 with 3 cores. Last commit 2026-09.
- NPUairockchip/rknn_model_zooReference conversions and C or Python demos for YOLO, segmentation, OCR and speech models, all tested on RK3588. Last commit 2026-10.
- Mediarockchip-linux/mppMedia Process Platform, the user space API for the RK3588 VPU (8K decode, H.264 and HEVC encode); every hardware codec path goes through it. Last commit 2026-09.
- Mediaairockchip/librgaRGA 2D engine library for scaling, color conversion and blending; lists RK3588 support for both RGA3 and RGA2 cores. Last commit 2026-06.
- Medianyanmisaka/ffmpeg-rockchipFFmpeg with zero copy MPP decode and encode plus RGA filters, with RK3588 as the primary target platform. Last commit 2026-08.
- Distributionarmbian/buildArmbian build framework with more than 50 RK3588 and RK3588S board configs across the rockchip-rk3588 and rk35xx families. Last commit 2026-10.
- DistributionJoshua-Riek/ubuntu-rockchipUbuntu images for about 30 RK3588 boards on the Rockchip 6.1 kernel; archived in 2025, so treat it as reference only. Archived. Last commit 2025-09.
- Open hardwareradxa/radxa-som-projectsRadxa reference carrier designs in Altium with PDFs, including the CM5 and NX5 RK3588 modules. Last commit 2026-09.
- KiCadswdee/radxa-cm5-kicadKiCad symbol, footprint and 3D model for the Radxa CM5 (RK3588S) module, for designing your own carrier. Last commit 2025-09.
- Toolsrockchip-linux/rkdeveloptoolRockchip open source USB flashing tool for maskrom and loader mode, the Linux and macOS alternative to RKDevTool. Last commit 2025-03.
- CommunityNotPunchnox/rkllamaOllama style server for RKLLM models on the RK3588 NPU, the easiest way to expose a local LLM API from a board. Last commit 2026-08.
RK3588 / RK3588S system on modules
Any of these can sit on a carrier board we design.
| Module | Vendor | Connector | RAM | Design files | Price | Buy |
|---|---|---|---|---|---|---|
| Radxa CM5 | Radxa | 3x 100-pin board-to-board | 2 to 32 GB LPDDR4X (Radxa docs also list 1 GB) | module schematic PDF, placement map, pinout XLSX, 2D DXF, 3D STEP, carrier design note | USD 89 (Arace, sold out) | |
| Radxa CM5 Lite | Radxa | 3x 100-pin board-to-board | shares the CM5 downloads | USD 75 (Arace, sold out) | ||
| Radxa NX5 | Radxa | 260-pin SO-DIMM (Radxa: not for Jetson Nano carriers) | up to 16 GB LPDDR4X | module schematic PDF, pinout XLSX, DXF, STEP; IO board full design files on GitHub | ||
| Turing RK1 | Turing Machines | 260-pin SO-DIMM (vendor: Jetson pin compatible) | 8, 16 or 32 GB LPDDR4 | none | USD 249 (Turing Pi store) | |
| Mixtile Core 3588E / 3588JE | Mixtile | 260-pin SO-DIMM (vendor: Jetson TX2 NX pin compatible) | 4 to 32 GB LPDDR4 | module schematic PDF (V1.1.0), Jetson pin comparison, datasheet | USD 132 (Mixtile store, 4 GB / 32 GB, out of stock) | |
| ArmSoM CM7s | ArmSoM | 3x 100-pin Hirose DF40C-100DP-0.4V | 2 to 32 GB LPDDR4/4X | module schematic PDF, STEP, pinout, trace-length sheet; CM7s-IO carrier in OrCAD and Allegro | USD 176 (ArmSoM store, CM7s 4 GB / 32 GB) | |
| ArmSoM AIM7 | ArmSoM | 260-pin SO-DIMM (vendor: selected Jetson carriers) | 4 to 32 GB LPDDR4X | module schematic PDF, STEP; AIM-IO carrier in OrCAD and Allegro | USD 187 (ArmSoM store, AIM7 4 GB / 64 GB) | |
| ArmSoM LM7 and W3 kit | ArmSoM | LGA, 506 pads | 4 to 32 GB LPDDR4/4X | LGA506 footprint (Allegro, PADS), pin table, DXF; W3 carrier in OrCAD, Allegro and PADS | USD 268 (ArmSoM store, LM7 module 8 GB / 32 GB; W3 maker kit USD 735) | |
| Orange Pi CM5 | Xunlong (Orange Pi) | 3x 100-pin Hirose DF40C-100DP-0.4V(51) | 2 to 32 GB LPDDR4/4X/5 | base board and tablet base board schematic PDFs, module pin definition, module and base DXF, DF40C socket footprint (Allegro); no module schematic | ||
| FriendlyELEC CM3588 | FriendlyELEC | 4x 100-pin Hirose DF40C-100DP-0.4V(51) | 4 to 16 GB LPDDR4X, 32 GB LPDDR5 | module schematic PDF, pinout PDF, net pin-delay PDF, DXF | USD 149 (FriendlyELEC store, 4 GB / 64 GB) | |
| FriendlyELEC CM3588 Plus | FriendlyELEC | 4x 100-pin Hirose DF40C-100DP-0.4V(51) | 16 or 32 GB LPDDR5 | module schematic PDF, DXF, pinout | USD 358 (FriendlyELEC store, 16 GB / 64 GB) | |
| Firefly Core-3588J | Firefly | MXM 3.0 314-pin, 0.5 mm | 4 to 32 GB LPDDR4/4X/5 | specification PDF with pin table and drawing | USD 289 (Firefly store) | |
| Firefly Core-3588L / JL / ML | Firefly | LGA, 506 pads | 4 to 32 GB | specification PDF | USD 279 (Firefly store, L) | |
| Firefly Core-3588JD4 | Firefly | 260-pin SO-DIMM, 0.5 mm | 4 to 32 GB | specification PDF | USD 299 (Firefly store) | |
| Firefly Core-3588SJD4 | Firefly | 260-pin SO-DIMM, 0.5 mm | 4 to 32 GB | specification PDF | USD 259 (Firefly store) | |
| Firefly iCore-3588Q / JQ / MQ | Firefly | 1x 100-pin + 3x 80-pin board-to-board (part numbers not stated by Firefly) | 4 to 32 GB | specification PDF | USD 299 (Firefly store, Q) | |
| Firefly Core-3588SG | Firefly | BGA371 solder-down, 1.0 mm pitch | 4 to 32 GB | specification PDF | USD 279 (Firefly store) | |
| Forlinx FET3588-C / FET3588J-C | Forlinx | 4x 100-pin board-to-board, 0.4 mm, 1.5 mm mated height | 4, 8 or 16 GB | hardware manual, carrier board schematic (PDF and Altium source), carrier PCB (Altium), SoM and carrier 2D CAD, pinmux table (download center) | ||
| Boardcon CM3588 | Boardcon | 230-pin 1.0 mm castellated (QFN-style) solder-down + 39-pin camera FPC | 8 or 16 GB LPDDR4X | hardware manual, 3D model | ||
| Boardcon CM3588S | Boardcon | 196-pin 1.0 mm castellated (QFN-style) solder-down | 8 or 16 GB LPDDR4X | hardware manual, 3D model | ||
| Boardcon MINI3588 | Boardcon | 2x 140-pin 0.8 mm board-to-board (TE 5177983-6) | 8 or 16 GB LPDDR4X | hardware manual, 3D model | ||
| Geniatech SOM3588 | Geniatech | 314-pin SO-DIMM / MXM-style edge, 0.5 mm | 4 to 32 GB LPDDR4 | module schematic PDF, specification; DB3588V2 carrier specification and hardware user guide | USD 219 (Geniatech shop, 4 GB / 32 GB) | |
| Neardi LCN3588 | Neardi | 4x 100-pin 0.5 mm board-to-board (Panasonic AXK600337YG) | 4 to 16 GB LPDDR5 | product manual PDF | ||
| Advantech ROM-6881 | Advantech | SMARC 2.1 (314-pin MXM edge) | 4 or 8 GB LPDDR4 | datasheet, 3D model; carrier reference schematics and layout checklist supplied with the BSP | ||
| Jetway SMC-ARK1 | Jetway | SMARC (short size) | 8 or 16 GB LPDDR4X | datasheet | ||
| JWIPC JSOM-R88C | JWIPC | SMARC 2.1.1, 314-pin MXM edge | 4 or 8 GB LPDDR4X | datasheet | ||
| CHERRY TIGER (SOM-RK3588-Q7) | CHERRY Embedded Solutions (ex Theobroma Systems) | Qseven (MXM-230 edge) + FPC for cameras and HDMI in | up to 16 GB LPDDR4X | datasheet and user manual | ||
| Vantron VT-CORE-3588 | Vantron | 4x 100-pin expansion headers J1 to J4 (connector type not stated) | 32 GB LPDDR4X (only configuration listed) | datasheet with full pinout | ||
| MNT Reform RCORE RK3588 | MNT Research | Reform processor module carrying a Firefly iCore-3588Q | 16 GB | EUR 849 (MNT shop, 16 GB / 256 GB) |
Every public RK3588 / RK3588S board
| Board | Vendor | Type | RAM | Notable I/O | Design files | Price | Buy |
|---|---|---|---|---|---|---|---|
| Radxa CM5 IO Board | Radxa | Carrier | HDMI, 2x DSI, 2x CSI, GbE with PoE, M.2 E-key, USB 3 Type-C | full design files on GitHub (Altium, OrCAD, PADS), schematic PDF, BOM, DXF, STEP | |||
| Turing Pi 2.5 | Turing Machines | Carrier, Mini-ITX, 4x 260-pin SO-DIMM slots | BMC, managed GbE switch, 4x M.2 NVMe, 2x SATA | none | USD 279 (Turing Pi store) | ||
| FriendlyELEC CM3588 NAS Kit carrier | FriendlyELEC | Carrier, 160 x 116 mm, 4-layer | 4x M.2 M-key PCIe 3.0 x1, 2.5GbE, 2x HDMI out + HDMI in | schematic PDF, PCB layout PDF, DXF, 3D STEP | USD 35 (FriendlyELEC store, bare carrier) | ||
| Youyeetoo YY3588 | Youyeetoo | Dev kit, 82 x 53 mm core board on 120 x 88 mm base board, RK3588 | 4 to 32 GB LPDDR4/4X | schematics under NDA | USD 235.99 (youyeetoo store, 4 GB / 32 GB basic kit) | ||
| ROCK 5B | Radxa | SBC, 100 x 75 mm, RK3588 | 4 to 16 GB LPDDR4X | M.2 M-key PCIe 3.0 x4, 2.5GbE, 2x HDMI out + DP, HDMI in 4Kp60 | schematic PDF, placement PDF, 2D DXF, 3D STEP | USD 79.90 (Arace, 4 GB, out of stock) | |
| ROCK 5B+ | Radxa | SBC, 100 x 75 mm, RK3588 | 4 to 32 GB LPDDR5 | 2x M.2 M-key PCIe 3.0 x2, 2.5GbE, HDMI in 4Kp60, Wi-Fi | schematic PDF, placement PDF, 2D DXF, 3D STEP | USD 75 (Arace, 4 GB, out of stock) | |
| ROCK 5A | Radxa | SBC, 85 x 56 mm, RK3588S | 4 to 16 GB LPDDR4X | 2x micro HDMI, GbE, M.2 E-key PCIe 2.1 x1, 4-lane MIPI CSI | schematic PDF, placement PDF, 2D DXF, 3D STEP | USD 154.95 (Ameridroid, 4 GB) | |
| ROCK 5C / 5C Lite | Radxa | SBC, 86 x 56 mm; 5C on RK3588S2, 5C Lite on RK3582 | 1 to 32 GB; LPDDR4X (v1.1), LPDDR5 (v2.1) | HDMI 2.1 8K, GbE, Wi-Fi 6, 2x USB 3 | schematic PDF (v1.1, v2.10), placement PDF, 2D, 3D STEP | USD 34.90 (Arace, 5C Lite 2 GB, out of stock) | |
| ROCK 5 ITX / ITX+ | Radxa | SBC, Mini-ITX 170 x 170 mm, RK3588 | 4 to 32 GB LPDDR5 | 2x 2.5GbE, 4x SATA, HDMI in, M.2 M-key and E-key | ITX: schematic PDF, placement PDF, DXF, STEP; ITX+: STEP only | USD 89.99 (Arace, ITX+ 4 GB, out of stock) | |
| ROCK 5T / 5T Industrial | Radxa | SBC, 110 x 82 mm; RK3588 or RK3588J (Industrial) | 4 to 32 GB LPDDR5 | 2x M.2 M-key PCIe 3.0 x2, M.2 B-key with SIM, HDMI in 4Kp60, 2x HDMI + DP out | schematic PDF (v1.2, industrial v2.01), placement PDF, DXF, STEP | USD 249.95 (Ameridroid, 8 GB commercial, no eMMC) | |
| Radxa E52C | Radxa | SBC, 66 x 66 mm router, RK3582 | 1 to 4 GB LPDDR4 | 2x 2.5GbE, USB 3.0, USB-C console | schematic PDF, placement PDF | USD 55 (Arace, 2 GB, out of stock) | |
| Radxa E54C | Radxa | SBC, router, RK3582; 130 x 85 x 24 mm in case | 2 to 32 GB LPDDR4 | 4x GbE, HDMI 2.1, M.2 M-key NVMe (PCIe 2.1) | schematic PDF, placement PDF | USD 55 (Arace, 2 GB, out of stock) | |
| Orange Pi 5 | Xunlong (Orange Pi) | SBC, 62 x 100 mm, RK3588S | 4 to 16 GB LPDDR4/4X | M.2 M-key PCIe 2.0, GbE, HDMI 2.1, USB-C DP 1.4 | schematic PDF, mechanical archive | ||
| Orange Pi 5B | Xunlong (Orange Pi) | SBC, 62 x 100 mm, RK3588S | 4 to 16 GB LPDDR4/4X | eMMC 32 to 256 GB, Wi-Fi 6, GbE, HDMI 2.1 | schematic PDF, mechanical archive (shared with Orange Pi 5) | ||
| Orange Pi 5 Plus | Xunlong (Orange Pi) | SBC, 100 x 75 mm, RK3588 | 4 to 16 GB LPDDR4/4X | 2x 2.5GbE, M.2 M-key NVMe, HDMI in 4K60, 2x HDMI out | schematic PDF (V1.3.1), mechanical archive | ||
| Orange Pi 5 Pro | Xunlong (Orange Pi) | SBC, 89 x 56 mm, RK3588S | 4 to 16 GB LPDDR5 | M.2 M-key NVMe or SATA, GbE, HDMI 2.1 + HDMI 2.0, Wi-Fi 5 | schematic PDF, dimension drawing PDF | ||
| Orange Pi 5 Max | Xunlong (Orange Pi) | SBC, 89 x 57 mm, RK3588 | 4 to 16 GB LPDDR5 | M.2 M-key PCIe 3.0 x4, 2.5GbE, 2x HDMI 2.1, Wi-Fi 6E | schematic PDF (V1.1), dimension drawing PDF | ||
| Orange Pi 5 Ultra | Xunlong (Orange Pi) | SBC, 89 x 57 mm, RK3588 | 4 to 16 GB LPDDR5 | M.2 M-key PCIe 3.0 x4, 2.5GbE, HDMI in 4K60, Wi-Fi 6E | schematic PDF (V1.0), 2D DXF | ||
| NanoPC-T6 / T6 LTS | FriendlyELEC | SBC, 110 x 80 mm, 8-layer, RK3588 | 4 to 16 GB LPDDR4X | M.2 M-key PCIe 3.0 x4, 2x 2.5GbE, HDMI in 4Kp60, 2x HDMI out | schematic PDF (2301 and LTS 2310), 2D DXF | USD 179 (FriendlyELEC store, LTS 4 GB / 64 GB) | |
| NanoPC-T6 Plus | FriendlyELEC | SBC, 110 x 82.5 mm, RK3588 | 8 to 32 GB LPDDR5 | M.2 M-key PCIe 3.0 x4, 2x 2.5GbE, HDMI in 4Kp60, M.2 E-key and B-key | schematic PDF, 2D DXF | USD 359 (FriendlyELEC store, 16 GB / 64 GB) | |
| NanoPi R6S | FriendlyELEC | SBC, 62 x 90 mm router, RK3588S | 8 GB LPDDR4X | 2x 2.5GbE + GbE, HDMI 2.1, 64 GB eMMC (store; wiki says 32 GB) | schematic PDF, 2D DXF | USD 230 (FriendlyELEC store, 8 GB / 64 GB) | |
| NanoPi R6C | FriendlyELEC | SBC, 62 x 90 mm router, RK3588S | 4 or 8 GB LPDDR4X | 2.5GbE + GbE, M.2 M-key PCIe 2.1 x1, HDMI 2.1 | schematic PDF, 2D DXF | USD 149 (FriendlyELEC store, 4 GB / 64 GB) | |
| NanoPi M6 / M6V2 | FriendlyELEC | SBC, 62 x 90 mm, RK3588S | LPDDR5, 8 GB in store | M.2 M-key PCIe 2.1 x1, M.2 E-key, GbE, 2x MIPI DSI | schematic PDF, 2D DXF | USD 179 (FriendlyELEC store, M6V2 8 GB) | |
| Khadas Edge2 | Khadas | SBC, 82 x 57.5 mm, RK3588S2 | 8 or 16 GB LPDDR4X | HDMI 2.1, USB-C 3.1 with DP 1.4, 2x MIPI DSI, 3x MIPI CSI | schematic PDF (v1.1 to v1.3), 2D DXF, 3D STEP | USD 339 (Khadas store, Maker Kit Basic 8 GB / 32 GB, pre-order) | |
| ArmSoM Sige7 | ArmSoM | SBC, 92 x 62 mm, RK3588 | 4 to 32 GB LPDDR4X | M.2 M-key PCIe 3.0 x4, 2x 2.5GbE, HDMI 2.1 8K, USB-C DP 1.4 | schematic PDF, 2D DXF, placement PDF, case 3D model | USD 255 (ArmSoM store, 4 GB / 32 GB) | |
| ArmSoM Sige7s | ArmSoM | SBC, 92 x 62 mm, RK3588S | up to 32 GB LPDDR4/4X | HDMI 2.1 8K, DP 1.4, GbE, Wi-Fi 6 | schematic PDF, 2D DXF | ||
| Banana Pi BPI-M7 | Sinovoip (Banana Pi) | SBC, 92 x 62 mm, RK3588 | 8 to 32 GB LPDDR4/4X | 2x 2.5GbE, M.2 M-key PCIe 3.0 x4, HDMI 2.1 8K, USB-C DP | schematic PDF | ||
| Mixtile Blade 3 | Mixtile | SBC, Pico-ITX 100 x 72 mm with U.2 edge for stacking, RK3588 | up to 32 GB LPDDR4 | U.2 (PCIe 3.0 x4 + SATA), 2x 2.5GbE, HDMI input, 2x DP 1.4 over USB-C | schematic PDF (v1.2.0), U.2 breakout schematic | USD 239.95 (Ameridroid, 4 GB, out of stock) | |
| ODROID-M2 | Hardkernel | SBC, 90 x 90 mm, RK3588S2 | 4 to 16 GB LPDDR5 | 64 GB eMMC onboard, M.2 M-key PCIe 2.1 x1, GbE, HDMI 2.0 + USB-C DP alt | USD 180 (Hardkernel, 4 GB) | ||
| Indiedroid Nova | Indiedroid (Ameridroid) | SBC, 85 x 56 mm, RK3588S | 4 to 16 GB LPDDR4X | micro HDMI 2.1, GbE, 2x USB 3.0, eMMC socket | none found | USD 199.95 (Ameridroid, 16 GB / 64 GB bundle) | |
| youyeetoo R1 | youyeetoo | SBC, 100 x 69.3 mm, RK3588S | 4 to 32 GB LPDDR4 | M.2 M-key PCIe 2.0, GbE, HDMI 2.1 8K | schematic PDF (V2, V3), 2D DXF | HKD 1,162 (youyeetoo store, 4 GB / 32 GB kit) | |
| Firefly ROC-RK3588S-PC | Firefly | SBC, RK3588S | up to 32 GB | M.2 PCIe 2.0 x1, HDMI 2.1, HDMI RX 2.0 | USD 319 (Firefly store, 4 GB / 32 GB) | ||
| Firefly ROC-RK3588-RT / ROC-RK3588J-RT | Firefly | SBC, RK3588 or RK3588J | 4 to 32 GB | 2.5GbE + 2x GbE, HDMI 2.1 + HDMI 2.0, DP 8K, M.2 E-key | USD 339 (Firefly store, RT 4 GB / 32 GB) | ||
| Firefly ITX-3588J | Firefly | Dev kit, Mini-ITX, Core-3588J on MB-JM3-RK3588ITX carrier | 4 to 32 GB | PCIe 3.0 x4 slot, dual GbE, HDMI RX, Wi-Fi 6 | specification PDF | USD 449 (Firefly store, 4 GB / 32 GB) | |
| Firefly AIO-3588Q / JQ / MQ | Firefly | Dev kit, 146 x 102 mm, iCore-3588Q/JQ/MQ module on carrier; RK3588, RK3588J or RK3588M | 4 to 32 GB LPDDR4/4X/5 (Q); MQ up to 16 GB | HDMI 2.1 out, HDMI in, PCIe 3.0 x4, 2x GbE, CAN, RS485, RS232 | specification PDF | USD 419 (Firefly store, AIO-3588Q); MQ USD 649 | |
| Geniatech DB3588V2 | Geniatech | Dev kit, 150 x 125 mm carrier with SOM3588 | 4 to 32 GB LPDDR4 | GbE, 2x HDMI 2.1 out, HDMI 2.0 in, M.2 M-key, 2x SATA, CAN, 4x RS232 | SOM3588 schematic, carrier spec and hardware user guide | USD 279 (Geniatech store, DB3588V2 with SOM3588, 4 GB / 32 GB) | |
| Forlinx OK3588-C | Forlinx | Dev kit, 190 x 130 mm carrier with FET3588-C | 2x GbE, 5x MIPI CSI, HDMI 2.1, eDP, 2x DP | hardware manual online; carrier files via download center | |||
| Boardcon Idea3588 | Boardcon | Dev kit, 165 x 120 mm carrier with CM3588 | manuals only | ||||
| CHERRY HAIKOU | CHERRY Embedded Solutions | Carrier, Mini-ITX Qseven carrier for TIGER | GbE, HDMI, PCIe x4, CAN, RS232 | ||||
| QuartzPro64 | Pine64 | Dev kit | 16 GB LPDDR4X | open-ended PCIe 3.0 slot, 2x SATA, HDMI in, 2x GbE | schematic PDF (V1.0 2022-02-16), PCB placement PDFs |
Prices and links as checked on the dates in our data; the latest check on this page was 2026-10-13. Amazon links marked * are affiliate links; see our disclosure.
Boards with published design files
| Project | Author | Files | Tool | License |
|---|---|---|---|---|
| Radxa CM5 IO Board and NX5 IO Board | Radxa | schematic (Altium SchDoc, OrCAD DSN), layout (Altium PcbDoc, PADS), BOM, schematic PDF, placement PDF, DXF | Altium | none stated |
| ArmSoM W3, CM7s-IO and AIM-IO carriers | ArmSoM | schematic (OrCAD DSN, PDF), layout (Allegro brd, PADS), DXF, placement PDF | Allegro | none stated |
| Retro Lite CM5 (Radxa CM5 handheld carrier) | StonedEdge | schematic and layout (Eagle sch/brd), Gerbers (zip), display driver and fan boards | Fusion | CC BY-NC-SA 4.0 |
| Radxa CM5 carrier board | tinmarD | schematic (kicad_sch), layout (kicad_pcb), part 3D models | KiCad | none stated |
| Radxa CM5 KiCad library | swdee | symbol, footprint, 3D model (DF40C connector) | KiCad | MIT |
| Orange Pi CM5 carrier | dumtux | schematic and layout (EasyEDA Pro .epro), schematic PDF, Gerbers, BOM, pick-and-place | EasyEDA | none stated |
Buying the chip
Rockchip publishes no public price or MOQ. Small quantities of RK3588S and RK3588J are listed on LCSC; most products buy a SoM or work through a Rockchip agent.
- LCSC: RK3588S (C7422743)
- USD 54.80 at qty 1, USD 51.96 at 30+, 29 in stock, FCCSP-1253L
- LCSC: RK3588J (C22364189)
- USD 89.45 at qty 1, USD 84.85 at 30+, 32 in stock, FCBGA-1088L
- Rockchip official distributors (Korea)
- Rockchip's contact page names Microtech (Suwon) and InSignal (Seoul); no other regions listed
Datasheet, TRM and design documents
Linked where they are publicly hosted; we do not rehost Rockchip documents. These are third-party documents: we are not responsible for their accuracy, availability or confidentiality status. Disclosure.
- DatasheetRockchip RK3588 DatasheetV1.7 · 2023-11-17 · hosted by FriendlyELEC wiki · checked 2026-10-13
- DatasheetRockchip RK3588 DatasheetV1.6 · 2023-10-16 · hosted by FriendlyELEC wiki · checked 2026-10-13
- DatasheetRockchip RK3588S DatasheetV1.5 · 2023-11-10 · hosted by FriendlyELEC wiki · checked 2026-10-13
- DatasheetRockchip RK3588S2 DatasheetV1.0 · 2023-11-01 · hosted by Khadas · checked 2026-10-13
- DatasheetRockchip RK3588J DatasheetRev 1.1 · 2023-08-03 · hosted by LCSC · checked 2026-10-13
- DatasheetRockchip RK3582 DatasheetV1.1 · 2023-02-21 · hosted by Radxa · checked 2026-10-13
- ErrataRKAN18058: RK3588S and RK3588S2 differences and migration (Chinese)Rev 1.0 · 2023-11-07 · hosted by Radxa · checked 2026-10-13
- TRMRockchip RK3588 TRM Part 1V1.0 · 2022-03-09 · hosted by Khadas · checked 2026-10-13
- TRMRockchip RK3588 TRM Part 2V1.0 · 2022-03-09 · hosted by Khadas · checked 2026-10-13
- PMICRockchip RK806 DatasheetRev 1.2 · 2022-07-11 · hosted by LCSC · checked 2026-10-13
- Board schematicRadxa ROCK 5B schematic (RK3588 + RK806-1 + 3x RK860, boot mode table)V1.45 · hosted by Radxa · checked 2026-10-13
- Board schematicRadxa CM5 module schematic (RK3588S2)V2.21 · hosted by Radxa · checked 2026-10-13
- OtherForlinx OK3588-C User's Hardware Manual (FET3588-C carrier design rules)V1.6 · 2026-05-01 · hosted by Forlinx · checked 2026-10-13
- OtherRadxa CM5 Carrier Board Design Note1.0 · 2024-03-05 · hosted by Radxa · checked 2026-10-13
- OtherRockchip eMMC support listVer 1.84 · 2024-08-15 · hosted by Radxa · checked 2026-10-13
- Product briefRK3588 product pagehosted by Rockchip · checked 2026-10-13
- OtherFirefly AIO-3588Q / AIO-3588JQ / AIO-3588MQ specification (board vendor, lists RK3588M)hosted by Firefly · checked 2026-10-13
- DatasheetRockchip RK3588 Datasheet (newest; LPDDR5X, 0 to 80 C ambient)V2.2 · 2025-12-26 · community mirror (rockchip.fr), not hosted by Rockchip · checked 2026-10-13
- DatasheetRockchip RK3588S Datasheet (newest)V1.7 · 2026-01-05 · community mirror (rockchip.fr), not hosted by Rockchip · checked 2026-10-13
- DatasheetRockchip RK3588S2 Datasheet (newest)V1.3 · 2026-01-05 · community mirror (rockchip.fr), not hosted by Rockchip · checked 2026-10-13
- DatasheetRockchip RK3588J Datasheet (newest)V1.5 · 2026-01-05 · community mirror (rockchip.fr), not hosted by Rockchip · checked 2026-10-13
- DatasheetRockchip RK3588M DatasheetV1.5 · 2025-12-26 · community mirror (rockchip.fr), not hosted by Rockchip · checked 2026-10-13
- DatasheetRockchip RK3588C DatasheetV1.4 · 2025-12-26 · community mirror (rockchip.fr), not hosted by Rockchip · checked 2026-10-13
- PMICRockchip RK860 DatasheetRev 1.7 · 2023-11-06 · community mirror (rockchip.fr), not hosted by Rockchip · checked 2026-10-13
Questions about the RK3588 / RK3588S
Yes. Our modular handheld controller is built on an RK3588 SoM, on a carrier board we designed and brought up under Linux.
Rockchip does not host it publicly. The newest vendor-hosted revision is V1.7 (2023-11-17) on FriendlyELEC's wiki; RK3588S V1.5, RK3588S2 V1.0, RK3588J Rev 1.1 and RK3582 V1.1 are also hosted by board vendors or LCSC. Newer revisions (RK3588 V2.2, RK3588S V1.7, RK3588S2 V1.3, RK3588J V1.5, RK3588M V1.5, RK3588C V1.4) are only on the community mirror rockchip.fr. Khadas hosts the TRM V1.0 in two parts (2022-03-09).
Same cores, GPU, NPU and codecs. RK3588S is a smaller 17 x 17 mm package without PCIe 3.0, HDMI RX, the second GMAC, the second HDMI TX and the second DP/USB3 OTG, and with fewer camera inputs. RK3588S2 is the current RK3588S with remapped camera pins.
Up to 6 TOPS across three cores, supporting INT4, INT8, INT16, FP16, BF16 and TF32 per datasheet V1.7. Mainline gained the rocket NPU driver in Linux 6.18 with Mesa Teflon as userspace; Rockchip's RKNN-Toolkit2 and RKLLM still target the vendor kernel.
Small B2B modules (Radxa CM5, ArmSoM CM7s, Orange Pi CM5: 3x 100-pin; FriendlyELEC CM3588, Forlinx FET3588-C: 4x 100-pin), 260-pin SO-DIMM Jetson-style modules (Turing RK1, Mixtile Core 3588E, ArmSoM AIM7, Radxa NX5, Firefly Core-3588JD4), 314-pin MXM or SMARC modules (Firefly Core-3588J, Geniatech SOM3588, Advantech ROM-6881), a Qseven module (CHERRY TIGER) and solder-down LGA or castellated modules (ArmSoM LM7, Firefly Core-3588L, Boardcon CM3588).
Not directly. The boot ROM loads from FSPI, eMMC or SD; boards place a loader in SPI flash that then boots the NVMe drive.
Yes, RK3588J: -40 to 85 C ambient, A76 at 1.6 GHz in normal mode or 2.0 GHz in overdrive, which Rockchip warns may shorten lifetime at high temperature. The automotive RK3588M (AEC-Q100 Grade 3) is also rated -40 to 85 C, with A76 at 2.0 GHz.
Related chips and reading
We'll design your RK3588 board.
Tell us the interfaces, power budget and volume. An engineer replies with questions or a proposal.
Links and facts on this page checked 2026-10-13. Spotted something out of date? Tell us through the contact form.
Compiled from publicly available sources: datasheets, technical reference manuals, vendor product pages, schematics and source code published by their owners and third parties. We link to documents where others host them and do not host, endorse or vouch for them. Everything on these pages, including our own specs, summaries, block diagrams, comparisons, calculators and design notes, is for reference only and may contain errors or be out of date. It is provided as is, and Groundplane is not responsible for errors in it, for third-party documents, or for any design, board or decision based on it. Always check the manufacturer's current datasheet, reference manual and design guidance before you design a board. Rockchip, Allwinner, Raspberry Pi and other product names are trademarks of their owners; we are not affiliated with any of them. See our disclosure.