Skip to main content

1.png

账号和密码

  • 账号:youyeetoo
  • 密码:123456

youyeetoo_utils 命令

恢复出厂设置

sudo youyeetoo_utils --reset_rootfs=1

导出差分根文件系统

  1. 使用以下命令将系统中修改、删除和新增的文件导出到一个目录中,执行以下命令后会在当前目录下生成一个rootfs目录。如果要保存到其他地方,将参数./换成其他路径。
sudo youyeetoo_utils --export_rootfs=./
  1. 将rootfs目录复制到源码目录下,使用以下命令拷贝到对应目录。

导出来的rootfs里面的内容,除了自己修改、新增和删除的文件以外,还包含了当时系统产生的文件。建议只拷贝自己部分的文件到源码目录里面。

cp -frp rootfs/* device/rockchip/common/extra-parts/userdata/normal/
  1. 以下命令是在源码sdk操作
rm -fr output
# 先编译一遍oem和userdata分区确保这两个分区没问题,再全编译
./build.sh extra-parts
# 全编译
./yy3588_build.sh
  1. 编译出来的镜像再烧回开发板。

命令行模式与图形化模式切换

切换成命令行模式即无图形化界面

youyeetoo_utils --display=0
sudo reboot

输入账号密码即可登录
7.jpg

切换图形化模式

youyeetoo_utils --display=1
sudo reboot

ADB连接

瑞芯微usb驱动

  1. 去资料下载里面下载任一一个版本的瑞芯微的USB驱动压缩包

驱动.png

  1. 点击驱动安装

安装RK USB驱动,下载adb软件。

硬件连接

使用type-c线连接开发板背面的otg口和电脑,如图所示:

6.png

windows下使用

  1. 在windows下使用需要先安装RK USB驱动,下载adb软件,进入adb目录,将adb目录栏改为cmd,如下图,启动终端

1672798375141.gif

  1. adb 登陆系统
adb shell

ubuntu虚拟机下使用

  1. 输入如下命令安装 ADB 工具:
sudo apt-get install android-tools-adb
  1. 加入设备标识:
mkdir -p ~/.android
vi ~/.android/adb_usb.ini
# 添加以下一行
0x2207
  1. 加入 udev 规则:
sudo vi /etc/udev/rules.d/51-android.rules
# 添加以下一行:
SUBSYSTEM=="usb", ATTR{idVendor}=="2207", MODE="0666"
  1. 重新插拔 USB 线,或运行以下命令,让 udev 规则生效:
sudo udevadm control --reload-rules
sudo udevadm trigger
  1. 重新启动 ADB 服务器:
sudo adb kill-server
adb start-server
  1. adb 登陆系统
adb shell

串口调试

YY3588 DEBUG串口的波特率为1500000

  1. 使用串口模块的 tx 管脚连接 开发板的 rx 管脚,串口模块的 rx 管脚连接开发板的 tx 管脚。再将串口模块的GND接到板子GND上(GND一定要接上)。

6-1.jpg

  1. 这里作者使用的是 MobaXterm_Personal_22.0 软件,没有该软件通过下面的链接到官网下载。
  1. 打开 MobaXterm 软件,点击左上角 Session 图标,再点击Serial图标,然后选择 Serial port*,并且填入波特率 1500000。最后点击ok。

  1. 开发板上电, 在电脑端的 MobaXterm 软件上打印出来开发板启动 log 信息。打印结束。就进入到板子系统内,可以输入shell命令。

6-2.png

设置RTC时间

硬件连接如下:
8.png

  1. 查看系统时间,输入如下的命令
sudo date
  1. 设置系统时间
sudo date --set='2025-12-30 15:17:42'
  1. 将系统时间同步到 RTC:并重启
sudo hwclock --systohc
  1. 查看硬件时间。
sudo hwclock --show
  1. 硬件时间同步显示系统时间
hwclock ----hctosys

固态硬盘 SSD 使用

  1. 将SSD安装到开发板上,如图所示:

9.png

  1. 挂载SSD

GPU测试

Ubuntu桌面系统有很多种,其中Gnome桌面系统作为Ubuntu默认的桌面系统,但由于运行Gnome桌面系统需要消耗的资源很多,如果没有GPU加持,RK芯片很难运行,很容易造成运行过程中卡死。而本Ubuntu是拥有GPU加持的Gnome桌面系统。能够在RK3588芯片上流畅运行。

RK3588 集成 MALI G610 GPU。可以使用glmark2图形性能测试工具测试RK3588的GPU性能。
在shell终端执行下面命令,测试图形引擎、着色器、光照和纹理等方面的性能。

glmark2

在运行glmark2过程中可以另外开一个终端,执行下面命令查看GPU使用率

cat /sys/devices/platform/fb000000.gpu/devfreq/fb000000.gpu/load

2.gif

实测glmark跑分1059左右。

2.png

摄像头使用

linux 摄像头驱动采用 v4l2框架。摄像头在用户空间对应两个设备,一个是图像或者视频采集,另一个是metadata采集。
在使用摄像头之前需要知道摄像头对应的节点和支持的摄像头参数。以下介绍摄像头使用流程。

1、第一步,找出设备节点。

v4l2-ctl --list-devices

在打印出的所有设备中,找到rkisp0-vir0 (对应板子上的csi1接口)和rkisp1-vir0(对应板子上的csi2接口)关键字。它们下面就是对应的摄像头节点。

3_2.png

而显示usb-xhci-hcd.3.auto-1.4下面表示usb摄像头节点。

3_1.png

2、 第二步,列出指定设备的预览支持格式

# 查看 csi1 摄像头支持格式
v4l2-ctl --list-formats-ext --device /dev/video22

4_1.png

# 查看 usb 摄像头支持格式
v4l2-ctl --list-formats-ext --device /dev/video41

4_2.png

3、第三步,抓帧,这里以USb摄像头为例,看一下效果

# 抓帧
v4l2-ctl -d /dev/video41 --set-fmt-video=width=1280,height=720,pixelformat=MJPG --stream-mmap --stream-to=/sdcard/out.jpg --stream-count=1

4、第四步,使用gstreamer播放摄像头图像,这里以USB摄像头为例。

# 显示MJPG格式,1280*720@30fps视频
gst-launch-1.0 v4l2src device=/dev/video41 ! image/jpeg,width=1280,height=720,framerate=30/1 ! jpegdec ! videoconvert ! xvimagesink

5_1.gif

# 显示YUV格式
gst-launch-1.0 v4l2src device=/dev/video41 ! video/x-raw,format=YUY2,width=1280,height=720,framerate=10/1 ! videorate ! videoscale ! videoconvert ! xvimagesink

5_2.gif

ffmpeg使用

ffmpeg是一款非常好用处理音视频的工具包。它如同一个万能工具箱,涵盖了录制、转换、流化等一系列音视频处理功能,支持诸如 AVI、MP4、MOV、FLV、WMV、MPEG、MKV 等海量音视频格式。下面简单介绍一下ffmpeg播放和转换视频格式用法

  • 用ffplay播放h264裸数据。瑞芯微在oem分区和userdata分区存放了一些测试视频文件。
ffplay /media/youyeetoo/userdata/200frames_count.h264

6.gif

  • 使用ffmpeg转换视频格式
ffmpeg -f h264 -i /media/youyeetoo/userdata/200frames_count.h264 -vcodec copy output.mp4
ffplay output.mp4

6-1.gif

Docker 使用教程

  1. 下载系统镜像,由于网络问题,下载镜像可能会失败。建议读者多下载几次,或者添加加速镜像源。
sudo docker pull ubuntu
  1. 基于下载的镜像,创建容器。注意在创建容器时需要使用--net参数指定网络,否则无法创建容器。
sudo docker run -ti --net=host e149199029d1 /bin/bash
  1. 修改容器后,导出容器保存镜像
exit
docker export <容器ID> -o ubuntu.tar
  1. 从保存的tar文件创建容器
docker import ubuntu.tar ubuntu:laster