# Ubuntu下Piper机械臂CAN通信单向异常且UI连接失败

> 原文链接：https://robotics.hellobike.com/pitfalls/2026-07-07-piper-sdk-112
> 频道：pitfalls | 更新日期：2026-07-07 | 标签：auto, github-issue, piper_sdk
> 核心摘要：Ubuntu下Piper机械臂CAN仅发控制帧无反馈，因处于主臂静默模式或急停未复位，切换从臂模式并复位急停可恢复。

# Ubuntu下Piper机械臂CAN通信单向异常且UI连接失败

::: v-pre
> 本文由 AI 根据公开内容整理，可能有误，请以原文为准：[linux电脑通过can口线连接机械臂通信失败](https://github.com/agilexrobotics/piper_sdk/issues/112)（GitHub agilexrobotics/piper_sdk #112）

**状态**：有绕过办法

## 问题

Ubuntu 22.04下通过candleLight USB-CAN连接Piper机械臂，`candump can0`显示仅有TX控制帧无RX反馈帧。SDK Demo返回关节数据全为0，主从模式切换代码无报错但物理状态未变，电机无法使能；`piper_sdk_ui`提示“无法获得端口信息”。Windows同硬件正常，排除硬件故障。

## 环境

OS: Ubuntu 22.04; Python: 3.10 (Conda); Adapter: candleLight USB-CAN (gs_usb); Robot: agilex-piper; SDK: piper_sdk

## 解决办法

1. 查阅 `piper_sdk/demo/detect_arm.MD` 文档，确认能否读取固件信息及反馈帧频率，排查主臂模式下机械臂静默导致无反馈的问题。
2. 手动将机械臂切换至从臂模式，验证通信与示教功能是否恢复正常。
3. 检查代码中是否调用过 `piper.EmergencyStop(0x01)` 接口但未执行恢复操作，若存在则必须调用恢复接口解除急停状态，否则示教与程序控制均失效。
4. 若上述无效，尝试重新插拔USB-CAN适配器重置通信链路。

讨论原作者：@Tunana-X 等，版权归原作者所有。
:::

## 原始参考来源 (Sources)

- [GitHub agilexrobotics/piper_sdk #112：linux电脑通过can口线连接机械臂通信失败](https://github.com/agilexrobotics/piper_sdk/issues/112)