Files
wifitest/README.md
DESKTOP-PUHFO60\dsx2016 ba09f4f48e fix 3.5 backlight and GT911 for cyd_35r.
TFT_BL was wrongly GPIO21 (GT911 INT); use GPIO27, DRAW_BUF_DIV=20, and export firmware/cyd_35r.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-25 19:40:29 +08:00

3.1 KiB
Raw Permalink Blame History

CYD WiFi 配网基础

可复用 WiFi 配网模块,支持 2.8" 与 3.5" CYD。显示/触控骨架对齐 tftest;3.5 背光与 GT911 按 CYD_PROJECT_GUIDE.md。

板型 env 屏 / 触控 背光
2.8" · 2432S028R cyd(默认) ILI9341 + XPT2046 SoftSPI GPIO21
3.5" · 3248S035C cyd_35r ST7796 + GT911 I2C GPIO27

为什么这样设计

方式 优点 缺点 本项目
屏上 LVGL 扫网 + 键盘 不离开手机当前 WiFi;有屏设备体验最好 依赖触控 主路径
SoftAP + Captive Portal 手机浏览器配网;无屏板子也能用 需连设备热点 备用(Phone AP)
BLE / Espressif Provisioning 官方、可加密 要专用 App、占内存 未采用
tzapu WiFiManager 成熟 阻塞式、和 LVGL 难并存 未采用

凭证存 NVS(Preferences),重启自动重连;断线会周期性重试。

刷写(无需每次编译)

板型 目录
2.8" firmware/cyd/
3.5" firmware/cyd_35r/
cd firmware\cyd          # 或 firmware\cyd_35r
.\flash.ps1
# 或
.\flash.ps1 -Port COM3

重新打包:

.\firmware\export_from_build.ps1              # 2.8
.\firmware\export_from_build.ps1 -Env cyd_35r # 3.5
.\firmware\export_from_build.ps1 -SkipBuild

源码烧录:pio run -e cyd -t upload 或 pio run -e cyd_35r -t upload
串口监视:pio device monitor -b 460800

  1. 无凭证:进入 WiFi Setup,点 Scan,选网络,键盘输入密码,Join。
  2. 或点 Phone AP:手机连 CYD-Setup,打开 http://192.168.4.1/。
  3. 成功后进状态页;Change WiFi / Forget 可重配。

接到其它项目

只需带走这些文件(无业务耦合):

include/wifi_prov.h     # 核心 API(无 LVGL)
src/wifi_prov.cpp
include/wifi_ui.h       # 可选:屏上 UI
src/wifi_ui.cpp

有屏时的最小接入:

wifi_prov_begin();   // 有凭证则自动连
wifi_ui_create();    // 无凭证则进配网页

void loop() {
  wifi_prov_loop();
  wifi_ui_tick();
  // ...
}

无屏 / 只要门户:

wifi_prov_begin();
if (!wifi_prov_is_connected()) {
  wifi_prov_portal_start("MyDevice-Setup");
}
// loop 里 wifi_prov_loop();

宏可覆盖(build_flags):

  • WIFI_PROV_AP_SSID — 默认 CYD-Setup
  • WIFI_PROV_CONNECT_TIMEOUT_MS — 默认 20s
  • WIFI_PROV_RECONNECT_MS — 默认 8s

模块划分

  • touch.* / pins.h — CYD 硬件(按 CYD_BOARD_3248S035 分支)
  • wifi_prov.* — NVS、扫描、连接、重连、SoftAP 门户
  • wifi_ui.* — LVGL 列表 + 密码键盘 + 状态页(UX/UY 适配 480×320)
  • main.cpp — 演示入口

硬件

  • 2.8":ILI9341 240×320,横屏 ROTATION_270(逻辑 320×240),触控 SoftSPI。
  • 3.5" C:ST7796 320×480,逻辑 UI 480×320;GT911 SDA33/SCL32/INT21/RST25;勿把 GPIO33 当 TOUCH_CS。