Milk-V Duo S 刷机教程:microSD 卡与 eMMC 版 CviBurn 线刷
Milk-V Duo S 装系统:区分普通版和 eMMC 版,普通版写 microSD 卡,eMMC 版用 CviBurn 的 usb_dl 按住 recovery 键刷入,附 SSH、Wi-Fi 设置和清除 eMMC 方法。约 15 分钟。
适用于Milk-V Duo S 官方系统镜像
先确认是哪种 Duo S
Milk-V Duo S(芯片 SG2000,512 MB 内存,带网口和 Wi-Fi 6)有两种存储版本,装系统的方法完全不同:
| 看哪里 | 普通版(microSD) | eMMC 版 |
|---|---|---|
| 板上的 eMMC 位置 | 空焊盘 | 焊着 eMMC 芯片 |
| 系统装在哪 | microSD 卡 | 板载 eMMC(出厂是空的,需要自己刷) |
| 装系统 | 写 microSD 卡(方法一) | 用电脑通过 USB 刷 eMMC(方法二) |
Milk-V Duo、Duo 256M 是另外的型号,镜像不能混用,见 Milk-V Duo 刷机教程 和 Milk-V Duo 256M 刷机教程。
Duo S 的大核可以用 RISC-V 或 ARM,由板上的一个切换开关决定。镜像要和开关位置一致,否则系统起不来。
准备
- 一根 USB Type-C 数据线:供电、刷 eMMC 和 USB 登录都用它。
- 普通版:一张 microSD 卡和读卡器。
- eMMC 版:一台 Windows 电脑(Milk-V 只提供 Windows 下的 eMMC 刷写方法)。
- 可选:网线、USB 转 TTL 串口线。
下载哪个文件
打开 Milk-V Duo S 系统镜像页,本站收录的是 V2 镜像(v2.0.1):
| 文件名 | 用途 | 大核 |
|---|---|---|
milkv-duos-musl-riscv64-sd_v<版本>.img.zip | 写 microSD 卡 | RISC-V |
milkv-duos-glibc-arm64-sd_v<版本>.img.zip | 写 microSD 卡 | ARM |
milkv-duos-musl-riscv64-emmc_v<版本>.zip | eMMC 版刷机包(不是卡镜像) | RISC-V |
不确定开关在哪一边时,可以接上串口看启动日志的第一个字母来判断(见“刷坏了怎么救”)。Milk-V 的 v2.0.1 也发布了 ARM 的 eMMC 刷机包 milkv-duos-glibc-arm64-emmc_v<版本>.zip,本站暂未收录:从文末“官方资料”进入 Milk-V 的 Duo S 页面,再经 Resource Download Summary 进入 V2 镜像发布页获取。下载后可以按 如何核对下载文件的 SHA-256 核对。
方法一:普通版写 microSD 卡
- 打开 balenaEtcher,点“从文件烧录”,选
milkv-duos-…-sd_v<版本>.img.zip。 - 点“选择目标”选 microSD 卡,再点“现在烧录”,等到显示完成。也可以用 Rufus 写入。
- 把卡插进 Duo S 的卡槽,用 Type-C 线接上 5V 电源或电脑。
应看到:板上的蓝色 LED 开始闪烁,说明系统已经正常运行。
警告写入会清空整张卡。选目标时看清容量。
方法二:eMMC 版用 USB 刷 eMMC
需要本站的 CviBurn(含 USB 驱动),里面有两个压缩包,都要解压。Milk-V 说明 eMMC 刷写要用 V1.1.3 或更新的固件;本站的 v2.0.1 eMMC 刷机包来自 Milk-V 的 V2 镜像发布页。
- 运行
CviUsbDownloadInstallDriver里的安装程序,装好 USB 驱动。 - 在
CviBurn_v2.0_cli_windows文件夹里新建一个rom文件夹,把milkv-duos-musl-riscv64-emmc_v<版本>.zip解压进去。
应看到:rom 里直接有 boot.emmc、fip.bin、partition_emmc.xml、rootfs_ext4.emmc 等文件。
- 在
CviBurn_v2.0_cli_windows文件夹里打开终端(PowerShell),运行:
.\usb_dl.exe -s linux -c cv181x -i .\rom应看到:提示正在等待 USB 设备连接(Waiting for USB device connection)。
- 先取出 microSD 卡。按住 Duo S 上的 recovery 键,用 Type-C 数据线把板子接到电脑,然后松开按键。
应看到:窗口出现 found usb device vid=0x3346 pid=0x1000,接着显示各文件的写入百分比,最后是 USB download complete。
- 板子会自动重启。
应看到:蓝色 LED 开始闪烁,表示系统已正常启动。
注意本站的 eMMC 刷机包是 RISC-V 版,刷之前确认大核开关在 RISC-V 一侧。
更多截图说明见 Milk-V Duo S eMMC 版刷机。
第一次登录
Duo S 的镜像默认开启了 SSH 和 USB 虚拟网卡(CDC-NCM):
- 用 Type-C 线把 Duo S 接到电脑,等蓝灯开始闪烁。
- 在电脑终端运行
ssh root@192.168.42.1,第一次连接输入yes,密码milkv。
- 较旧的 Windows 需要手动装网卡驱动:设备管理器里右键带黄色感叹号的
CDC NCM设备,选“更新驱动程序(Update Driver)” → “浏览我的电脑以查找驱动程序” → “让我从计算机上的可用驱动程序列表中选取” → “网络适配器(Network Adapters)” → 厂商Microsoft、型号UsbNcm Host Device。 - 网线:Duo S 带 100M 网口。Milk-V 文档没有写网口默认怎么获取地址;接上路由器后,可以先用 USB 登录,再运行
ip a查看eth0有没有拿到 IP。 - Wi-Fi:编辑
/etc/wpa_supplicant.conf,把ssid和psk改成你的 Wi-Fi 名称和密码,然后运行下面的命令,连上后用ip a查看分到的 IP:
wpa_supplicant -B -i wlan0 -c /etc/wpa_supplicant.conf- USB-A 口:Type-C 口的 USB 网卡和 USB-A 口的 USB 主机功能不能同时用,默认是 Type-C 网卡。要用 U 盘等设备时运行下面的命令再重启:
ln -sf /mnt/system/usb-host.sh /mnt/system/usb.sh
sync刷坏了怎么救
- 蓝灯不闪、起不来:先检查大核开关和镜像是否一致。接上串口时,启动日志第一行以
C开头表示 RISC-V 核,以B开头表示 ARM 核。 - 普通版:系统全部在 microSD 卡里,换个写卡工具重新写一次卡即可。
- eMMC 版:按方法二重新刷一次,刷写时一定先取出 microSD 卡。
- 想把 eMMC 恢复到初始状态:在 Duo S 的系统里运行 Milk-V 给的下面这组命令(会清除 eMMC 数据,先备份重要文件);要重新装系统时按方法二再刷:
echo 0 > /sys/block/mmcblk0boot0/force_ro
echo 0 > /sys/block/mmcblk0boot1/force_ro
dd if=/dev/zero of=/dev/mmcblk0boot0 bs=1M count=4
dd if=/dev/zero of=/dev/mmcblk0boot1 bs=1M count=4- 串口接法:GND(6 脚)接 USB 转 TTL 的黑线,TX(8 脚)接白线,RX(10 脚)接绿线,红线不要接;电平 3.3V,参数 115200、8N1、无流控。见 用 USB 转 TTL 串口调试开发板。
资料来源
按 Milk-V 官方文档(Duo S 介绍与 eMMC version firmware burning、Boot from microSD card、Set up the working environment、Resource Download Summary)和 Milk-V 在 GitHub 发布的 duo-buildroot-sdk-v2 v2.0.1 版本说明整理,2026-10-22 查阅。
提示本页按厂商官方文档整理,本站没有在实机上测试。按键、开关位置和文件名以你的板子和 Milk-V 官方说明为准。
整理:AppGoBox · 依据 · 本站未在实机上逐一验证