花 8 美元买一台能跑 Linux 的三核 RISC-V 微型电脑,听起来像开源硬件圈的白菜价奇迹,但开发者 Bram Stolk 在 2022 年 12 月 15 日至 16 日的两篇点亮记录里给出的真相是,为了给这块 PINE64 Ox64 刷入第一段引导代码,你手里得先备好另一块开发板。这不是一台拆盒即用的廉价树莓派平替,而是一张给芯片原厂充当免费测试工的硬核门票。

连闯六关的开机仪式与双串口迷局

PINE64 在 2022 年 10 月 15 日官宣 Ox64,并于 12 月 2 日左右开售。Bram Stolk 拿到板子准备刷机时,以太网、Wi-Fi 和 SD 卡槽全部处于不可用状态,连最基础的固件写入都逼着他连闯六道关卡:

  • 板载 USB 接口不支持直接编程,必须把线接到 GPIO14、GPIO15 和 GND 引脚走 UART 串口。
  • 博流官方刷机工具 DevCube 在 Ubuntu 的 Wayland 会话下启动即崩溃,必须切回 Xorg。
  • 换用亚马逊买来的 CH340G 串口模块后,DevCube 每次都在握手阶段报错失败。
  • 翻遍社区才找到替代方案,需要拿一块搭載 RP2040 的开发板(他手头用的是 Adafruit KB2040),按住 BOOT 键上电刷入 picoprobe 固件充当串口桥接器,把 RP2040 的 GPIO4 接到 Ox64 的 GPIO15、GPIO5 接到 GPIO14 并共地。
  • 接好线后图形界面的 DevCube 依然无法识别刷机,只能改用 Python 命令行工具 bflb-mcu-tool。
  • 这个命令行工具也得手动魔改,打开 ~/.local/lib/python3.10/site-packages/bflb_mcu_tool/libs/bflb_interface_uart.py 源码并剥离 DTR 和 RTS 控制逻辑,再通过 MicroUSB 给 Ox64 供电、USB-C 连接电脑,以 2000000 波特率执行命令,才终于把 low_load_bl808_m0.bin 刷进芯片,在串口看到 156 Kbyte 堆内存初始化、E907 启动和 PSRAM 时钟就绪的返回信息。
Ox64 早期跨核启动与双串口排障链路 1. 桥接改造 KB2040 刷 picoprobe 删脚本 DTR/RTS 2. 引导小核 M0 接 GPIO14/15 串口 初始化 156KB 堆与时钟 3. 唤醒大核 D0 刷入 OpenSBI 固件 修补 MCU 引脚配置 4. 进入 Linux 切 GPIO16/17 串口 C906 输出 root 终端 硬件排障提示:刷机串口与系统控制台物理分离 部分批次 CH340G 在 GPIO14/15 握手会报 Shake hand fail,但可直接接 GPIO16/17 读取 Linux 终端输出。 次日换用修改版 picoprobe 固件后,官方图形工具 DevCube 即可恢复正常刷机。

刷通 M0 小核连开机的一半都算不上。在 12 月 16 日更新的下半场记录里,他换用修改版 picoprobe 固件跑通了 DevCube,继续向 D0 核心和系统分区刷入固件,并给 OpenSBI 与 MCU 引脚配置打补丁,把 Linux 控制台映射到另一组独立的串口(GPIO16 TX 与 GPIO17 RX),最终才在 C906 核心上见到 Linux root 提示符。PINE64 官方 Wiki 后来也证实,部分批次的 CH340G 模块在 bootloader 通信时确实会出现握手失败和空应答,但那枚无法用来刷机的 CH340G,接在 GPIO16 和 GPIO17 上读取 Linux 控制台输出反而完全正常。

剥开三核与 128Mb 的参数滤镜

很多人初看宣传,会以为花 8 美元买到了一台三核对称多处理的 128MB 内存电脑。把参数表拆开看,里面全是文字错觉。

Ox64 搭载的博流智能(Bouffalo Lab)BL808 SoC 确实塞进了三个异构 RISC-V 核心,但它们采取的是非对称架构(AMP):包括一颗 480 MHz 的 64 位平头哥 C906 核心、一颗 320 MHz 的 32 位 E907 核心,以及一颗 150 MHz 的 32 位 E902 核心。真正带 MMU(内存管理单元)且用来跑主线或裁剪版 Linux 的,只有那颗 480 MHz 的 C906;开机时必须先由小核初始化硬件与内存,再去引导大核的 OpenSBI 与 Linux 内核。

至于商品链接里显眼的 128mb 字样,指的根本不是内存,而是 128 Mbit 的 XSPI Flash 闪存,折算下来只有 16 MB 存储空间(官方另有一个 6 美元版本,仅配 16 Mbit 即 2 MB 闪存、砍掉了 microSD 卡槽,只面向 RTOS 实时系统)。两个版本的板载内存完全一致,都只有 64 MB 嵌入式 PSRAM 外加 728 KB 内部 SRAM。哪怕纸面硬件列出了 2.4 GHz 802.11 b/g/n Wi-Fi、BLE 5.0、Zigbee、USB 2.0 OTG(USB-C 口)、双通道 MIPI-CSI 摄像头接口、40-pin 引脚和可选扩展板支持的百兆以太网,在 64 MB 内存和早期残缺驱动的双重限制下,它本质上仍是一颗能勉强引导 Linux 内核的微控制器。


省下 12 美元的真实代价

如果把目光从单一开发板移开,放进 2022 年底的廉价 RISC-V 硬件坐标系里横向对比,这 8 美元的性价比幻觉会破灭得更快。

硬件省下的十几美元差价,全变成了替原厂排雷的隐性工时。

古人讲买椟还珠,好歹还落个精美的木匣子;在早期开源硬件圈贪便宜买 alpha 级开发板,往往连盒子都得自己拿木头现刨。芯片原厂为了抢占带 MMU 的 AIoT 市场,把单板机 BOM 成本压进微控制器区间,却只丢出面向裸机或 RTOS 的残缺工具链,转头就把繁重的 Linux 底层点亮(bring-up)工作甩给开源社区。

开发板型号芯片与主核规格内存与闪存配置售价与 2022 年底软件成熟度
PINE64 Ox64博流 BL808(480 MHz C906 + 双 32 位小核)64 MB PSRAM + 728 KB SRAM / 2 MB 或 16 MB Flash6 或 8 美元;11 月 15 日刚跑通初步 Buildroot,无无线与 SD 卡驱动
Sipeed M1s Dock博流 BL808(含 100-GOPS 神经网络加速器)64 MB PSRAM + 768 KB SRAM约 11 美元;主推自有嵌入式 SDK,避开通用 Linux 电脑宣传
MangoPi MQ Pro全志 D1(单核 1 GHz 64 位 C906 + 音频 DSP)512 MB 或 1 GB DDR3/DDR3L约 20 美元起;2022 年 7 月已有支持 Wi-Fi 的 Armbian/Debian 镜像

同用一颗 BL808 芯片,矽速科技(Sipeed)售价约 11 美元的 M1s Dock 选择了更务实的路线,老老实实提供自有嵌入式 SDK,不去硬蹭通用 Linux 电脑的预期。而如果开发者的目标真的是低成本体验或学习 RISC-V Linux,多花 12 美元去买搭载全志 D1 的 MangoPi MQ Pro,不仅 C906 主频直接翻倍到 1 GHz,内存更是暴涨 8 到 16 倍,早在 2022 年 7 月就能直接刷入带 Wi-Fi 支持的 Armbian 镜像跑包管理器和编译代码。

8 美元 Ox64 与 20 美元 MangoPi MQ Pro 规格代差 C906 主频 Ox64 (480 MHz) MQ Pro (1000 MHz · 2.1倍) 内存容量 Ox64 (64 MB PSRAM) 1 GB (16倍) 单板起售价 Ox64 ($8 需自备桥接板) MQ Pro ($20 开箱可用 Armbian)
  • 提醒.PINE64 在官宣时就把 Ox64 的 Linux 支持定性为社区工程,除非你享受手改 Python 串口脚本和给 OpenSBI 打补丁的底层折腾乐趣,否则千万别为了省一杯咖啡钱拿它当 Linux 入门机。

回到开头那块被借来救场的 KB2040 桥接板,这场荒诞的刷机接力其实把廉价开源硬件的商业底牌翻了个底朝天。8 美元买到的从来不是一台现成的 UNIX 电脑,而是芯片厂与社区发行商合谋的一场众包实验;至于这颗仅配 64 MB PSRAM 的异构芯片究竟能不能跑起实用的轻量级负载,全看社区极客们用爱发电的肝度能不能撑到把 SD 卡、Wi-Fi 和以太网驱动全部填平的那一天。