Files
ws2/README.md
2026-02-02 10:13:01 +08:00

3.6 KiB
Raw Permalink Blame History

WS2 桌面气象站

(English | 中文)

基于ESP8266的桌面气象站能够实时显示天气信息、环境数据和时间。

WS2气象站 web管理页面

功能特点

  • 🌤️ 实时天气显示:获取并显示当前天气状况、温度、湿度和空气质量
  • 📺 TFT LCD彩色显示1.54寸240x240像素彩色液晶屏
  • 🕐 多种显示模式支持多种UI界面包括天气时钟和电子相册模式
  • 🌐 Web管理界面内置轻量级Web服务器支持浏览器配置和管理
  • 📊 系统监控:实时显示设备状态、内存使用和网络信息
  • 📡 WiFi连接支持2.4GHz WiFi网络自动重连机制

硬件规格

  • 主控芯片ESP8266/ESP32
  • 显示屏1.54寸 TFT LCD 240×240像素
  • 网络802.11 b/g/n WiFi

软件架构

本项目基于MicroPython开发包含以下核心模块

  • app.py - 主应用程序
  • config.py - 配置管理
  • wifi_manager.py - WiFi连接管理
  • display.py - 显示屏控制
  • nanoweb.py - 轻量级异步Web服务器
  • captive_portal.py - 配置门户

快速开始

  1. 购物网站搜: WiFi天气时钟

务必与商家确认可以通过usb下载固件

  1. 连接设备usb下载完整版固件到ESP8266
    esptool.py --port /dev/ttyUSB0 --baud 460800 write-flash --flash-size=detect 0 firmware.bin
    

初次配置

  1. 设备启动后会创建WiFi热点 WS2-xxxx
  2. 连接该热点,浏览器会自动跳转访问 192.168.4.1
  3. 在配置页面输入WiFi信息
  4. 设备将自动连接并获取天气信息

Web管理界面

设备Web界面提供以下功能

设备状态

  • 查看系统运行状态、内存使用情况
  • 监控设备IP地址和运行时间
  • 实时显示UUID和固件版本

屏幕显示

  • 调节屏幕亮度 -切换显示模式
  • LCD内容预览

系统配置

  • 选择城市和地区
  • 设置自动熄屏时间
  • 保存/加载配置

高级设置

  • 执行系统命令
  • 查看MAC地址
  • 重启设备
  • 清空配置

API接口

设备提供RESTful API接口可通过HTTP请求获取数据

GET /lcd                    - 获取LCD设置
GET /status                 - 获取系统状态
GET /config                 - 获取配置信息
POST /exec                  - 执行系统命令 {cmd: "命令内容", token: "认证令牌"}
POST /lcd/set               - 设置LCD参数 {brightness: 80, ui_type: "default"}
POST /config/set            - 设置配置 {city: "北京", standby_time: "22:00"}

开发指南

  1. 修改/src/rom下相关文件使用mpremote romfs更新
  2. 自行编译micropython固件需要集成st7789py_mpy(未整理)

故障排除

常见问题

Q: 设备无法连接WiFi

  • A: 检查WiFi密码是否正确或重启设备重新配置

Q: 天气数据不更新

  • A1: 检查网络连接,或尝试强制刷新天气数据
  • A2: 个人的天气服务器失联~

许可证

本项目采用MIT许可证

致谢

联系方式