结论:S100 系统升级不能直接用 apt upgrade 
根据社区案例,RDK S100 的系统升级需要通过「刷写官方镜像」完成,而不是简单的 apt 命令。
一、正确升级步骤
步骤 1:获取最新系统镜像
方式 A:官方文档下载
- 访问 RDK S 工具链开发文档
- 查找「系统镜像下载」章节
- 下载 S100 最新系统镜像(如 4.0.5-Beta)
方式 B:社区资源帖
- 参考社区帖子:OE 工具链下载汇总
- 或联系技术支持:
support@d-robotics.cc
步骤 2:准备烧录工具
在宿主机(PC)上操作:
# 安装烧录工具
sudo apt install u-boot-tools
# 准备 SD 卡(至少 16GB)
# 插入 SD 卡后查看设备名(如 /dev/sdb)
lsblk
步骤 3:烧录系统镜像
# 解压下载的镜像(如果是压缩包)
tar -xvf s100_v4.0.5-beta.tar.gz
# 烧录到 SD 卡(⚠️ 确认 /dev/sdX 是你的 SD 卡设备名)
sudo dd if=s100_v4.0.5-beta.img of=/dev/sdX bs=4M conv=fsync status=progress
# 同步数据
sync
步骤 4:启动并升级
- 将 SD 卡插入 S100
- 从 SD 卡启动(可能需要设置启动跳线或按键)
- 按照屏幕提示完成刷写
- 重启后验证版本:
cat /etc/version # 应显示新版本号
二、重要注意事项
| 事项 | 说明 |
|---|---|
| 升级会清空系统盘,提前备份模型和代码 | |
| 烧录过程中断电会导致变砖 | |
| 确认下载的是 S100/S100P 专用镜像 | |
| 建议用新版 OE 重新编译模型获取最佳性能 |
三、你的情况特殊建议
根据你的 model_info 输出:
- 模型编译版本:HBDK 4.9.7
- 板端 Runtime:HBRT 4.7.5
建议优先级:
方案 A:重新用 4.7.5 版本编译模型(最快)
如果无法立即升级系统,可以:
- 在编译环境安装 OE 4.7.5 版本
- 重新编译模型:
hb_compile --input-model xxx.onnx \ --output-model model_fixed.hbm \ --bpu-type nash-m \ --optimization-level O2 - 部署到板端测试
方案 B:升级板端系统(彻底解决)
按上述步骤升级到 4.9.x 版本系统,匹配你的编译版本。
四、快速验证命令
升级前后都可以用这些命令检查:
# 查看系统版本
cat /etc/version
# 查看 Runtime 版本
hrt_model_exec --version
# 查看 BPU 库版本
cat /proc/hb_bpu/version # 或类似路径
五、需要帮助?
如果遇到问题,请提供:
- 当前系统版本:
cat /etc/version - 目标升级版本(从官方文档确认)
- 是否有官方镜像文件
建议先在社区搜索「S100 系统升级」相关帖子,或联系地平线技术支持获取最新镜像和详细教程!