Rock5b学习笔记

Rock5b学习笔记

所有资料收集自互联网,包括但不限于官方Q群,WX群,CSDN等。

板子展示

  1. 跑分

    https://browser.geekbench.com/v5/cpu/18817954

    https://browser.geekbench.com/v5/cpu/18865464

  2. 实物图

资料

链接

  1. https://radxa-docs.github.io/
  2. https://github.com/radxa-docs/radxa-docs.github.io
  3. RK3588博客__loitawu
  4. Rock5B开发板系列教程
  5. radxa Rock 5b使用体验
  6. panfork mesa to support mali g610
  7. https://zphj1987.com/rk3588/intro
  8. Linux 命令大全

命令

抽奖

1
for i in `seq 0 7`; do echo ========cpu$i;cat /sys/bus/cpu/devices/cpu${i}/cpufreq/scaling_max_freq; done
1
sudo sed -i "s|focal|jammy|g" /etc/apt/sources.list && sudo apt update && sudo apt dist-upgrade && sudo reboot
1
cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_max_freq
1
lscpu | grep MHz
1
2
#pytm-volt-sel 越大越好
dmesg | grep -i pvtm
1
dmesg | grep -E 'pvtm|dmc' | grep -E 'pvtm=|sel='

第一次上电测的体质

买来1个月测的体质,pvtm降低了。。。

中文

sudo apt install locales
sudo dpkg-reconfigure locales

选上 en_US UTF-8 和 zh_CN UTF, 在最后一步设置默认locales 那里建议选 en_us 别选中文,不然终端乱码。

然后相应的桌面环境中,在它的语言设置里面设置语言为中文,比如 KDE 可以在系统设置中设置为中文就行。

然后,安装中文字体, 比如 fonts-noto-cjk
fonts-noto-cjk-extra 中文就不方块了

工具箱

1
rm -rf ./rockpi5.sh && wget -O rockpi5.sh https://uwp.cc/s/board/rockpi5.sh && chmod +x rockpi5.sh && clear && sudo ./rockpi5.sh

风扇 待完善

1
rm -rf ./rockpi5.sh && wget -O rockpi5.sh https://uwp.cc/s/board/rockpi5.sh && chmod +x rockpi5.sh && clear && sudo ./rockpi5.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
sudo rm -rf PID
sudo rm -rf Rock5B_Naive_Pwm_Fan
git clone https://ghproxy.com/https://github.com/XZhouQD/Rock5B_Naive_Pwm_Fan
git clone https://ghproxy.com/https://github.com/leipopo/keke4rockpi5b

cd $HOME/keke4rockpi5b/ctrlscript/fanctrl
sudo python3 fanctrl.py

cd $HOME/keke4rockpi5b/ctrlscript/fanctrl
sudo nohup python3 fanctrl.py &

sudo chmod +x ./fan_pwm
sudo cp fan_pwm /usr/local/bin/.
sudo chmod +x /usr/local/bin/fan_pwm

cd Rock5B_Naive_Pwm_Fan
sudo cp fan_pwm.service /etc/systemd/system/.
sudo systemctl daemon-reload
sudo systemctl start fan_pwm
sudo systemctl enable fan_pwm

##
echo 0 > /sys/devices/platform/fd8b0010.pwm/pwm/pwmchip*/export
echo 7200 > /sys/devices/platform/fd8b0010.pwm/pwm/pwmchip*/pwm0/period
echo 7200 > /sys/devices/platform/fd8b0010.pwm/pwm/pwmchip*/pwm0/duty_cycle
echo normal > /sys/devices/platform/fd8b0010.pwm/pwm/pwmchip*/pwm0/polarity
echo 1 > /sys/devices/platform/fd8b0010.pwm/pwm/pwmchip*/pwm0/enable

##
cat /sys/devices/platform/fd8b0010.pwm/pwm/pwmchip*/pwm0/duty_cycle
echo 5800 > /sys/devices/platform/fd8b0010.pwm/pwm/pwmchip*/pwm0/duty_cycle
1
2
3
git clone https://ghproxy.com/https://github.com/leipopo/keke4rockpi5b
cd $HOME/keke4rockpi5b/ctrlscript/fanctrl
sudo python3 fanctrl.py

可用

1
2
3
git clone https://ghproxy.com/https://github.com/shjdgwj/Fan4Rock5B
cd $HOME/Fan4Rock5B/py
sudo python3 fanctrl.py
1
2
3
4
5
6
7
8
9
10
11
12
sudo rm -rf ./Fan4Rock5B
git clone https://ghproxy.com/https://github.com/shjdgwj/Fan4Rock5B
cd $HOME/Fan4Rock5B/shell
sudo cp fan_pwm /usr/local/bin/.
sudo chmod +x /usr/local/bin/fan_pwm
sudo cp fan_pwm.service /etc/systemd/system/.
sudo systemctl daemon-reload
sudo systemctl start fan_pwm
sudo systemctl enable fan_pwm


sudo systemctl |grep -i fan

【新手向】Rock5B启动fan接口并设置开机自启(pwm调速)

PD协商电压 温度

1
2
3
sudo apt update 
sudo apt install lm-sensors
sensors

跑分

2.5等 https://browser.geekbench.com/v5/cpu/18158036

特挑1等 https://browser.geekbench.com/v5/cpu/18158244

Geekbench5

1
2
3
wget https://cdn.geekbench.com/Geekbench-5.4.4-LinuxARMPreview.tar.gz
tar -zxvf Geekbench-5.4.4-LinuxARMPreview.tar.gz
./Geekbench-5.4.4-LinuxARMPreview/geekbench5
1
2
3
4
5
mkdir -p ~/software/geekbench5 && cd ~/software/geekbench5 
wget https://cdn.geekbench.com/Geekbench-5.4.0-LinuxARMPreview.tar.gz
tar xf Geekbench-5.4.0-LinuxARMPreview.tar.gz
cd Geekbench-5.4.0-LinuxARMPreview
./geekbench_aarch64

首次安装

1
2
3
sudo apt install build-essential #编译
sudo apt install ntp#网络校时
sudo apt install lm-sensors#温度

方法

如何在5B上使用桌面GPU加速:

  1. 安装kde
  2. 安装libqt5gui5-gles, libqt5quick5-gles, libqt5quickparticles5-gles
  3. 在/etc/profile里增加export KWIN_COMPOSE=O2ES
  4. 重启,选择kde登录
    然后你就能享受到虽然还是卡但是是有GPU加速的桌面了

Rock 5B 本地编译要点说明

最重要的差别是 : (阿超哥的方法 )检测编译环境,如果是在 arm64上编译的话,就去掉ARCH 和 CROSS_COMPILE 交叉编译变量 build/board_configs.sh 最后面加上这几行:

1
2
3
4
5
#build on native arm64
if [ "X$(uname -m)" == "Xaarch64" -a "X${ARCH}" == "Xarm64" ]; then
unset ARCH
unset CROSS_COMPILE
fi
  • 主要参考是官方wiki:https://wiki.radxa.com/Rock5/guide/build-debian-from-debos-radxa (这里原文是跨平台交叉编译)

  • 在工具链这里,不需要 安装跨平台工具链 gcc-arm-10.3***** ,只要本地安装 gcc 及配套工具( sudo apt-get install gcc xxx)

  • 其他按官方顺序执行命令

    注意:u-boot 和kernel有配置好的config,只要按官方分别执行对应的 ./build/mk-uboot.sh rk3588-rock-5b 或 ./build/mk-kernel.sh rk3588-rock-5b

exFAT

安装exfat fuse

kubesphere 3.3.1

步骤1:更换内核
因为 Radxa 官方内核现在不支持,暂时需要更换内核:
https://github.com/ihexon/rock5b_kernel/releases

步骤2:根据 KubeSphere 官方文档安装
https://kubesphere.com.cn/docs/v3.3/quick-start/all-in-one-on-linux/

步骤3:修补 KubeSphere 开源版暂不支持的 arm64 镜像

1
2
3
# defaultbackend
sudo docker pull playgali/defaultbackend
sudo docker tag playgali/defaultbackend mirrorgooglecontainers/defaultbackend-amd64:1.4

驱动

https://github.com/happyme531/Adafruit_Blinka/commits/rk3588-rock-5

rock5 gpio i2c spi pwm 串口 adc 全部适配完成

wifi

使用nmtui注意Security选择 WPA & WPA2 Personal

换源

1
2
3
4
5
6
7
8
9
10
11
12
13
sudo nano /etc/apt/sources.list
deb https://mirrors.ustc.edu.cn/debian/ bullseye main contrib non-free
# deb-src https://mirrors.ustc.edu.cn/debian/ bullseye main contrib non-free

deb https://mirrors.ustc.edu.cn/debian/ bullseye-updates main contrib non-free
# deb-src https://mirrors.ustc.edu.cn/debian/ bullseye-updates main contrib non-free

deb https://mirrors.ustc.edu.cn/debian/ bullseye-backports main contrib non-free
# deb-src https://mirrors.ustc.edu.cn/debian/ bullseye-backports main contrib non-free

deb https://mirrors.ustc.edu.cn/debian-security/ bullseye-security main contrib non-free
# deb-src https://mirrors.ustc.edu.cn/debian-security/ bullseye-security main contrib non-free

中文设置

1
2
3
sudo apt-get install locales
# 配置locales
sudo dpkg-reconfigure locales

en_US.UTF-8zh_CN的4个全部选上,最后一步设置默认locales 那里选zh_CN.UTF-8

安装中文字体

1
apt install fonts-noto-cjk

armbian-config进入慢

先输入armbian-config,再CTRL+C,最后再输入armbian-config

KDE桌面

Using different desktop environments on Armbian

1
2
3
4
5
6
7
8
#安装KDE桌面
sudo add-apt-repository ppa:kubuntu-ppa/backports
sudo apt-get update
sudo apt-get install -y kubuntu-desktop
#修改默认桌面
cd /usr/share/xsessions
#看到有ubuntu.desktop ubuntu-xorg.desktop
#后面还不会改

安卓root

1
2
3
4
5
6
#备份boot 
dd if=/dev/block/nvme0n1p5 of=/storage/emulated/0/mod.img
#刷入boot
dd if=/storage/emulated/0/mod.img of=dev/block/nvme0n1p5
sync
reboot

备份系统&挂载ntfs盘&挂载exFAT盘

1
2
3
4
5
6
7
8
9
10
11
12
13
14
sudo apt install -y cifs-utils
#挂载
sudo mount -t cifs -o username=justcopy,password=isnotgood //192.168.3.100/rock5b /mnt
#备份
sudo dd if=/dev/nvme0n1p2 conv=sync,noerror bs=64k status=progress | gzip -c > /mnt/backup_image_$(date +"%Y%m%d").img.gz
#恢复
sudo gunzip -dc /mnt/backup_image_20221214.img.gz | dd of=/dev/nvme0n1p2 bs=64k status=progress
#安装包
sudo apt install -y ntfs-3g exfat-fuse exfatprogs
#查看分区号
fdisk -l
#挂载
sudo mount -t ntfs-3g /dev/sda1 /mnt #ntfs
sudo mount -t exfat /dev/sda1 /mnt #exFAT

docker

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# update software repositories
sudo apt update
# install necessary packages for https apt calls
sudo apt install apt-transport-https ca-certificates curl gnupg-agent software-properties-common

# ===============debian===============
# add docker GPG key
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
# add docker software repository
sudo add-apt-repository "deb [arch=arm64] https://download.docker.com/linux/debian $(lsb_release -cs) stable"
#===============debian===============

# ===============debian===============
# add docker GPG key
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
# add docker software repository
sudo add-apt-repository "deb [arch=arm64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
#===============debian===============

sudo update-alternatives --set iptables /usr/sbin/iptables-legacy
sudo update-alternatives --set ip6tables /usr/sbin/ip6tables-legacy


# install docker
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io
# start docker service
sudo systemctl start docker
# enable docker service on startup
sudo systemctl enable docker
# create a docker group
sudo groupadd docker
# add the current user to the docker group
sudo usermod -aG docker $USER

注意!!!

出现此类报错

官方内核没有build-in iptables/nftables support

iptables切换成legacy版本即可

1
2
sudo update-alternatives --set iptables /usr/sbin/iptables-legacy 
sudo update-alternatives --set ip6tables /usr/sbin/ip6tables-legacy

综上所述,正确的安装姿势为

1
2
3
4
sudo update-alternatives --set iptables /usr/sbin/iptables-legacy 
sudo update-alternatives --set ip6tables /usr/sbin/ip6tables-legacy
curl -fsSL get.docker.com -o get-docker.sh
sudo sh get-docker.sh --mirror Aliyun

普通用户权限

1
2
3
4
sudo cat /etc/group | grep docker
sudo groupadd docker
sudo usermod -aG docker rock
reboot

其他

1
2
3
4
5
6
7
8
9
10
11
docker pull ubuntu:18.04
docker run -itd ubuntu:18.04 /bin/bash
docker rename 7c3c7fb90645 ubuntu18
docker start ubuntu18
docker exec -it ubuntu18 /bin/bash
#挂载
#docker stop 容器名
#docker commit 容器名 新的镜像名
#docker run -v "挂载" 新的镜像名
docker commit ubuntu18 himix100:v1
docker run -itd ubuntu:18.04 /bin/bash

linux 已经创建的容器container 如何挂载共享文件夹 如何更改端口 (docker)

🚀🚀Docker — 从入门到实践

关于Docker目录挂载的总结

虚拟化

  1. 用 qemu-user 在arm linux机器上运行amd64/x86程序

系统

  1. rock5b uos

  2. rock5b专用内核:完美收官,对应源码已上传:
    https://github.com/unifreq/linux-rock5b

    允许全频率(电压超至1.1v, 默认未开)
    开启方法:
    vi /boot/armbianEnv.txt

    overlays=uart7-m2
    改为
    overlays=uart7-m2 [空格] full-cpufreq

  3. Rock5b Openwrt固件:采用5.10.149内核,并支持nvme(已测试)或usb启动(未测试)。
    如果需要nvme或usb启动,必须要先刷入spi 的bootloader, 用前两天发的 bootloader包:
    rock5b-bootloader_20221017.tar.gz

    https://t.me/openwrt_flippy/3464

    用法:

    1. 先刷入TF卡启动成功后,把img镜像上传到 /mnt/mmcblk0p4
    2. 进入TF卡里的openwrt,运行命令:
      cd /mnt/mmcblk0p4
      dd if=openwrt-xxxxxx.img of=/dev/nvme0n1 bs=1M conv=fsync
    3. 然后关机,把TF卡拔掉再开机即可。
    4. 用同一个镜像写的TF卡固件和nvme固件由于UUID相同,如果再重新插上TF卡启动会有问题,TF和nvme采用不同版本的固件就没问题。
  4. 官方镜像用户名密码 rock @rock

  5. 目前我看到的并且我自己试过的各种镜像,我总结一下,咱们群里用的各种rock5b镜像主要是有四个来源:

    1、radxa官方发出的debian、ubuntu和安卓,已经有半个月没更新了,debian和ubuntu可以直接装obs,但没有mali驱动之类的,不能用gpu

    2、armbian官方社区发出的armbian,尤其是sid的那个,但armbian官方社区也已经有半个多月没更新了,我试过记得也可以直接装obs,但也没有mali驱动之类的,不能用gpu

    3、咱们群里有lost in utopia这位大佬,整合出来mali驱动,可以用gpu,并且这位大佬在3天前又发出自带mali驱动可以开箱即用的armbian镜像,桌面是gnome,doom3可以全特效平均跑40帧,但不能直接装obs

    https://github.com/amazingfate/armbian-rock5b-images/releases

    4、咱们群里还有StatusHeadcrabed这位大佬, 也发出自带mali驱动可以开箱即用的armbian镜像,桌面是gnome和kde,doom3可以全特效平均跑40帧,但不能直接装obs

  6. Armbian https://github.com/Headcrabed/armbian-rock5b-images

    默认没GPU驱动

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    # 下载显卡驱动固件
    wget https://github.com/JeffyCN/rockchip_mirrors/raw/libmali/firmware/g610/mali_csffw.bin
    sudo mv mali_csffw.bin /lib/firmware/
    # 添加大佬源
    sudo add-apt-repository ppa:liujianfeng1994/panfork-mesa
    sudo apt update
    sudo apt upgrade
    # kde
    sudo add-apt-repository ppa:kubuntu-ppa/backports
    sudo apt-get update
    sudo apt-get install -y kubuntu-desktop

驱动

  1. RTL8852be

    下载rtl8852bu_fw.bin放进/lib/firmware/realtek

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    sudo apt-get install make gcc build-essential git python linux-headers-legacy-rockchip-rk3588#linux-headers-$(uname -r)
    whereis python3
    sudo ln -s /usr/bin/python3 /usr/bin/python
    cd /usr/src/linux-headers-5.10.110-rockchip-rk3588
    sudo make scripts
    cd ~
    git clone https://github.com/lwfinger/rtw89.git
    cd rtw89
    make
    sudo make install
  2. 显卡GPU

    • Fun with CSF firmware

    • mesa

      1
      2
      3
      4
      5
      sudo add-apt-repository ppa:liujianfeng1994/panfork-mesa
      sudo apt update
      sudo apt install libgl1-mesa-dri
      sudo apt-cache policy libgl1-mesa-dri
      sudo apt install mesa*
    • panfwost

问题列表 v1.42

  1. 供电不稳定(部分pd电源),无限重启(部分pd电源),GPU驱动残废(Linux),sd卡速度慢(armbian),某些sd卡启动失败(spi uboot),缺少驱动(目前所有镜像),分辨率错误(HDMI, dp问题较小),Soc体质抽奖(全部,可以绕过)(HDMI In报错,编码器掉帧,解码器掉帧)(firefly镜像,其它镜像没测试),待机睡死(Linux),ui卡顿(Linux),网卡丢包(官方debian),网卡干扰pd协商(intel 8265)
  2. 总结一下5B的桌面环境
    1. debian+xfce4+x:没有GPU加速,比较卡,没有任何动画,画面撕裂很严重,反应速度很快
    2. debian+kde+x:正确配置后可以GPU加速,和xfce4差不多卡,很多动画效果,没有画面撕裂,反应速度稍慢,推荐
    3. ubuntu+gnome+wayland:没有GPU加速,相当卡,很多动画效果,没有画面撕裂,反应速度非常慢,不推荐
    4. debian+kde+wayland:进入桌面黑屏只有鼠标,需要适配
    5. 安卓:极其流畅,完美,强烈推荐

其他

  1. 风扇引脚

  2. miniconda

RKNN

  1. rknn-toolkit2调用python接口将rknn模型放到npu设备上去执行,并获取执行结果在pc上显示。
    rknpu2通过c接口将程序部署到npu设备,直接在npu设备上执行得到结果。

其他

  1. https://www.7-cpu.com/
    • Dict:字典大小,22表示2^21=4MB
    • Usage:cpu总利用率。7z似乎只能使用2N个核(来源“When you specify (N*2) threads for test, the program creates N copies of LZMA encoder, and each LZMA encoder instance compresses separated block of test data.”——7-Zip LZMA Benchmark (7-cpu.com)
    • **MIPS:**million instructions per second
    • R/U MIPS:单核性能。
    • Rating MIPS:约等于Usage * (R/U MIPS)
作者

GWJ

发布于

2022-10-19

更新于

2023-01-09

许可协议