bde2df4e137f162a32c7f6f918f27c3a82b12fd9
BotanicalBuddy
基于 ESP-IDF 的植物助手项目,当前已集成:
- Wi-Fi 配网组件(wifi-connect):手机连接设备热点后通过网页完成路由器配置
- LCD 显示组件(lvgl_st7735s_use):基于 LVGL 驱动 ST77xx SPI 屏并显示界面
功能特性
- 长按按键进入配网模式
- 支持两种配网策略:按键触发 / 常驻配网
- 设备开启 SoftAP(
ESP32-xxxxxx)+ Captive Portal - 手机访问
http://192.168.4.1完成 Wi-Fi 配置 - 支持清除已保存 Wi-Fi 参数并重新配网
- 串口中文状态日志,便于调试和现场维护
- 支持 ST77xx SPI LCD 显示(LVGL)
- 支持方向/偏移参数化配置,便于后续适配不同屏幕
目录结构
main/:应用入口(app_main)components/wifi-connect/:配网组件实现与文档README.md:组件说明USER_GUIDE.md:用户操作手册QUICK_POSTER.md:张贴版快速指引BLOG.md:博客草稿
components/lvgl_st7735s_use/:LCD 显示组件(LVGL + ST77xx)README.md:组件说明与调参指南
开发环境
- Linux
- ESP-IDF
v5.5.2(建议) - Python 与 ESP-IDF 工具链按官方方式安装
快速开始
- 配置并编译
idf.py set-target esp32idf.py build
- 烧录并查看日志
idf.py -p /dev/ttyUSB0 flash monitor
- 显示初始化
- 在
app_main中调用:ESP_ERROR_CHECK(start_lvgl_demo()); - 可选:
ESP_ERROR_CHECK(lvgl_st7735s_set_center_text("BotanicalBuddy"));
- 在
- 配网
- 按键触发模式:长按设备按键进入配网模式
- 常驻配网模式:上电自动进入配网模式
- 手机连接
ESP32-xxxxxx - 打开
http://192.168.4.1 - 选择路由器并输入密码提交
调试建议
- 若出现“按键未按下却进入配网”,通常是按键引脚与 LCD/外设复用导致电平抖动。
- 可在
WiFi Connect配置中调大:WIFI_CONNECT_BUTTON_STARTUP_GUARD_MS(建议 8000~10000)WIFI_CONNECT_BUTTON_RELEASE_ARM_MS(建议 300~500)
- 若硬件允许,优先给配网按键使用独立 GPIO,避免与屏幕复位脚复用。
- 若使用常驻配网模式,可不依赖按键触发(适合按键与 LCD 复位脚复用场景)。
当前状态
项目已完成第一版配网闭环:
- 配网入口
- 路由连接
- 状态显示
- 清除配置
- 中文日志与文档
并完成 LCD 显示链路:
- SPI 屏初始化
- LVGL 显示注册
- 方向/偏移可配置
Description
Languages
C
99.7%
CMake
0.3%