1 ROCK Pi 4B+ 基本情况

1.1  介绍

ROCK Pi 4 是 Radxa 公司基于 ROCK 芯片 RK3399 的SBC(单板计算机)。它可以运行 android 或一些  Linux 发行版。ROCK Pi 4 采用六核 ARM 处理器,64 位双通道 3200Mb/s LPDDR4,最高可达 4K@60HDMI、MIPI DSI、MIPI CSI、带麦克风的 3.5 毫米插孔、802.11 ac WIFI、蓝牙 5.0、USB 端口、GbE LAN、40 针彩色扩展头、RTC。此外,ROCK Pi 4支持USB PD和QC供电。来自【 Rockpi4 - Radxa Wiki】。

4B+ 相较于 4B,主要是板载了 eMMC,其他一致。

1.2 详细参数

Model

ROCK PI 4 Model B / B Plus

Processor

64bits hexa core processor

Rockchip RK3399

Dual Cortex-72, frequency 1.8GHz with qual Cortex-A53, frequency 1.4GHz

Mali T860MP4 gpu, support OpenGL ES 1.1/2.0/3.0/3.1/3.2, Vulkan 1.0, Open CL 1.1 1.2, DX11.

Memory

LPDDR4

64bit dual channel LPDDR4@3200Mb/s, 1GB/2GB/4GB optioal

Storage

eMMC module (Optional industrial compatible high performance eMMC module, 8GB/16GB/32GB/64GB/128GB available)

μSD card (μSD slot supports up to 128 GB μSD card)

M.2 SSD (M.2 connector supports up to 2T M2 NVME SSD)

Display

HDMI 2.0 up to 4k@60

MIPI DSI 2 lanes via FPC connector

HDMI and MIPI DSI can work at the same time, support mirror mode or extend mode.

Audio

3.5mm jack with mic

HD codec that supports up to 24-bit/96KHz audio.

Camera

MIPI CSI 2 lanes via FPC connector, support up to 800 MP camera.

Wireless

802.11 ac wifi

Bluetooth 5.0

with on board antenna

USB

USB 3.0 OTG X1, hardware switch for host/device switch, upper one

USB 3.0 HOST X1, dedicated USB 3.0 channel, lower one

USB 2.0 HOST X2

Ethernet

GbE LAN with Power over Ethernet (PoE) support

additional HAT is required for powering from PoE

IO

40-pin expansion header

2 x UART

2 x SPI bus

3 x I2C bus

1 x PCM/I2S

1 x SPDIF

2 x PWM

1 x ADC

6 x GPIO

2 x 5V DC power in

2 x 3.3V DC power in

Others

RTC

RTC battery connector for time backup(optional)

Power

USB PD, support USB Type C PD 2.0, 9V/2A, 12V/2A, 15V/2A, 20V/2A.

Qualcomm® Quick ChargeTM: Supports QC 3.0/2.0 adapter, 9V/2A, 12V/1.5A

Size

85mm x 54mm

来自【 Rockpi4/getting started - Radxa Wiki】。

2 ROCK Pi 4B+ 硬件说明

2.1 4B+ 产品型号

SKU

RAM

eMMC

PD/QC

WiFi/BT

Antenna

HW REV

Note

RS114-A4E32

4GB

32GB

HT188+LDR6015

-

-

v1.6

EoL

RS114-A2E16

2GB

16GB

CH224D

-

-

v1.72

RS114-A4E32

4GB

32GB

CH224D

-

-

v1.72

RS114-A4E64

64GB

CH224D

-

-

v1.72

RS114-A4E128

128GB

CH224D

-

-

v1.72

RS114-B4E32

4GB

32GB

HT188+LDR6015

AP6256

On board

v1.6

EoL

RS114-B2E16

2GB

16GB

CH224D

AP6256

On board

v1.72

RS114-B4E32

4GB

32GB

CH224D

AP6256

On board

v1.72

RS114-B4E64

 

64GB

CH224D

AP6256

On board

v1.72

 

RS114-B4E128

128GB

CH224D

AP6256

On board

v1.72

RS114-B4E32T

4GB

32GB

CH224D

AP6256

u.FL connector

v1.72

RS114-B4E64T

64GB

CH224D

AP6256

u.FL connector

v1.72

RS114-B4E128T

128GB

CH224D

AP6256

u.FL connector

v1.72

来自【 https://wiki.radxa.com/Rockpi4/hardware/models】。

笔者选购的是 RS114-B4E64 ,板载 64G EMMC、WIFI/BT,某宝带散热片共 676 米。硬件相关的资料可参考官网【Rockpi4/hardware - Radxa Wiki】。

2.2 CPU

RK3399 有 6 个 CPU 内核,2 个大内核 A72,4 个小内核 A53。在 Linux 中,CPU0 到 CPU3 是小内核,CPU5 和CPU6 是大内核。

查看 cpu[0 - 3] 支持的频率:

    1

    2

# cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies

  408000 600000 816000 1008000 1200000 1416000

查看 cpu[4 - 5] 支持的频率:

    1

    2

# cat /sys/devices/system/cpu/cpu5/cpufreq/scaling_available_frequencies

  408000 600000 816000 1008000 1200000 1416000 1608000 1800000

查看 cpu[0 - 3] 当前的频率:

    1

    2

    3

    4

    5

# cat /sys/devices/system/cpu/cpu[0123]/cpufreq/cpuinfo_cur_freq

  1416000

  1416000

  1416000

  1416000

设置 cpu[4 - 5] 为最大频率:

    1

    2

# echo 1008000 > /sys/devices/system/cpu/cpu4/cpufreq/scaling_max_freq

# echo 1008000 > /sys/devices/system/cpu/cpu5/cpufreq/scaling_max_freq

关闭两个大核心

    1

    2

# echo 0 > /sys/devices/system/cpu/cpu4/online

# echo 0 > /sys/devices/system/cpu/cpu5/online

来自【 https://wiki.radxa.com/Rockpi4/hardware/cpu】。

2.3 GPIO

ROCK Pi 4B+ 有一个 40 PIN 扩展排针,通过不同颜色区分引脚的功能。

GPIO number

Function2

Function1

GPIO

Pin#

Pin#

GPIO

Function1

Function2

GPIO number

+3.3V

1

2

+3.3V

71

I2C7_SDA

GPIO2_A7

3

4

+5.0V

72

I2C7_SCL

GPIO2_B0

5

6

GND

75

SPI2_CLK

GPIO2_B3

7

8

GPIO4_C4

UART2_TXD

148

GND

9

10

GPIO4_C3

UART2_RXD

147

146

PWM0

GPIO4_C2

11

12

GPIO4_A3

I2S1_SCLK

131

150

PWM1

GPIO4_C6

13

14

GND

149

SPDIF_TX

GPIO4_C5

15

16

GPIO4_D2

154

+3.3V

17

18

GPIO4_D4

156

40

UART4_TXD

SPI1_TXD

GPIO1_B0

19

20

GND

39

UART4_RXD

SPI1_RXD

GPIO1_A7

21

22

GPIO4_D5

157

41

SPI1_CLK

GPIO1_B1

23

24

GPIO1_B2

SPI1_CSn

42

GND

25

26

ADC_IN0

64

I2C2_SDA

GPIO2_A0

27

28

GPIO2_A1

I2C2_CLK

65

74

I2C6_SCL

SPI2_TXD

GPIO2_B2

29

30

GND

73

I2C6_SDA

SPI2_RXD

GPIO2_B1

31

32

GPIO3_C0

SPDIF_TX

UART3_CTSn

112

76

SPI2_CSn

GPIO2_B4

33

34

GND

133

I2S1_LRCK_TX

GPIO4_A5

35

36

GPIO4_A4

I2S1_LRCK_RX

132

158

GPIO4_D6

37

38

GPIO4_A6

I2S1_SDI

134

GND

39

40

GPIO4_A7

I2S1_SDO

135

其中,

  • 橙色标记的引脚是该 GPIO 在 ROCK Pi 系统下的默认功能。
  • 除电源引脚(+3.3V、+5.0V 和 GND)外,其余管脚均直接与 SoC RK3399 连接。
  • I2C:引脚 3、5、27、28、29 和 31,均外接 4.7K 电阻上拉至 3.0V 电源。
  • SPI:引脚 19、21、23 和 24 ,由 SoC 的 SPI1 外设直接引出。
  • 引脚 7 与板上 MIPI CSI 的引脚直连(笔者理解为 IO 复用,直接使用会有干扰)。
  • UART
    • 默认情况下,UART2 作为 U-boot 和 Linux 串行控制台启用。查看【Rockpi4/dev/serial-console - Radxa Wiki】如何使用。查看【Rockpi4/hardware/devtree overlays - Radxa Wiki】如何失能(关闭)UART2 串口控制。下文会提到如何使用。
    • UART2 和 UART4 支持多种波特率。它包括但不限于以下波特率。例如,115200bps. 500000bps, 1500000bps 等。
    • 对于 v1.4及更高版本的硬件,焊接了板载 4MB(32Mbit) SPI Flash 外设( 用于存放 boot loader参考 v1.4 更新 [A 4MB(32Mbit) SPI flash is pasted by default, for future SPI booting support]),故 UART4 引脚复用作 SPI 功能。
  • I2C-2和I2C-7
    • 官方正在测试  I2C E2PROM 外设,需要打开 I2C 设备文件,然后进行读/写操作(用于存放 MAC 地址,参考 v1.6 更新 [Add EEPROM (BL24C16A) for mac address and serial no.] )。

来自【 Rockpi4/hardware/gpio - Radxa Wiki】。

2.4 LED

ROCK Pi 4 上板载两个 LED 灯。

电源指示灯:绿色。常亮用于指示系统供电是否正常。

状态指示灯:

  • 红色,v1.3 版本,指示系统状态。
  • 蓝色,v1.4 版本(v1.72 为蓝色,故此处表示此后版本沿用),指示系统状态。
  • 对于较新的内核(具体版本,未指明,v1.72 符合),状态指示灯配置为心跳灯,在系统成功引导后或启动时闪烁。

它的功能可以根据需要改变。

    1

    2

# cat /sys/class/leds/user-led2/trigger

  none rc-feedback kbd-scrolllock kbd-numlock kbd-capslock kbd-kanalock kbd-shiftlock kbd-altgrlock kbd-ctrllock kbd-altlock kbd-shiftllock kbd-shiftrlock kbd-ctrlllock kbd-ctrlrlock mmc0 mmc1 timer oneshot [heartbeat] backlight gpio cpu0 cpu1 cpu2 cpu3 cpu4 cpu5 default-on rfkill0 mmc2 rfkill1 rfkill2

例如,要将其设置为显示 eMMC 读/写状态:

    1

# echo mmc1 >  /sys/class/leds/user-led2/trigger

来自 【 Rockpi4/hardware/led - Radxa Wiki>】。

2.5 eMMC

ROCK Pi 4 没有板载存储,而是使用 eMMC 模块。eMMC 模块的好处是用户可以根据需要选择存储设备,也减少了主板 SKU。此外,可插拔的eMMC模块使切换操作系统成为可能。笔者购买的是 4B+,已板载 eMMC,故此部分可自行官网学习,同样官网也提供了 eMMC 模块的系统烧录方法【Rockpi4/hardware/emmc - Radxa WikiRockpi4/hardware/usb3 eMMC reader - Radxa Wiki】。

2.6 RTC 电池

ROCK Pi 4 保留一个 RTC 电池连接器,以便在关机时保持时间。RTC 功能由 RK808 PMIC 提供。RTC 电池规格如下:

  • 连接器类型:XH1.25mm
  • 电压:3.0V
  • 电池型号:CR2032

笔者未购买,后续可采购一个或做 PCB 转接板的时候做在板子上。

2.7 散热片

官方提供图纸,笔者推荐购买ROCK Pi 时一起购买。

2.8 显示与相机

ROCK Pi 目前屏幕与摄像头与树莓派官方兼容处理,具体参考:

HDMI显示【Rockpi4/hardware/display - Radxa Wiki】。

MIPI CSI/USB摄像头【Rockpi4/hardware/camera/ - Radxa Wiki】。

2.9 HATs 扩展板

官方目前提供 PoE/SATA 的扩展板。

POE 【ROCKPI 23W PoE HAT - Radxa Wiki】。

STAT 【Dual Quad SATA HAT - Radxa Wiki】和 【Penta SATA HAT - Radxa Wiki】。

2.10 M.2 扩展板

官方提供了扩展板的尺寸与原理图,笔者准备 JLC PCB来一块!

2.11 SPI Flash

RK3399 可以从 SPI/SD卡/eMMC引导,引导的 SPI 总线是 SPI1 。ROCK Pi 4 v1.3 和更早的版本预留了 Flash 但未焊接(v1.72 已焊接)。有几个原因:

  • SPI 在扩展排针上引出,如果将其用作引导 ROM,则无法连接驱动其他 SPI 外设。
  • 如果 SPI Flash 中的 bootloader 损坏,它将使 ROCK Pi 4 变砖。
  • Bootloader 以前不支持从 USB3 或 NVMe 引导,而且缺少一些工具来轻松写入 SPI Flash。

2.12 设备树

查看【Rockpi4/hardware/devtree overlays - Radxa Wiki】。

3 ROCK Pi 4B+ 从 USB OTG 端口将镜像安装到 eMMC

ROCK Pi 4 支持 Maskrom 模式,这是 CPU 等待 USB OTG 端口命令的一种特殊操作模式。在 Linux/macOS 平台中使用工具 rkdeveloptool,在 Windows 平台下使用工具 RKDevTool。

3.1 设备准备

  • 支持此方法的设备如下:
    • ROCK Pi 4A
    • ROCK Pi 4A Plus
    • ROCK Pi 4B
    • ROCK Pi 4B Plus
    • ROCK Pi 4C
  • 板载 eMMC / eMMC 模块。
  • USB Type-C 电源适配器(5V-3A)。
  • 双公头 USB 线,实际上应称为 OTG 线,主要应用于不同的设备或移动设备间的联接,进行数据交换。简单来说,USB 是针对计算机与外部设备的连接和通信,OTG 是针对无计算机的情况下,设备之间的数据传输。

红色标注的为笔者准备的硬件,此外,还准备了用于调试的USB转串口、以太网线、无线路由器。

来自【Rockpi4/dev/usb-install - Radxa Wiki】。

 

3.2 软件准备

3.3 镜像准备

3.4 引导 ROCK Pi 4B+ 进入 Maskrom 模式

1)切断 ROCK Pi 电源。

2)连接 USB 转串口(本人自制的 CH9344 USB 转四串口),软件采用 MobaXterm,串口配置波特率 1.5 Mbps、数据位 8 bits、停止位 1 bits、无奇偶校验、无硬件流控 。

① 硬件连接

ROCK Pi 4 B+

<--->

USB to TTL module

RX(pin 10)

<--->

TX

TX(pin 8)

<--->

RX

GND(pin 6)

<--->

GND

② 软件设置

3)短路板载的 SPI Flash,即扩展引脚的 23脚 SPI_CLK 和 25 脚 GND。

4)移除 SD 卡。

5)确认 eMMC(4B+ 版本外安装 eMMC 模块)。

6)连接 ROCK Pi 4B+ OTG port(USB 3.0 接口的上面一个)与 PC USB口。

7)ROCK Pi 4B+ 版本按下 Maskrom 模式按键(1: Reset 2: Maskrom 3: Recovery)等上电后再松开

8)确认 ROCK Pi 4B+ 是否处于 Maskrom 模式。Windows下,打开 RKDevTool 软件,观察提示栏信息:

Windows 11 设备管理器

RKDevTool 软件

9)下载镜像。

① 右键配置下载项。

② 配置分区名字。

③ 装载 Loader 与 Ubuntu 镜像。

RKDevTool 软件

10)下载完毕,自动重启,用户名与密码均为 rock

RKDevTool 软件

串口 Log

11)插上网线重启 sudo reboot主要是之前忘了,懒得重新刷机)。

TP-LINK 查看  ROCK Pi  信息

Ping baidu 成功

PC ping ROCK Pi 4B+ 成功

4 总结

  1. 实际在刷机过程中,无需断电再上电,只需先按下 Maskrom 按键,再按下 Reset 按键即可进入 Maskrom 模式。
  2. 下篇文章准备学习并更新:
    • 如何安装 Ubuntu Server 桌面?
    • 如何通过 SSH 终端连接 ROCK Pi 4B+?
    • 如何对 ROCK Pi 4B+ 的 GPIO 进行控制?

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐