update_firmware 工具使用方法
1. 适用背景
本文用于指导通过 update_firmware 工具升级机械臂 Bootloader 版本,主要解决软件界面无法直接将 Bootloader 从 1.0 升级至 1.1 的场景。
Bootloader 升级完成后,固件 App 版本可通过上位机软件升级与当前 Bootloader 匹配的版本。
2. 版本要求
仅允许在以下软件版本范围内使用本方法:
| 组件 | 限制版本 |
|---|---|
| 软件版本 | 0.32.1-rc.35、0.32.2-rc.10、0.32.3-beta.1、0.32.4-alpha.10 |
| 固件版本 | 1.1.15-rc.9 |
请使用表中版本或更高版本。
3. 升级前准备
3.1 SSH 登录工控机
通过 SSH 登录机械臂工控机,确认具备执行 update_firmware、重启服务和查看日志的权限。
3.2 拷贝固件包
将 .firm 固件包拷贝到 update_firmware 工具所在目录,例如:
/opt/arcs/xxx/bin/
其中 xxx 以实际安装版本为准。

4. 版本查看操作
本节用于确认当前 Bootloader 版本。取机械臂上电松刹车后, aubo_control (文件路径:/root/arcs_ws/log/aubo_control.log)日志;搜索CANLITE_BOOT_VERSION关键字:

记录升级前各节点 Bootloader 版本,常见节点包括:
base
tool
joint1 ~ joint6
slave_joint1 ~ slave_joint6
实际节点以日志显示为准。
5. 操作说明
5.1 停止 aubo_control
工作目录移动至 update_firmware 工具所在目录:
cd /opt/arcs/xxx/bin/
停止 aubo_control,避免其运行时占用升级链路。
killall aubo_control
5.2 执行 Bootloader 升级命令
命令格式:
./update_firmware -f 固件包文件名#节点1_bootloader,节点2_bootloader,节点3_bootloader
示例,全节点配置:
./update_firmware -f firmware_update-1.1.15-rc.9.firm#base_bootloader,tool_bootloader,joint1_bootloader,joint2_bootloader,joint3_bootloader,joint4_bootloader,joint5_bootloader,joint6_bootloader,slave_joint1_bootloader,slave_joint2_bootloader,slave_joint3_bootloader,slave_joint4_bootloader,slave_joint5_bootloader,slave_joint6_bootloader

若臂型没有 tool 或部分 slave_joint,不要写入对应节点。
5.3 等待升级完成
执行命令后观察终端输出,等待所有指定节点升级完成。
升级流程结束的唯一标志:
Robot power off
对应机械臂断电,确认断电后,Ctrl + C退出 update_firmware升级。

5.4 恢复 aubo_control
恢复进程启动:
systemctl start aubo_control
5.5 升级 App 固件
通过上位机软件界面进入固件升级页面,为底座、工具端及各关节主/从板升级 App 版本。
固件升级建议选择与使用 update_firmware 工具升级 Bootloader 相同的固件包,不要选择不匹配版本。
update_firmware 也可升级固件 App 版本,选择对应节点名称即可,例如base、tool、joint等
5.6 重新上电并校验版本
控制柜重新上电,等待系统完全启动。
系统启动后必须再次查看日志,校验升级后的 Bootloader 版本是否已更新到目标版本:
6. 异常处理建议
6.1 升级后机械臂无法上电
可能现象:
关节电流零点偏置故障
处理建议:
手动烧录对应关节 App
6.2 BOOT_WAITING 无法切换到 BOOT
可能现象:
BOOT_WAITING 无法切换到 BOOT
收到 BOOT 命令后立即掉线回 NONE
机械臂无法上电或无法继续固件升级
处理建议:
手动烧录对应关节 App
6.3 节点升级失败
处理建议:
- 确认升级命令中的节点名称是否与日志中的实际节点一致
- 确认
.firm固件包版本是否满足要求 - 确认
aubo_control已按流程停止 - 保留终端输出和
/root/arcs_ws/log/aubo_control.log - 不要重复盲目升级,先确认失败节点和失败原因
附:常用命令汇总
# 查看 Bootloader 版本,机械臂上电,control日志搜索 CANLITE_BOOT_VERSION
# 查看异常日志,control日志搜索 "error|fail|timeout|exception|fault"
# 进入工具目录
cd /opt/arcs/xxx/bin/
# 停止 aubo_control
killall aubo_control
或systemctl stop aubo_control
# 执行 Bootloader 升级
./update_firmware -f firmware_update-1.1.15-rc.9.firm#joint1_bootloader,joint2_bootloader
# 恢复 aubo_control
systemctl start aubo_control
# 升级后校验 Bootloader 版本,机械臂上电,control日志搜索 CANLITE_BOOT_VERSION