ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

sunnypilot 新手安装实战:从 Ubuntu 24.04 到首次点亮

sunnypilot 新手安装实战:从 Ubuntu 24.04 到首次点亮

sunnypilot 新手安装实战:从 Ubuntu 24.04 到首次点亮

【免费下载链接】sunnypilotsunnypilot is an open source driver assistance system. sunnypilot offers the user a unique driving experience for over 350 supported car makes and models with modified behaviors of driving assist engagements. sunnypilot complies with the safety policy from comma.ai's openpilot as accurately as possible.项目地址: https://gitcode.com/GitHub_Trending/su/sunnypilot

sunnypilot 是 openpilot 的开源分支,为 300 多款车提供自适应巡航与车道保持功能。这篇文章按操作顺序带你走完全流程:确认系统版本、一条命令装完依赖和子模块、接上 comma 3X 设备、首次启动并验证。所有命令都来自仓库内的真实脚本,如果某一步卡住,直接跳到对应章节看输出说明。

先确认这台机器能不能装

在动手之前先做三件事,后面大部分"装不上"的问题都能在这一步提前排除。

  • 系统版本:打开终端跑一下系统版本。tools/op.sh 启动时会检查操作系统,Linux(Ubuntu 24.04 LTS 为主)和 macOS 都能识别;其他发行版会在Checking for compatible os version...这行输出里看到 ✗,说明不兼容。
  • git 和子模块工具:op setup会先拉取 panda、opendbc、msgq 等 7 个 git 子模块,git 没装好后面所有依赖都会失败。
  • 磁盘空间:编译产物加模型文件,建议预留 10 GB 以上。

如果你在 WSL2 上跑,UI 和模拟器可能会卡。在~/.bashrc里加一行export GALLIUM_DRIVER=d3d12,重启终端后再跑。

克隆仓库,一条命令装完依赖

确认系统没问题后,整个安装只需要两步。先克隆代码并进入目录:

git clone https://gitcode.com/GitHub_Trending/su/sunnypilot.git cd sunnypilot

然后在仓库根目录跑 setup。这一步会依次做四件事:拉子模块 → 装系统依赖和 Python 包 → 写 udev 规则(含 panda 设备0483:df11的权限)→ 拉 git-lfs 模型文件。如果中间某一步失败,脚本会打印具体是哪一步挂了,按提示重试即可:

tools/op.sh setup

setup 成功后,激活 Python 环境并编译。编译时间取决于 CPU 核心数,几分钟到十几分钟不等:

source .venv/bin/activate scons -u

如果 scons 输出里看到error或fatal,在仓库根目录跑op check,它会逐项打印 git、子模块、OS、venv 的状态,哪一项显示 ✗ 就按提示修。

接上 comma 3X 设备

装好软件后,把设备接上。comma 3X 本身是一台 Linux 小主机,提供了三种接入方式,选一个顺手的就行。

串口控制台(最通用):用数据线把 comma 3X 的 OBD-C 主口连到电脑,panda 会把串口转接出来。在仓库根目录跑:

panda/scripts/som_debug.sh

连上后用默认账号登录,用户名comma,密码comma。

SSH:在设备设置里打开 SSH 并填入 GitHub 用户名,之后从设备热点网络(192.168.43.1,端口 22)或 ssh.comma.ai 代理连入。

ADB:设备接 2 号口常供电,电脑用 1 号口连接,adb shell直接进系统。

三种方式的详细步骤可参考 docs/how-to/connect-to-comma.md。

启动后看这几样东西

设备侧启动入口是 launch_openpilot.sh,它会先检查 AGNOS 版本是否匹配(默认 19.9,写在 launch_env.sh 里),不匹配时自动触发系统升级并重启,无需手动操作。

启动成功后,看仪表盘:指示灯从绿色变成蓝色,说明系统已激活。如果启动后立刻回到等待界面,大概率是 panda 没识别到车辆。先确认 panda 是否被系统枚举:

lsusb | grep 0483

如果输出里能看到0483:df11,说明 panda 已连接且 udev 规则生效(tools/setup_dependencies.sh 在 setup 阶段已自动写入/etc/udev/rules.d/11-openpilot.rules);如果完全找不到,检查是否走了数据线而非纯充电线,重新插拔 OBD-C 口再试。

常见卡点速查:

现象可能原因处理办法
op check显示 git lfs files not found网络中断导致 LFS 文件没拉完跑git lfs pull补拉
串口登录后直接掉线用了充电线而非数据线换线,确认 OBD-C 口同时供数据
scons 编译报no such header子模块没拉全跑git submodule update --init --recursive
AGNOS 升级后反复重启本地分支与 release 的 AGNOS 版本不一致按提示选择升级,或op switch切到匹配分支

sunnypilot 是 L2 级辅助驾驶,驾驶员监控(dmonitoringd)不能关。修改任何安全相关参数之前,先读一遍 docs/SAFETY.md——"不得禁用驾驶员监控"这条不是建议,是所有 fork 的硬性要求。

【免费下载链接】sunnypilotsunnypilot is an open source driver assistance system. sunnypilot offers the user a unique driving experience for over 350 supported car makes and models with modified behaviors of driving assist engagements. sunnypilot complies with the safety policy from comma.ai's openpilot as accurately as possible.项目地址: https://gitcode.com/GitHub_Trending/su/sunnypilot

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进