工具

PiCCANTE 树莓派 Pico 车辆 CAN 总线工具

基于 Raspberry Pi Pico 的低成本 CAN 总线接口固件与硬件设计,用于探索和逆向分析车辆网络。它借助基于 PIO 的 can2040 库,在 RP2040 开发板上运行两路、在 RP2350 开发板上运行三路 CAN 2.0B 通道,并通过 USB 以 GVRET 设备的形式供 SavvyCAN 使用,同时为每个通道提供 SLCAN 设备,经 can-utils 接入 Linux SocketCAN。固件还包括配置命令行、可处理 OBD-II PID 请求(含 ISO-TP 多帧应答)的部分 ELM327 模拟器,以及 Pico W 开发板上的 Wi-Fi、蓝牙和网页界面;仓库另附 OBD-II 适配器的洞洞板与 KiCad PCB 设计及可 3D 打印的外壳。

目标
协议
类别
协议分析工具
关联
基础工具
来源复核于

使用条件与局限

  • 审阅时唯一的正式版本为 v0.0.1,于 2025-05-03 发布,提供适用于 Pico、Pico W、Pico 2 和 Pico 2 W 的 UF2 与 ELF 固件;dev-latest 预发布版本由 main 分支自动重建,当前即由所审阅的提交(2026-01-26)构建。README 将 ELM327 模拟器标为部分实现,缺少 CAN 设置、协议自动检测和过滤功能,并把 SD 卡数据记录和软件 CAN 过滤列为计划中的功能。不支持 CAN FD 和 CAN XL。
  • 硬件可使用任意 Raspberry Pi Pico 或 Pico 2 开发板,搭配一到三个 3.3 V CAN 收发器(如 SN65HVD);需要 Wi-Fi 和蓝牙时推荐 Pico 2 W。README 提醒,大多数收发器扩展板自带 120 欧终端电阻,接入已端接的现有总线前必须拆除,并提醒连接车辆系统时务必谨慎。OBD-II 适配器还可加装降压模块、SD 卡槽以及用于测量电瓶电压的分压电路。
  • 从源码构建需要 Raspberry Pi Pico SDK、CMake 3.13+ 和 GCC ARM 工具链,并以子模块形式引入 FreeRTOS-Kernel、can2040 分支、littlefs、TinyUSB、pico-extras 和 FreeRTOS-FAT-CLI;PICO_BOARD 默认为 pico2_w,网页界面是 Web/ 目录中独立的 Svelte 项目。CI 会在推送到 main 及提交拉取请求时为四种 Pico 开发板构建固件,未见测试套件说明。
  • 依据 LICENSE.txt 和 README 中的声明采用 GPL-3.0-or-later;README 将仅支持 CAN 2.0B 归因于 can2040 的许可限制,附带的 DHCP 服务器代码带有 MIT 声明。KiCad、STL 和 STEP 硬件文件未另行声明许可证。本次未构建、刷写固件,也未连接任何车辆,所审来源未确立与 REA 的关联。

关于此条目

说明已依据一手来源复核;这不代表已运行验证、经过安全审计或确认兼容。

报告条目过时 建议修正翻译

一手来源

  1. Readme.md GitHub · Alia5/PiCCANTE · 修订 62ede82
  2. .gitmodules GitHub · Alia5/PiCCANTE · 修订 62ede82
  3. CMakeLists.txt GitHub · Alia5/PiCCANTE · 修订 62ede82
  4. .github/workflows/build_base.yml GitHub · Alia5/PiCCANTE · 修订 62ede82
  5. .github/workflows/PR_check.yml GitHub · Alia5/PiCCANTE · 修订 62ede82
  6. hardware/PiCCANTE-OBD-Dongle GitHub · Alia5/PiCCANTE · 修订 62ede82
  7. src/ELM327 GitHub · Alia5/PiCCANTE · 修订 62ede82
  8. LICENSE.txt GitHub · Alia5/PiCCANTE · 修订 62ede82
  9. https://github.com/Alia5/PiCCANTE/releases/tag/v0.0.1
  10. https://github.com/Alia5/PiCCANTE/releases/tag/dev-latest

同分区更多条目:协议

协议分区全部 38 项资源