首次安装 / 无法正常启动
Factory + USB
使用数据线和电脑,从 0x0 写入完整固件。此方式会清除设备中保存的 Wi-Fi 配置。
这份教程面向微雪 ESP32-S3-RLCD-4.2 用户,涵盖安装、闹钟设置、日常升级和 microSD 图片准备。
开始之前
| 文件 | 适用情况 | 安装方式 | Wi-Fi 配置 |
|---|---|---|---|
-factory.bin | 首次安装、旧版迁移、故障恢复 | USB 从 0x0 写入 | 清除 |
-ota.bin | 已安装 v0.7.0 或更新版本 | 在线更新或设置门户 | 保留 |
两类固件不能互换:不要把 OTA 固件写入 0x0,也不要在设备的设置门户上传 Factory 固件。
确保文件完整
(Get-FileHash .\esp32-rlcd-firmware-v0.14.0-factory.bin -Algorithm SHA256).Hash.ToLower()
sha256sum esp32-rlcd-firmware-v0.14.0-factory.bin
shasum -a 256 esp32-rlcd-firmware-v0.14.0-factory.bin
如果文件名或版本不同,请替换命令中的名称。校验结果不一致时不要继续安装,重新下载固件。
电脑安装
下面以 Windows 为例。准备一根支持数据传输的 Type-C 线,并保持设备稳定供电。
安装 Python 3,然后在 PowerShell 执行:
py -m pip install "esptool==5.3.1"
py -m esptool --help
连接 Type-C 后,在 Windows 设备管理器中找到 USB JTAG/serial debug unit,记下对应的 COM 号。也可以在 PowerShell 执行:
Get-CimInstance Win32_SerialPort |
Where-Object PNPDeviceID -Match 'VID_303A&PID_1001' |
Select-Object DeviceID, Name
在固件所在文件夹打开 PowerShell。把示例中的 COM5 和文件名替换为你的实际值:
py -m esptool --chip esp32s3 --port COM5 --baud 460800 `
--before no-reset --after no-reset write-flash `
--flash-mode dio --flash-freq 80m --flash-size 16MB `
0x0 .\esp32-rlcd-firmware-v0.14.0-factory.bin
出现 Hash of data verified. 表示写入和回读校验成功。然后长按 PWR 关机,不要按 BOOT,短按 PWR 正常启动。
不要额外执行全片擦除。Factory 固件已经包含 Bootloader、分区表和应用,并会覆盖本项目的网络配置。
第一次开机
WI-FI SETUP、热点名称、随机密码和二维码。http://192.168.4.1。暂时没有网络时,可以按屏幕提示离线进入首屏。已经校准且装有正常 RTC 备用电池的设备,断网后仍可继续显示时间、日历和传感器信息。
日常提醒
SETTINGS,再按住 KEY 3 秒。http://192.168.4.1。响铃时:短按 BOOT 停止;首次响铃可短按 KEY 延后 5 分钟。每次提醒最长持续 60 秒。
闹钟由 RTC 本地时间驱动,断网和省电模式不影响触发。物理关机期间不会唤醒设备或补发已经错过的提醒;播放音量为 0% 时只显示提醒界面。
离线图片
图片功能使用 FAT32 格式的 microSD。固件只读取存储卡,不会创建目录、格式化存储卡或修改其中的文件;当前版本不支持 exFAT 和热插拔。
rlcd\images。rlcd\images 目录。在 Windows PowerShell 中,下面的示例会下载工具、安装 Pillow,并把 photo.jpg 转为 00-photo.pbm:
git clone https://github.com/taifuer/esp32-rlcd-firmware.git
cd esp32-rlcd-firmware
py -m pip install Pillow
py tools/rlcd-image.py convert C:\path\to\photo.jpg 00-photo.pbm
py tools/rlcd-image.py check 00-photo.pbm
New-Item -ItemType Directory -Force E:\rlcd\images
Copy-Item .\00-photo.pbm E:\rlcd\images\
示例中的 E: 需要替换为 microSD 的实际盘符。转换工具会保持原图比例,将内容放入顶部 400 × 250 可见区;屏幕底部 50 像素由固件保留给按键提示。
插入、取出或更换存储卡前必须物理关机。运行中插卡不会重新扫描,强行热插拔可能损坏文件系统。
目录固定为 /rlcd/images/,最多扫描 32 个候选文件,并显示按文件名排序后第一张校验通过的图片。没有卡、目录不存在或图片无效时,图片页会自动隐藏,不影响时钟和其他页面。
推荐的日常方式
在线更新需要设备已经保存可用的 Wi-Fi,并能访问互联网。设备只会检查更新,不会静默下载或自动安装。
ONLINE UPDATE。UPDATE AVAILABLE 后,再按住 KEY 2 秒进入确认页。下载并写入开始后不要断电。检查、连接和确认阶段可以短按 BOOT 取消,开始写入后按键不会中断操作。
没有互联网也能更新
本地更新通过设备临时热点上传 OTA 固件,不依赖家庭 Wi-Fi 或互联网。
-ota.bin。SETTINGS。http://192.168.4.1。-ota.bin 并开始更新,保持供电直至设备自动重启。192.168.4.1 是设备临时热点中的固定管理地址,不是家庭路由器地址。门户最多开放 5 分钟;关闭后可重新进入 SETTINGS 并再次开启。
无法使用更新页面时
设备无法正常启动、分区损坏或仍运行 v0.6.0 及更早版本时,重新执行本教程第 3 节,使用 Factory 固件从 0x0 完整恢复。恢复完成后需要重新配网。
如果设备已经使用 v0.7.0 或更新版本的双 OTA 分区,只是网页更新暂时不便,并且你熟悉 WSL,可以使用项目脚本保留 Wi-Fi 配置:
git clone https://github.com/taifuer/esp32-rlcd-firmware.git
cd esp32-rlcd-firmware
./scripts/update-app.sh --port COM5 \
--firmware /path/to/esp32-rlcd-firmware-v0.14.0-ota.bin \
--confirm
这条高级路径仍要求先进入 ROM 下载模式。分区表或 Bootloader 发生变化时必须改用 Factory 固件,不要强行保留旧分区。
故障排查
确认 Type-C 线支持数据传输,换一个电脑 USB 口,并在设备管理器中重新查找 USB JTAG/serial debug unit。COM 号可能变化。
通常是没有正确进入 ROM 下载模式。重新执行“关机 → 按住 BOOT → 短按 PWR → 两秒后松开 BOOT”,再尝试烧录。
全反射屏断电后仍会保留画面。写入结束后物理关机,再在不按 BOOT 的情况下短按 PWR 正常启动,并等待数秒完成刷新。
确认家庭 Wi-Fi 和互联网可用;稍后重试,或改用不依赖互联网的本地更新。检查失败不会改变当前启动固件。
保持连接屏幕显示的临时热点,在浏览器手动访问 http://192.168.4.1。
确认设备运行 v0.12.0 或更新版本,存储卡为 FAT32,图片位于 /rlcd/images/,并已通过项目工具检查。然后物理关机,重新插稳存储卡后再开机。
返回首页下载固件。首次安装选 Factory,正常运行后的日常升级选 OTA。
前往固件下载