项目简介
ESPecial是一个基于ESP32的智能家居控制系统,为用户提供无需编程技能就能设置复杂任务的解决方案。该项目适用于小型项目、家庭自动化和教育场景,用户可借助它轻松控制ESP32的各类功能,如GPIO控制、自动化任务、视频流、REST API、事件驱动的Web界面、Telegram机器人、MQTT客户端等。
项目的主要特性和功能
- 自动化:可通过API、MQTT、Telegram机器人或简单引脚事件触发自动化任务,无需编码。支持多种引脚控制,能发送Telegram消息和HTTP请求。
- ESP - CAM支持:可在界面直接进行视频流传输,并通过自动化任务经Telegram发送图片。
- REST API:能暴露GPIO和自动化逻辑,可设置引脚的数字/模拟值、模式、频率、分辨率等,还能触发自动化任务、扫描I2C地址和发送I2C命令。
- 事件驱动的Web界面:采用纯vanilla JS,无需联网。可通过界面设置引脚模式、动作、条件等,无需刷新页面就能获取引脚状态更新。
- Telegram机器人:能从外部控制ESP32,无需家庭服务器和暴露路由器端口,可通过用户授权列表限制访问。
- MQTT客户端:可发布/订阅引脚状态和动作。
- Wi - Fi:设置ESPecial到本地网络简便,先让ESPecial在AP模式下设置WIFI网络,即可访问所有功能并设置ESP32到本地网络。
安装使用步骤
安装
简单方式
- 确保ESP32已准备好,安装Arduino板管理器。
手动方式
- 复制或下载本项目到本地目录。
- 添加ArduinoJSON v6、PubSubClient、UniversalTelegramBot、ESPAsyncWebServer、AsyncTCP这些依赖库到Arduino库中。
- 上传代码到ESP32,选择
Minimal SPIFFS (1.9MB APP with OTA/190KB SPIFFS)
分区方案。 - 按照此指南上传Web服务器文件到SPIFF分区。
使用
Wi - Fi连接
- 打开ESP32,连接到名为ESP32的AP,密码为
p@ssword2000
。 - 访问
http://especial.local
进入Web界面。 - 在设置页面中,切换到Station模式(STA),输入Wi - Fi网络的SSID和密码。
Web界面
- 界面响应式,可在智能手机上使用。
- 添加第一个引脚处理程序,选择引脚并设置模式。
- 保存设置后,可通过界面控制引脚状态。
自动化
- 设置基于引脚状态或Telegram/MQTT/API事件触发的自动化任务。
- 添加动作,如设置引脚值、发送Telegram消息、发送HTTP请求等。
REST API
- 通过API触发引脚状态和自动化任务。
- 示例:
http://your.ip.local.ip/gpio/value?pin=5&value=1
设置引脚5为高电平。
Telegram机器人
- 创建Telegram机器人并获取Token。
- 在ESPecial设置页面中输入Token并激活Telegram机器人。
- 通过Telegram控制ESP32的引脚和自动化任务。
ESP - CAM
如果使用ESP - CAM板,可在界面中直接流式传输视频,并通过自动化任务经Telegram发送图片。
MQTT客户端
- 配置MQTT客户端,设置MQTT代理地址、用户名和密码。
- 设置主题,ESP32将监听和发布引脚状态。
OTA更新
- ESPecial会通知是否有新版本可用。
- 在设置面板中选择新版本进行更新。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】