Hotdry.
systems-engineering

Jeep OTA变砖事件复盘:从远程信息处理单元到动力总成故障的连锁反应

对近期Jeep 4xe混合动力车因OTA更新变砖的事件进行深入分析。文章探讨了从信息娱乐系统到动力总成控制的潜在故障链,并提出了针对汽车行业在系统解耦、验证流程与安全回滚策略方面的具体工程建议。

近期,部分 Jeep 牧马人 4xe 插电式混合动力车的车主经历了一场由 OTA(Over-the-Air)软件更新引发的噩梦。一个看似常规的 Uconnect 信息娱乐系统更新,却导致了车辆在行驶中失去动力,最终 “变砖”,无法启动。这一事件为整个汽车行业敲响了警钟:在 “软件定义汽车” 的时代,便捷的远程更新背后潜藏着巨大的系统性风险。本文旨在深入剖析此次事件可能的技术根源,探讨从一个远程信息处理(Telematics)更新如何引发灾难性的动力总成(Powertrain)故障。

事件概述:一次危险的 “周末部署”

根据 Ars Technica 的报道,Stellantis(Jeep 的母公司)在周末推送了一个针对 Uconnect 系统的远程信息处理单元的更新。然而,更新安装后不久,多位车主报告其车辆在行驶途中,包括在高速公路上,突然失去动力。车辆随即抛锚,仪表盘亮起故障灯,无法再次启动。Stellantis 在接到大量故障报告后紧急撤下了该更新,并建议已下载但未安装的用户忽略更新提示,而对已安装更新但车辆尚能行驶的用户,则建议 “避免使用混合动力或纯电模式”。这一临时应对措施本身就暗示了问题出在车辆的电气化核心控制部分。

根本原因分析:脆弱的 ECU 间通信与权限失控

将此次事件简单归咎于 “不应在周末发布更新” 显然是避重就轻。问题的核心在于系统架构的健壮性与安全冗余设计。现代汽车由数十甚至上百个电子控制单元(ECU)通过车载网络(如 CAN 总线)连接而成,协同工作。此次故障的连锁反应,很可能源于以下几个层面的技术失误:

1. 系统架构的紧耦合与安全边界缺失

最核心的问题,在于一个本应属于信息娱乐域(Infotainment Domain)的更新,为何能直接影响到安全攸关的动力域(Powertrain Domain)。这暴露了系统架构中一个致命的弱点:关键 ECU 之间缺乏严格的安全隔离和权限控制

Uconnect 系统关联的远程信息处理单元(TCU)负责车辆的对外通信,例如远程控制、紧急呼叫和 OTA 更新下载。理论上,TCU 向 CAN 总线发送的数据应受到严格的过滤和限制,尤其不能允许其直接发送能够控制动力总成控制模块(PCM)或混合动力控制模块(HPCM)的高权限指令。

此次事件中,有理由推测,更新后的 TCU 软件存在缺陷,可能导致其在特定条件下(例如车辆模式切换或数据上报时)向 CAN 总线广播了异常或格式错误的消息。这些 “毒丸” 消息被动力系统的关键 ECU 接收并错误解析,触发了保护性关机或进入了无法恢复的故障状态。一个健壮的架构应当包含一个中央网关(Gateway),作为不同子网间的 “防火墙”,严格审查和过滤跨域消息,阻止类似的信息娱乐系统异常直接影响到行车安全。

2. 不充分的验证与硬件在环(HIL)测试缺位

如此严重的故障能在正式发布中出现,直接说明了 Stellantis 的软件验证流程存在巨大漏洞。一个常规的软件测试流程包含单元测试、集成测试和系统测试。对于汽车软件,尤其重要的一环是硬件在环(HIL)仿真测试

HIL 测试通过模拟器构建一个虚拟的整车环境,让待测 ECU(如此次的 TCU)与真实的或模拟的其他 ECU 进行交互。测试场景应覆盖各种极端的驾驶工况、网络负载和异常注入。例如,测试用例本应包含 “当 TCU 在 CAN 总线上发送随机 / 错误数据时,动力系统是否能维持正常工作?”。此次故障能在行驶中发生,说明其测试矩阵很可能没有覆盖到动态驾驶场景下的 ECU 交互,或者 HIL 测试环境本身与真实车辆的配置存在差异。

3. 缺乏可靠的回滚与恢复机制

OTA 更新的 “最后一公里” 安全保障是其原子化与可恢复性。行业标准的做法是采用 A/B 分区机制。系统拥有两个独立的系统分区(A 和 B),当前运行在 A 分区时,更新被下载并安装到闲置的 B 分区。安装完成后,系统尝试从 B 分区启动。如果启动成功且核心功能验证通过,则 B 分区成为新的活动分区。如果启动失败或监测到严重故障,系统应能自动回滚,重新从 A 分区启动,从而保证车辆至少能恢复到更新前的可用状态。

Jeep 4xe 车辆在更新后直接 “变砖”,表明其 OTA 方案可能存在以下缺陷:

  • 没有采用真正的 A/B 分区,而是在原系统上进行原地升级(in-place update),一旦升级过程出错或新软件存在引导问题,系统将无法启动。
  • 即便有 A/B 分区,但其引导加载程序(Bootloader)或恢复逻辑存在缺陷,导致在更新失败后无法成功切换回旧分区。
  • 更新破坏了 ECU 的持久化配置数据,即使回滚到旧软件版本,也因配置错误而无法正常工作。

对汽车行业的警示与工程实践建议

Jeep 的这次代价高昂的教训,为所有致力于 “软件定义汽车” 的厂商提供了宝贵的工程参考:

  1. 强制推行 “安全第一” 的域隔离架构:必须在硬件和软件层面严格分离安全关键域与非关键域。中央网关必须扮演好 “安全警察” 的角色,基于白名单机制过滤所有跨域通信,绝不允许信息娱乐系统有任何机会直接干预驾驶控制。

  2. 将 HIL/VIL 测试提升到发布前最高优先级:必须构建覆盖整车所有 ECU 和复杂工况的硬件在环(HIL)及整车在环(VIL)测试平台。 fault-injection(故障注入)测试应成为标准流程,模拟各种潜在的软件缺陷和硬件故障,确保系统的鲁棒性。

  3. 强制要求具备原子化与自动回滚能力的 OTA 方案:所有涉及 ECU 固件的更新都必须基于 A/B 分区或类似机制,确保更新失败后车辆 100% 能够自动恢复至上一版本。更新成功与否的判定,不应仅是 “能否启动”,而应包含一系列对核心功能的自动化健康检查。

  4. 实施灰度发布与精细化监控:绝不应将更新一次性推送给所有用户。通过灰度发布(Canary Release),先将更新推送给内部员工、测试用户或极小比例(如 1%)的普通用户。同时,通过 TCU 回传的详细遥测数据,密切监控更新后车辆的各项核心指标(如 ECU 错误码、重启次数、电池电压等),一旦发现异常立即暂停发布并启动根源分析。

总之,汽车 OTA 更新的便捷性绝不能以牺牲安全性为代价。Jeep 的 “变砖” 事件,并非一次简单的软件 Bug,而是系统工程、安全架构与验证流程上的综合性失败。它清晰地表明,当汽车的控制权越来越多地交给代码时,软件工程的严谨性、流程的规范性以及对失败的敬畏之心,将直接决定车轮上的生命安全。

查看归档