XCD刷机教程汇总

本文档是 XCD 刷机的入口汇总,覆盖 MCU 刷机、SoC EDL 刷机、fastboot 刷机和 P2 SOC 刷机四个部分。

MCU 刷机

使用 MCU 刷机硬件连接:注意必要改变开发版上的开关

刷机流程按照如下教程。

刷 MCU 软件配置文档:miniwiggle刷TC39X固件流程

MCU 刷写文档:XCD MCU更新UCB以及代码刷写流程

SoC 刷机 - EDL

如果进不了 adb 需要通过 EDL 刷机:

  1. 使用特制 EDL 线连接 Windows。
  2. 打开 MiFlash。

[附件(token=I92wbSYtpo5hTbxB4NiceXmQntg)]

进入 MiFlash 界面后:

  • 一般连接 EDL 线自动进入 9008,如果列表里没有设备,说明进入 9008 失败。
  • 选择 image 点击刷机。
  • 如果列表不是这样,说明 USB 插反了。

P1/P03 板子如果不是 COM 设备,需要按照下图方式短接,才能进入 9008,短接后重启 XCD。

image 下载连接(P03 示例): https://cloud.mioffice.cn/#/product/file-store/objects/xcd-project/202404/suiren/20240401/24.04.01.04.05.P03.native.userdebug.20240401040500?regionId=ck99jqjcc00291bn9m9e39uos

SoC 刷机 - fastboot

如果能进 adb 通过如下命令刷机:

  1. adb reboot bootloader
  2. 进入 image 目录执行 flash_all.sh

如果失败,cd 到 images 目录,执行如下命令:

fastboot flash super super.img && \
fastboot flash vbmeta vbmeta.img && \
fastboot flash vbmeta_system vbmeta_system.img && \
fastboot flash boot boot.img && \
fastboot reboot

image 下载连接(示例): https://cloud.mioffice.cn/#/product/file-store/objects/test-ci-package/202311/suiren/23.11.03.17.16.native.userdebug

P2 SOC 刷机

参考文档:

进入 fastboot 或 9008

💡 需要串口和 USB 一拖二的线

USB 接白色插口。

执行如下命令:

💡 1. 串口的 USB 插到电脑上。 2. 执行 sudo minicom -D /dev/ttyUSB0(注意:新的串口线连接节点是 /dev/ttyACM0,对应 sudo minicom -D /dev/ttyACM0) 3. 进 MCU 的 sh 环境 4. 如果是进 9008:pm.soc.edl.ctrl 1 如果是进 fastboot:pm.soc.fastboot.ctrl 1

Type-C USB 插回黑色接口。

方法二:adb 设置属性,关心跳后重启一次再进入刷机模式

adb root && adb shell setprop persist.soc_heartbeat_switch false
adb reboot  // 关闭心跳会在重启后才生效
 
// 等待车机重启
 
adb reboot bootloader  // 再次重启进入 fastboot 模式
// 此时如果需要进入 edl,执行以下命令。
// 熔丝的机器需要先用鉴权工具解锁才能使用 fastboot 命令:
// fastboot oem edl

Ubuntu 上打开小米刷机鉴权工具,工具的下载和账号注册等参考如上文档。

💡 汽车人获取账号密码命令:/getSecKey

登陆后选择 XCD 平台。

以 fastboot 刷机为例

  1. 选择第一个 tab 页面。模式是 fastboot,由于前面已经进入了 fastboot 模式,设备这个地方会自动识别到。
  2. 刷机包目录要选择到 images 目录。
  3. 选择研发设备刷机。
  4. 点击一键刷机即可。