结论:这是一组面向赛道数据记录的 CAN 信号表,覆盖四类车:2013-2020 Subaru BRZ / Toyota 86 / Scion FR-S、2022 BRZ / GR86、Mazda MX-5 的 NC 与 ND 两代。它们的共同点是——老一代 FT86 与 NC/ND 的主 CAN 就在 OBD 口引脚 6/14 上,用一款 OBD 读取器即可直接抓广播帧;而 2022 BRZ/GR86(以及 2018+ WRX、许多 Porsche)把 CAN 与 OBD 口隔离了,只能拿慢速有限的 OBD 数据,或另找接入点。下表登记的是各平台可用的通道与公式,其中若干系数源文档自述为「经验值」或「可能有误」。下述条目只适用于各表所记录的车型与年款。
车辆与适用范围
源文档是一个 DIY BLE CAN 记录设备的说明,作者用它给一款商业赛道计时 App 供数。信号表按车型分组保留,ND 表明确说明是在一台 2019 MX-5 RF 上测试的。
| 项 | 内容 |
|---|---|
| 车型 | 2013-2020 Subaru BRZ / Toyota 86 / Scion FR-S;2022 Subaru BRZ / Toyota GR86;Mazda MX-5 NC(2005-2015)、ND(2019 RF 实测) |
| 年款 / 市场版本 | 各表相互独立;ND 表按 2019 MX-5 RF 测试,其他 ND 年款「应可适用」但未独立确认 |
| ECU / 改装状态 | 原厂状态;接入走 OBD 口或隐藏连接器,作者自制 nRF52840 + MCP2515 记录设备 |
| 采集跨度 | 源文档未给出统一日志数;MX-5 NC 表附有一份怠速时 10 秒内的 CAN ID 直方图 |
| 适用范围 | 各车型表只适用其列出的年款/代际;跨代不可套用(同一功能在不同代的 ID 完全不同) |
总线与寻址
源文档说明 FT86 与 Miata 的老一代主 CAN 在 OBD 引脚 6/14 上;较新的车把 CAN 与 OBD 口隔离。信号表以 11 位 ID 记录(如 0x140、0xD1、0x081、0x201),源文档未展开 29 位或 CAN FD 话题,按经典 CAN 处理。
| 项 | 内容 |
|---|---|
| 物理层 | 双绞线 CAN;FT86/Miata 老一代主 CAN 在 OBD 引脚 6/14 |
| 链路层 / 比特率 | 源文档未统一给出比特率,按经典 CAN 处理 |
| 寻址方式 | 11 位 ID |
| CAN FD | 源文档未涉及 |
| 接入差异 | 2022 BRZ/GR86、2018+ WRX 等把 CAN 与 OBD 口隔离,需另找接入点 |
已解码信号
下表从四张源表中抽取代表性信号,逐条标注车型与证据/置信度。源文档标注为经验值、可能错误或请求独立核对的系数,按原样保留。
| 信号 | 车型 / ID | 解码 | 证据 / 置信度 |
|---|---|---|---|
| 加速踏板位置 | FT86 gen1 / 0x140 | A / 2.55(%) | 源表「Recommended」 |
| 加速踏板位置 | FT86 gen2 / 64 | E / 2.55(%) | 源表「Recommended」 |
| 制动位置 | FT86 gen1 / 0xD1 | min(C / 0.7, 100)(%) | 0.7 为经验除数;看到频繁 100% 可改用 0.8 / 0.9 |
| 制动压力 | FT86 gen1 / 0xD1 | C × 128 | 源表「Recommended」 |
| 制动压力 | FT86 gen2 / 313 | F × 128 | 系数取自 gen1,源文档称「似乎吻合」 |
| 冷却液温度 | FT86 gen1 / 0x360 | D − 40 → °C | 源表「Recommended」 |
| 机油温度 | FT86 gen1 / 0x360 | C − 40 → °C | 源表「Recommended」 |
| 转速 | FT86 gen1 / 0x140 | bitsToUIntLe(raw, 16, 14) | 源表「Recommended」 |
| 车速 | FT86 gen1 / 0xD1 | bytesToIntLe(raw, 0, 2) × 0.015694 | 源文档建议对 GPS 核对乘数 |
| 车速 | FT86 gen2 / 313 | bitsToUIntLe(raw, 16, 13) × 0.015694 | 乘数同样建议对 GPS 核对,换更大/更小直径轮胎时尤其 |
| 转向角 | FT86 gen1 / 0xD0 | bytesToIntLe(raw, 0, 2) × −0.1(正值为左转) | 源表「Recommended」 |
| 四轮车速 | FT86 gen1 / 0xD4 | 每 2 字节一个轮,× 0.015694 | 与「车速」同乘数 |
| 横摆角速度 | FT86 gen2 / 312 | bytesToIntLe(raw, 4, 2) × −0.2725 | 对某款外部陀螺仪标定;gen1 用 0.286478897 |
| 横/纵向加速度 | FT86 gen1 / 0xD0 | bytes(6,1) × 0.2;bytes(7,1) × −0.1 | 源文档标注「数据噪声大」 |
| 离合器位置 | FT86 gen1 / 0x140 | (B & 0x80) / 1.28(只有 0% 和非 0%) | 源文档标注仅能区分 0% 与「非 0%」 |
| 转速 | MX-5 NC / 0x201 | bytesToUInt(raw, 0, 2) / 4.00 | 源表(WIP) |
| 车速 | MX-5 NC / 0x201 | ((bytesToInt(raw, 4, 2) / 100) − 100) / 3.6 | 原始值含 100 km/h 偏移;/3.6 转 m/s |
| 制动压力 | MX-5 NC / 0x085 | (3.4518689053 × raw − 327.27) / 1000 kPa | 乘数取自他人数据,源文档标注「可能有误」 |
| 车速 | MX-5 ND / 514 | bytesToInt(raw, 2, 2) / 360.0 | 源表「Recommended」(2019 RF 实测) |
| 转速 | MX-5 ND / 514 | bytesToUInt(raw, 0, 2) / 4 | 源文档提问:若有人记录到 > 8192 rpm 请告知 |
| 转向角 | MX-5 ND / 134 | (16000 − bytesToUInt(raw, 0, 2)) × 0.1(正值为右转) | 源表「Recommended」 |
读取方法与注意事项
第一是通道预算:源文档提醒,每增加一个基于新 CAN ID 的通道都会增加会话文件体积,并可能拖低其他通道的更新率,因为 BLE 带宽有限;但如果新通道与已有通道共用同一个 CAN ID(例如「节气门位置」和「加速踏板位置」都用 0x140),协议会自动优化,基本不影响更新率。
第二是接入点:FT86 与 Miata 老一代可以直接用 OBD 引脚 6/14;作者也提到可以在信息娱乐主机后方找一个隐藏连接器做完全隐式的接入。2022 之后的部分车型把 CAN 与 OBD 口隔离,这时要么接受慢速 OBD 数据,要么另找物理接入点并自制连接。
第三是公式单位:源表的车速公式末尾带「/3.6」,是把 km/h 换成 App 内部使用的 m/s,再由 App 换算成用户选择的单位;照着抄时不要重复换算。转向角公式前的负号只是朝向约定(正值为左转或右转随车型不同),可按喜好去掉。
证据等级与边界
可视为有证据的是 ND 表(在 2019 MX-5 RF 上实测)与各表标注为「Recommended」的基础信号。属于经验值/待核对的是:制动位置的 0.7 除数、gen2 制动压力沿用 gen1 系数、车速乘数(建议对 GPS 核对)、MX-5 NC 的制动压力乘数(源文档自述可能有误)、横/纵向加速度(噪声大)、离合器位置(只能区分 0%)。
不能外推的地方有两处。第一,同一功能在不同代际是不同的 ID 与公式(例如加速踏板 gen1 是 0x140、gen2 是 64),跨代套用必然出错。第二,各表相互独立,ND 表虽称「应适用于其他 ND 年款」,但只有 2019 RF 一台被实测,其他年款与配置需自行确认。
关于「安全访问」类问题:源文档未提供任何绕过方法,且不建议尝试;这些表都是监听广播帧得到的结果,不涉及对车辆安全机制的规避。
常见问题
哪些车能直接从 OBD 口抓到主 CAN?
源文档说明 2013-2020 的 BRZ/86/FR-S,以及 NC 与 ND 代 Miata,主 CAN 就在 OBD 引脚 6/14 上,用一款 OBD 读取器即可直接抓。2022 BRZ/GR86、2018+ WRX 以及许多 Porsche 把 CAN 与 OBD 口隔离了,只能拿慢速有限的 OBD 数据或另找接入点。
2022 BRZ 和 2013-2020 的公式能通用吗?
不能。同一功能在不同代是不同的 ID 与公式,例如加速踏板 gen1 用 0x140、gen2 用 ID 64;两代表是独立维护的。
车速公式里的乘数需要改吗?
源文档建议对 GPS 核对,换更大或更小直径轮胎时尤其要核对;FT86 两代都用 0.015694,MX-5 NC 用含 100 km/h 偏移的分式。
加更多通道会影响刷新率吗?
会,若新通道基于新的 CAN ID。源文档说明同一 CAN ID 上的多个通道不影响更新率,而基于新 ID 的通道很可能拖低所有其他通道的更新率。
延伸阅读
- OBD-II PID 入门:车速 0x0D 为什么是整数 —— 对照「广播帧解码」与「PID 请求」两条路线。
- 赛道日数据复盘:用 42 条赛道分段定位每一秒失分 —— 说明这些通道最终如何用于赛道分析。
- 车载信号为什么会说谎:TTL、源时间与 500 ms 新鲜度阈值 —— 承接通道更新率与数据质量的判读。
- 2017 Subaru BRZ 的 CAN 帧阅读笔记:端序、位序号与 WIP 配置 —— 同一车系的另一份解码记录,可对照其 WIP 与本文的成品表。
- 汽车 / 摩托 / 自行车:三类骑行场景对仪表的需求差异 —— 从使用场景看赛道数据通道的取舍。
参考资料
- 项目 01 ——
public-can-dbc-datasets/additional/timurrrr-racechrono-can-notes/README.md(主来源:设备与接入总说明)。 - 项目 01 ——
public-can-dbc-datasets/additional/timurrrr-racechrono-can-notes/can_db/ft86.md与can_db/ft86_gen2.md(两代 FT86 信号表)。 - 项目 01 ——
public-can-dbc-datasets/additional/timurrrr-racechrono-can-notes/can_db/mazda_mx5_nc.md与can_db/mazda_mx5_nd.md(MX-5 NC/ND 信号表)。
说明:本文整理自第三方开源项目的公开文档,仅代表该文档所记录的单个车辆样本,不代表同型号全系车型。CAN 与诊断操作存在风险,任何实车操作前请自行复核并遵守当地法规。
更新记录
首次发布 2026-10-11 最近核对:2026-10-11
发表回复