配置
在开发板上使用 esp32-config 配置常用设置:
esp32-config
菜单界面用于管理系统设置、网络、蓝牙、接口、GPIO 和内存/存储选择。保存的设置存储在
/etc/esp32-conf 中,由启动脚本应用。
选择配置位置
需要更改的内容 |
配置位置 |
|---|---|
加入驱动 |
内核 defconfig 和构建配置 |
加入应用程序 |
Buildroot defconfig 或外部软件包 |
启用外设或更改其引脚 |
|
配置 Wi-Fi、蓝牙、GPIO、开机程序或存储 |
|
更改 CPU 频率 |
Linux cpufreq 接口 |
更改外设的运行时设置 |
对应的 Linux 子系统 API |
更改 flash 分区布局 |
布局配置、引导加载程序和设备树 |
持久化文件
根文件系统通过 OverlayFS 将只读 SquashFS 镜像与可写 JFFS2 层合并。
persist 成功挂载时,写入合并后根文件系统的普通文件会存入持久层,包括
/etc/esp32-conf 和 /var/lib/btstack 中的蓝牙配对数据。应用程序使用这些常规路径;
JFFS2 存储层在早期启动阶段完成挂载与组合。
以下位置用于临时存储:
路径 |
常见内容 |
|---|---|
|
服务状态、进程 ID 和启动日志 |
|
临时文件 |
|
运行日志 |
持久化分区容量为 2120 KiB,其中一部分由文件系统元数据占用。当前布局没有专用 HIL 临时分区。 较大的应用程序、媒体文件和日志应存放在 SD 卡或 USB 存储设备上。 完整配置包含 FAT/VFAT 和内置 ext4;使用 SD 卡前,还需启用相应存储覆盖层。
部分由固件管理的文件会在启动时恢复为镜像中的版本。 这些例外及替换文件的安装方式见 部署需要在重启后保留的文件。
更新时保留设置
仅当开发板已使用相同紧凑布局时,完整匹配组件烧录或 make flash-existing-all 才能保留 persist。该目标不会构建,应先运行 make image。更换布局必须先备份并全新安装。烧录 s31_full_flash.bin 或擦除整个芯片都会替换已保存的数据。
见烧录与首次启动。
备份与恢复设置
选择 Maintenance → Export configuration,输入一个新的 .tar 文件名。
要将备份放到已挂载的可移动存储上:
esp32-config maintenance backup /mnt/media/esp32-config-backup.tar
备份包含配置工具管理的设置,以及已保存的 Wi-Fi 凭据。 请妥善保管,并在擦除 flash 前将备份复制到板外。 用户程序、登录密码、蓝牙配对密钥和已挂载存储中的文件不包含在备份中。 工具不会覆盖已有备份文件。
通过 Maintenance → Import configuration 导入,或运行:
esp32-config maintenance restore /mnt/media/esp32-config-backup.tar
工具先检查归档和配置内容,再替换已保存的设置。
导入会恢复 esp32-config 管理的完整配置快照,不会逐字段合并现有设置。
用户文件会保留。重启 Linux 后,恢复的设置一起生效;
导入时不会立即停止当前程序、释放 GPIO 或断开网络。
重置配置
选择 Maintenance → Reset configuration,再选择设置组,或使用:
esp32-config maintenance reset network|bluetooth|interfaces|gpio|system|memory|all
每次提供一个组名。例如,仅重置已保存的网络设置:
esp32-config maintenance reset network
默认设置在重启 Linux 后生效。重置 system 或 all 会保留登录密码。
蓝牙配对密钥也会保留;需要删除时,使用清除已保存配对。
重置配置不会删除用户程序和其他文件。
无线设置
无线模式在模块加载时选择。模块参数 mode 和 direct_hci 分别选择 Wi-Fi/蓝牙组合与蓝牙前端。XIP 加载器读取烧入专用 Flash 分区的预链接无线镜像,不按文件名加载,也没有 firmware 参数。日常设置应使用配置工具;如需更改这些模块参数,
应先停止无线应用程序,再重新加载模块。
参数值和 Linux 接口见无线参考。
无法保存设置时
通过 df -h、/proc/mounts 和 dmesg 检查可用空间及存储错误。
正常启动后,根文件系统应为可写的 OverlayFS。如果早期启动无法找到或挂载 persist、
构建 OverlayFS,或切换到合并后的根文件系统,就会输出错误并启动只读 SquashFS 基础系统。
在可写存储恢复之前,配置将无法保存。
修改覆盖层后,应在 s31-overlay status 中同时检查当前生效和预期保存的条目。
保存失败、替换回滚及恢复已保存选择的行为见使用覆盖层。