本文主要介绍使用Windows系统进行DCD/XCD刷机方法

准备ROM包

Daily Rom

Daily ROM 下载: 座舱ROM平台 (如果看不到某些车型,可能是因为没有权限,需要申请:权限申请,只申请角色即可,不要申请数据)

ROM 选择:当天 Dev 分支的线刷包-整包

一定要下载签名为测试、版本名称以.D结尾的包,否则默认未打开ADB

  • DCD:

    DCD ROM 选择示意1

    DCD ROM 选择示意2

  • XCD:其中的 ChangeId 填你的 ChangeNum。只需要填写 Ssi侧信息 即可,另外两个空着。注:ChangeNum在Gerrit上查,点开任意一条更改记录,查看网址栏,网址末尾的数字就是ChangeNum。其中的 ChangeId 填你的 ChangeNum。自己在Grapple平台构建的Rom包,编译完成后,前往构建详情下载(点击前往

    XCD ROM 选择示意1

    XCD ROM 选择示意2

Grapple自构建Rom包

整编(ampere)

Grapple 整编示意

单编(CarSettings)

Grapple 单编示意

下载

在Grapple平台自构建Rom方法参考:

Grapple 自构建方法参考

注意检查GrappleID、Product、ProductBranch、ChangeNum是不是对的

检查构建参数

点击下载图标后,选择下载FLASH_TGZ包

下载 FLASH_TGZ 包

将Rom包解压

使用Windows刷机

这里主要介绍基于Window PC 的线刷方式,卡刷可参考OTA升级之ADB方式

申请小米汽车PC刷机鉴权工具权限

一般需要申请如下权限:

  1. 小米汽车座舱鉴权 - 人员白名单权限
  2. 小米汽车座舱鉴权 - 车机白名单入库

详细申请过程参考:小米汽车PC刷机鉴权工具 - 账号&权限申请说明

安装小米汽车PC刷机鉴权工具

下载地址:小米汽车PC刷机鉴权工具 - 下载地址

使用说明:小米座舱PC刷机鉴权工具v2.0 - 使用说明

一般非必要,只需要进行Soc刷机

DCD线刷

准备台架

  1. 检查线束,其中第二排第三个位置(下图中黄色线位置)即为ACC线,该线应与BATT线接入同一接口,若发现该位置没有接线则此线束无法正常使用(直接使用可能出现的情况为:DCD通过adb连接成功后通过scrcpy打开会直接黑屏,开机一分钟左右会自动关机)

DCD 台架线束示意

  1. 将二合一串口USB线的 Type-C 端连入黑色口(注意正反),另一端连入电脑

    二合一串口USB线连接

  2. 插好USB后,可在PC命令窗口通过adb devices指令查看是否连接成功,如果没有输出,可尝试将插在DCD上Type-C反个面

adb devices 查询连接

使用金手指使DCD进入9008

将金手指插入台架背部,先关闭台架电源,再按住金手指上的按钮不松并重新上电,一段时间后(5秒以上)松开,台架将进入 EDL 模式 (此时台架显示器并不会亮)

金手指进入 9008

安装9008/EDL驱动

电脑如果第一次用于DCD刷机,大概率是需要安装9008/EDL驱动的。确认方法:打开Windows设备管理器,插拔usb线,设备管理器出现如右情况表示已安装,可以直接刷机,否则需要安装驱动。

设备管理器已安装驱动

  1. 下载驱动

    [附件: application/zip (token=Z8wrby6Cno8nxDxo3b2c3wXXnth)]

  2. 安装时选择wwan-dhcp

  3. 插拔usb线,设备管理器出现如下情况表示安装成功,可以直接刷机

驱动安装成功示意

更多参考:Windows安装usb驱动教程

使用PC刷机鉴权工具刷机

  1. 打开PC刷机鉴权工具,登录并选择DCD对应车型

选择DCD车型

  1. 选择要刷机的DCD,并点击下一步

这里如果看不到要刷机的DCD,检查驱动是否已安装,是否已用金手指进入9008

选择DCD设备

  1. 点击”选择目录”,再资源管理器弹窗中,进入解压好的Rom包,选择”package_info.xml”文件,然后点击下一步

选择 package_info.xml 1

选择 package_info.xml 2

  1. 确认Rom信息无误,点击”开始刷机”

刷机选项那里,默认会选中”清除数据”和”刷机后重启”,不需要动

开始刷机

  1. 进入刷机中状态,此时切勿断线/断电,直到刷机完成,设备自动重启

刷机进行中 1

刷机进行中 2

刷机完成

XCD刷机

安装高通USB驱动

  1. 前往高通网站:qpm.qualcomm.com,点击”Sign up”注册

QPM 注册入口

  1. 注册时,填写的邮箱地址为你的小米邮箱(使用个人邮箱注册成功也不能下载驱动),勾选同意隐私协议,点击”continue”,高通会向你的邮箱发送注册链接,通过链接完成注册即可

注册邮箱填写 1

注册邮箱填写 2

  1. 登录成功后,在上方菜单点击进入”Tools”

进入 Tools 菜单

  1. 在左侧搜索框输入”usb”,在右侧搜索结果中点击”Qualcomm® USB Driver”

搜索 Qualcomm USB Driver

  1. 在USB驱动下载页会提示使用”QPM3”桌面应用安装USB驱动,因此点击右下侧的”QPM3”下载地址

QPM3 下载地址

  1. 根据你的PC系统选择”QPM3”版本,点击”Download”下载

选择 QPM3 版本下载

  1. 下载”QPM3”完成后,正常安装,打开并登录”QPM3”桌面应用(使用前面刚注册的帐号)

QPM3 桌面应用登录 1

QPM3 桌面应用登录 2

  1. 同样去”Tools中”搜索USB驱动,在USB驱动详情页根据PC系统选择对应版本,点击”Install”安装驱动

USB 驱动 Install 1

注:原链接中 mime 字段残缺,此处保留原链接。

USB 驱动 Install 2

  1. USB驱动安装失败解决办法:如果提示安装失败,根据提示查看log,如下图,说明是PC上未安装"",因此我门安装对应的""环境即可

USB 驱动安装失败 log

解决环境依赖 1

解决环境依赖 2

  1. 解决完环境问题,继续尝试点击”install”进行USB驱动安装,这次一般就会安装成功,安装完成,按照提示重启计算机即可

安装成功提示

重启计算机

重启计算机 2

关闭XCD心跳

❗ XCD 在 E4U2 阶段开启了功能安全 SoC 心跳监控功能,旨在能够在 SoC 系统异常场景下 MCU 根据SoC心跳监控策略重启 SoC,实现功能安全要求

如果没关心跳就进行了刷机,MCU 会在刷机过程中重启 SOC,导致刷机失败,此时设备会无限重启进 fastboot,无法正常开机,需通过 MCU 方式关闭心跳,再进行刷机

(推荐)关心跳方式一:在 “用户反馈” APP 中关闭

  1. 打开 “用户反馈” APP
  2. 连续点击 10 次 “问题反馈”
  3. 在弹出的页面中关闭 ” Soc 开关状态”
  4. 重启一次设备至点亮屏幕
  5. 通过 adb reboot bootloader 进入 fastboot 模式

用户反馈关心跳 1

用户反馈关心跳 2

关心跳方式二:SOC 侧(Android Shell 方式)

  1. 通过 shell 命令关闭心跳

    adb root && adb remount && adb shell setprop persist.soc_heartbeat_switch false && adb reboot
  2. 设备重启后,再通过 adb reboot bootloader 进入 fastboot 模式

关心跳方式三:MCU 侧(MCU Shell 方式)

这种方式相对麻烦,具体参考文档:DCD / XCD 刷机教程

XCD进入fastboot

在PC的命令行窗口,输入bootloader命令如下,让XCD进入fastboot

XCD 进入 fastboot

使用PC刷机鉴权工具刷机

  1. 打开PC刷机鉴权工具,登录并选择XCD对应车型

选择XCD车型

  1. 选择要刷机的XCD,并点击下一步

这里如果看不到要刷机的XCD,检查驱动是否已安装成功

如果操作权限显示无,检查是否已完成了第2.1章的人员/设备白名单权限申请;如果确认权限已正确申请,则可能该XCD设备系统为第一次刷机,系统为手机/pad改的,只能用脚本刷,参考第2.4.5章

选择XCD设备

  1. 点击”选择目录”,再资源管理器弹窗中,进入解压好的Rom包,选择”package_info.xml”文件,然后点击下一步

选择 package_info.xml XCD 1

选择 package_info.xml XCD 2

  1. 确认Rom信息无误,点击”开始刷机”

刷机选项那里,默认会选中”清除数据”和”刷机后重启”,不需要动

开始刷机 XCD

  1. 进入刷机中状态,此时切勿断线/断电,直到刷机完成,设备自动重启

刷机进行中 XCD 1

刷机进行中 XCD 2

刷机完成 XCD

使用flash_all脚本刷XCD

如果在第2.4.4章中,PC刷机鉴权工具一直显示操作权限为无,且确认已完成了第2.1章的人员/设备白名单权限申请,可以将XCD重启退出fastboot,通过命令行查询secureboot状态:

查询 secureboot 状态 1

查询 secureboot 状态 2

如果显示为0,则说明该XCD设备系统为第一次刷机,系统为手机/pad改的,只能先用fast_all脚本刷

XCD进入fastboot

flash_all 进入 fastboot

执行flash_all脚本

进入Rom包解压目录,找到并执行flash_all.bat脚本进行刷机,此时切勿断线/断电,直到刷机完成,刷机完成设备自动重启

执行 flash_all.bat

更多刷机文档


刷机问题咨询群

刷机问题咨询群