Canify 是一款运行在桌面端的 CAN 总线分析仪:连接一块十几块钱的 SLCAN 适配器,即可完成总线监控、DBC 信号解码、实时绘图、报文发送与 CANopen 节点调试。安装即用,无需运行环境,所有数据只留在本机。
- SLCAN 串口驱动:支持 CANable(SLCAN 固件)、MKS CANable、cantact、Arduino CAN 扩展板等常见廉价适配器,码率 10 kbps – 1 Mbps;内置虚拟总线(回环),没有硬件也能完整体验
- 聚合 / 逐帧双模式帧表:按 ID 聚合(计数、帧率、最近时间、新帧闪烁)或逐帧滚动追踪,虚拟滚动应对高负载总线不卡顿
- 实时过滤器:ID 列表 / 区间(十六进制)、数据字节条件,多条件 AND / OR 组合
- 一键导出 CSV,帧表可随时暂停 / 继续,缓冲上限可配置
- 多帧发送列表:ID / 扩展帧 / DLC / 数据 / 周期逐行配置,单发或周期发送,断连自动全停
- 序列录制与回放:录制应用内发出的所有帧(含 CANopen 面板的 SDO / NMT 操作),按帧间隔原样回放;支持拖动发送指针、批量编辑间隔与 ID、保存 / 加载序列文件
- DBC 信号解码:导入
.dbc后帧表内直接展开物理值信号(含单位、值表),原始值 / 物理值对照 - 信号绘图:勾选 DBC 信号即加入绘图,每个绘图最多 8 条曲线、可开多个绘图面板;LTTB 降采样 + 限频渲染,高负载下依旧流畅
- 十字测量:框选缩放、双击恢复滚动,测量模式下双十字线读数并显示 Δt / Δv,可吸附到曲线样本
- 被动解码:节点表(NMT 状态、心跳间隔)、SDO 事务日志(请求 / 响应自动配对,ABORT 原因解析)、EMCY 急停解码
- 主动操作:SDO 读写(含分段传输)、NMT 主站控制(Start / Stop / PreOp / Reset)
- EDS 对象字典:导入
.eds后浏览对象字典、单点读写、一键读取全部标准对象 - PDO 配置编辑器:可视化编辑 RPDO / TPDO 映射与通信参数,按规范流程(禁用 → 写映射 → 写通信参数 → 重新启用)一键下发,支持读回
- CiA 402 伺服控制:状态机可视化(状态字 / 控制字逐位解读)、Shutdown / Switch On / Enable Operation 等快捷指令、PP / PV 等运行模式与运动参数下发,首次使能带安全确认
- 可停靠布局:显示区与控制区均可自由分屏、重组,布局自动记忆
- 深色 / 浅色主题,中文 / English 界面一键切换
- 轻量原生:Tauri 2 + Rust 构建,安装包小、启动快,无运行时依赖
前往 Releases 下载对应平台的安装包:
| 平台 | 文件 | 说明 |
|---|---|---|
| Windows 10/11 x64 | canify_<版本>_x64-setup.exe |
安装版 |
| Windows 10/11 x64 | canify_<版本>_windows-x64-portable.zip |
免安装绿色版 |
| Debian / Ubuntu | canify_<版本>_amd64.deb |
sudo dpkg -i canify_*.deb |
| Fedora / RHEL | canify-<版本>-1.x86_64.rpm |
sudo rpm -i canify-*.rpm |
| 通用 Linux | canify_<版本>_amd64.AppImage |
直接运行,无需 FUSE2 |
| 通用 Linux | canify_<版本>_linux-x64-portable.zip |
解压即用(需系统已安装 WebKitGTK 运行时) |
Windows 版依赖 WebView2 运行时(Win10/11 一般自带);缺失时安装器会引导联网安装。
版本号由源码仓库的 git tag 自动生成(如
0.2.0),「设置 → 关于」页可查看当前版本。
- 连接设备:在「连接」面板选择
SLCAN (serial),选中串口与码率(如 500 kbps),点击「连接」。没有硬件?选择Virtual Bus虚拟总线即可体验全部界面功能。 - 导入 DBC:在「DBC」面板导入
.dbc文件,帧表中即可展开解码信号,勾选信号并点击「添加到绘图」开始实时绘图。 - 调试 CANopen:在「CANopen」面板观察节点与 SDO 日志;导入
.eds后可浏览对象字典、配置 PDO、控制 CiA 402 伺服。
Linux 串口权限:将用户加入
dialout组(Debian/Ubuntu)或uucp组(Arch)后重新登录:sudo usermod -aG dialout $USER # Debian / Ubuntu sudo usermod -aG uucp $USER # Arch
| 适配器 | 接口 | 备注 |
|---|---|---|
| CANable / MKS CANable / cantact(SLCAN 固件) | 串口 | 推荐,十余元即可入手 |
| Arduino + CAN 扩展板(SLCAN 固件) | 串口 | MCP2515 / MCP2518 方案 |
| 任何实现 slcan 协议的串口设备 | 串口 | Linux /dev/ttyUSB*、Windows COM 口 |
| 虚拟总线 | 内置 | 回环模式,开发与演示用 |
SocketCAN(Linux
can0)已在规划中,详见路线图。
- SocketCAN 驱动(Linux 原生
can0接口) - CAN FD(帧模型已预留)
- 更多日志格式(Vector .asc、PCAP、candump)
- 多通道同时连接
- macOS 版本
Canify 收费吗? 免费使用,无需注册、无功能限制。
支持 CAN FD 吗? 暂不支持经典 CAN FD 帧的收发,已在路线图中。当前帧数据模型为 CAN FD 预留了载荷长度。
支持 macOS 吗? 暂未提供 macOS 安装包,已在路线图中。
我的数据会上传吗? 不会。Canify 完全本地运行,无云端、无遥测、无任何外联请求。
Linux 下打开串口提示权限不足? 参见快速上手中的串口权限说明。
开放源代码吗? Canify 是免费但闭源的软件,以二进制安装包形式发布。欢迎通过 Issues 反馈问题与功能建议。
Canify 不包含任何数据收集、崩溃上报或统计组件;除用户主动保存 / 导出文件外,不产生任何网络或外部连接。所有总线数据仅存在于本机内存中。
Canify 为专有免费软件(Freeware),使用与再分发条款见 LICENSE。
Canify 构建于众多优秀的开源项目之上,感谢:
Tauri · Vue 3 · Pinia · uPlot · dockview · can-dbc · serialport-rs








