犀牛派 X1 从刷机到上手:AidLux 3.0.0.124、USB 摄像头和 QNN236 体检

foo_00 2026-09-28 15:35:24

设备:犀牛派 X1(高通 QCS8550,kalama)|系统:Android 13 + AidLux 3.0.0.124,Ubuntu 22.04,内核 5.15.178-android13|日期:2026-09-15 实刷,2026-09-28 复查登录和 NPU

这篇写到板上能登录、USB 摄像头能以 MJPG 出图、自带的 YOLOv5s W8A8 能在 Hexagon DSP 上跑出毫秒数。工位久坐检测在下一篇。

代码:https://github.com/peterpanstechland/rhinopi-x1-aidlux

1. 先上电,再接线

 供电只走 DC_IN。插头是 DC 5.5×2.5 mm,适配器 12V 5A。不要用手机充电器,也不要指望 Type-C 线给板子供电。刷机和 AidLux 初始化时不要拔电源。

接口以官方硬件说明和电源接口为准。

线

插哪里

做什么

12V 5A 电源

板子 DC_IN

唯一供电。插上后板子会自己启动

USB-A 转 USB-C

电脑 USB-A,板子 TYPE-C

ADB 和刷机。不要拿这根口插摄像头

网线

板子 WAN

上行口,系统里是 eth0。电脑和板子要在同一局域网

HDMI

板子 HDMI_OUT

可选。接显示器。HDMI_IN 是采集口,不是显示器

键鼠、以后的 C920

板子 USB-A(一共 4 个)

不要插 TYPE-C

旁边还有 3 个 LAN。那是板载局域网,地址 192.168.1.1/24(br-lan)。电脑 SSH、网页登录都不要找这个网段。

 顺序:先插 DC_IN。开机过程电源灯红灯常亮;绿灯常亮并且风扇转,才算起来了。一直红灯、风扇不转,按一下 POWER。再插 TYPE-C。要远程登录,网线插 WAN。

然后:

adb devices -l

看到 product:kalama model:RhinoPi_X1 再刷机。如果同时连着网络 ADB,刷机只用 USB 那条。

2. 选包、刷机、初始化

公开的融合整包当天是 RhinoPi-X1.T04_LA.user.2025121609.aidlux.zip(2025-12-16)。板上构建号已经是 RhinoPi-X1.1.user.2026070119(2026-07-01)。整包直接刷会降级。这次走拆分:先刷同日期的 Android,再装 AidLux 3.0.0.124。

站点首页打不开,用下面带目录编号的地址。网页可能要登录才能下。2026-09-14 打开时看到的是:

用途

文件

大小

Windows 刷机工具

QPST_2.7.496.zip、USB_Driver_qud.win.1.1_installer_10061.1.zip

60 MB / 18 MB

融合整包

RhinoPi-X1.T04_LA.user.2025121609.aidlux.zip

4.74 GB

仅 Android

RhinoPi-X1.T04_LA.user.2026070119.zip

1.85 GB

仅 AidLux

aidlux_3.0.0.124_enterprise_qc8550_lu2204_signed.zip

3.05 GB

步骤对照:融合整包安装、拆分安装。

新板、只想少一步,用融合整包,刷完在 Android 里把 AidLux 初始化到 100%。板上版本已经比整包新,就拆开刷。OTA 只给已经是融合系统、只想升级的人。刷机会清空用户数据。

Windows 上先装驱动和 QFIL:setup.exe,然后 QPST.2.7.496.1.exe。QFIL 在 C:\Program Files (x86)\Qualcomm\QPST\bin\QFIL.exe。

对 USB 那条设备进下载模式,不要对 ip:5555 下这个命令:

adb -s <USB序列号> reboot edl

设备会变成 Qualcomm 9008,普通 adb devices 变空,这是预期。QFIL:

  1. Configuration → FireHose:Download Protocol 选 0-Sahara,Device Type 选 ufs,勾选 Reset After Download

  2. Select Port 选 9008,Build Type 选 Flat Build

  3. Programmer 选解压包里的 xbl_s_devprg_ns.melf(文件类型改成所有文件)

  4. Load XML:弹出来的 XML 都选上,会弹两次

  5. Download。这次大约 5 分钟,看到 successful 后板子自己重启

QFIL 的成功窗口是 9 月 15 日刷机当时的,没有为了补图再刷一次。刷完 ro.build.version.incremental 仍是 RhinoPi-X1.1.user.2026070119。

adb devices 再次看到设备后,解压 AidLux zip,在 Windows 上跑 install.bat。这次推进去约 2.59 GB 的 deb,并装了 3 个 APK。然后在 Android 桌面打开 AidLux,等到 100%。整包路线没有 install.bat,刷完直接在桌面里初始化。

2026-09-15 10:38 验收:SSH、Web :8000、ADB 都通;上行仍是原来的 eth0;userdata 占用约 12G、剩余约 66G;AidLite 2.3.2.251、OpenCV 4.13.0 仍在;MediaPipe 没有。内核 5.15.178-android13,用户态 Ubuntu 22.04。这是 Android 内核加 Ubuntu rootfs。

3. 登录,以及不要跑 apt upgrade

出厂用户名和密码都是 aidlux。第一次登录后改掉。

http://<板子IP>:8000/login
ssh aidlux@<板子IP>

HDMI 本机桌面这块板还没拍过。Web 桌面和 SSH 都用过。官方入口:浏览器登录。

 

刷完自带:6 核,三丛集最高约 3187 / 2803 / 2016 MHz;内存 14 GiB;Python 3.10.12;numpy 1.26.4;OpenCV 4.13.0;AidLite 2.3.2.251;NPU 插件 aidlite-qnn236。还有 aidcv-sdk、aidstream-gst、aid-mms。MediaPipe 未安装。9 月 14 日空闲温度 cpuss-0 约 39.4°C,nspss-0 约 34.1°C。9 月 28 日复查,AidLite 版本没变,温度差零点几度。

NPU 后端是 aidlite-qnn236,不要按旧文档去装 qnn216。缺组件时点装:

sudo aid-pkg update
sudo aid-pkg install aidlite-sdk
sudo aid-pkg install aidlite-qnn236
cd ~/rhinopi-lab/examples/01_env_check
python3 check_env.py

不要跑 apt upgrade。2026-09-15 在这块板上跑过一次,libkmod2 升到 29-1ubuntu1.1,kmod 停在 29-1ubuntu1。厂商包 mod-blacklist 占着 /etc/modprobe.d/blacklist.conf,新的 kmod 覆盖不了。systemd、udev 等大约 31 个包停在已解包未配置。这个状态下先不要重启。只把这一对对齐,不要再全量升级:

sudo cp -a /etc/modprobe.d/blacklist.conf /etc/modprobe.d/blacklist.conf.bak
cd /tmp
apt-get download kmod=29-1ubuntu1.1
sudo dpkg -i --force-overwrite /tmp/kmod_29-1ubuntu1.1_arm64.deb
sudo DEBIAN_FRONTEND=noninteractive apt-get --fix-broken install -y \
  -o Dpkg::Options::="--force-confold"
sudo dpkg --audit

修完后两个包都是 29-1ubuntu1.1,AidLite 和 OpenCV 都还在。源里当时仍有大约 265 个可升级包,没有继续升。同款记录:apt upgrade 修复。缺某个命令用 sudo apt install <包名>,或走 aid-pkg。

4. USB 摄像头

相机插板子的 USB-A,不要插 TYPE-C。未插摄像头时,板上已经有 video0(cam-req-mgr)和 video1(cam_sync)。cv2.VideoCapture(0) 打开的是高通相机框架,不是 UVC。

 

 

2026-09-15 插上 Logitech C920(046d:082d,USB 2.0,uvcvideo)之后:

节点

名字

能不能采集

/dev/video0

cam-req-mgr

不能

/dev/video1

cam_sync

不能

/dev/video2

HD Pro Webcam C920

能

/dev/video3

同一只 C920

不能。UVC metadata

/dev/video32 /dev/video33

msm_vidc_decoder

不能。硬解节点

换摄像头不要写死 2。官方示例相机 05a3:9230 同样落在 video2 / video3。说明:USB 摄像头。

1280×720 的 YUYV 在 USB 2.0 上只有 10 fps。先设 MJPG:

cap.set(cv2.CAP_PROP_FOURCC, cv2.VideoWriter_fourcc(*"MJPG"))
cap.set(cv2.CAP_PROP_FRAME_WIDTH, 1280)
cap.set(cv2.CAP_PROP_FRAME_HEIGHT, 720)
cd ~/rhinopi-lab/examples/usb_camera
python3 probe.py

当天 CAP_V4L2 + MJPG + 1280×720,循环 30.46 fps,平均 32.82 ms。C920 的预览静图还没补拍,数字是 9 月 15 日的。下一篇的工位检测吃的就是这一路。

5. 上手收口:同一块板上的三份毫秒数

模型是镜像自带的 YOLOv5s W8A8,不是从模型广场另下的:

/usr/local/share/aidlite/examples/aidlite_qnn236/data/qnn_yolov5_multi/cutoff_yolov5s_640_sigmoid_w8a8.qnn236.ctx.bin

TYPE_QNN236 + TYPE_DSP。计时只包住 set_input + invoke + get_output。letterbox 和 YOLO 后处理不在里面。

cd ~/rhinopi-lab/examples/02_compute_bench
python3 bench.py

2026-09-14,640 输入,warmup 5 次、循环 20 次:

后端

平均

最小

最大

numpy

15.841 ms

11.556

23.960

OpenCV 预处理

3.446 ms

0.760

18.291

QNN236 DSP

4.772 ms

4.634

4.967

NPU 标准差 0.107 ms,大约 210 次/秒。这是纯推理节拍,不是带画框的端到端帧率。

 

9 月 28 日同一命令:numpy 15.935 ms,OpenCV 预处理 2.229 ms,NPU 平均 4.734 ms(最小 4.620,最大 4.979,约 211 次/秒)。OpenCV 这项两次差了约 1 ms,以当场输出为准。NPU 仍在 4.7 ms 附近。

和模型广场卡片比之前,先确认对方是不是也不含前后处理。下一篇底栏里的 NPU 脉冲大约 9–20 ms,那一段把 letterbox 算进去了,不能拿来替换这 4.7 ms。

6. 卡住时先看哪里

现象

先查

只有红灯,风扇不转

DC 是不是 12V 5A、是不是插在 DC_IN;按一下 POWER

adb devices 空

TYPE-C 是否插紧、线是不是只能充电、高通驱动是否装上

没有 9008

再对 USB 设备执行一次 adb reboot edl;还没有就断电重来

QFIL 失败

Programmer 和 XML 是不是这一包里的;Device Type 是不是 ufs

初始化停住

先等几分钟;供电是不是 12V 5A

ping 不通

网线是否在 WAN。插在 LAN 上会进 192.168.1.1/24

kmod / libkmod2 对不上

刚跑过 apt upgrade;只修这一对,不要再全量升级

VideoCapture(0) 黑屏

0 是 cam-req-mgr;UVC 采集一般是 video2

720p 只有十几帧

FourCC 还是 YUYV,先设 MJPG

刷机失败走阿加犀售后。这里没有写强刷。

下一篇用这只摄像头和板上的上半身 TFLite 做工位久坐检测。量化 YOLO 只留在底栏里看 DSP 还通不通。

系列

仓库 rhinopi-x1-aidlux。

  1. 刷机到上手(本篇)

  2. 工位检测

...全文
15 回复 打赏 收藏 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

7,720

社区成员

发帖
与我相关
我的任务
社区描述
本论坛以AI、IoT、PC 、XR、Auto等核心板块组成,为开发者提供便捷及高效的学习和交流平台。 高通开发者专区主页:https://qualcomm.csdn.net/
物联网人工智能开源 企业社区 北京·东城区
社区管理员
  • csdnsqst0050
  • chipseeker
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧