120 lines
4.1 KiB
Markdown
120 lines
4.1 KiB
Markdown
|
|
# ESP32 萤火虫设备配置流程
|
|||
|
|
|
|||
|
|
## 🎯 用户配置流程
|
|||
|
|
|
|||
|
|
### 1. 新用户首次使用
|
|||
|
|
1. **下载APP**:用户下载萤火虫智能家居APP
|
|||
|
|
2. **打开网络设置**:进入 `#/pages/settings/network` 页面
|
|||
|
|
3. **看到配置提示**:APP显示设备未配置的提示卡片
|
|||
|
|
|
|||
|
|
### 2. 设备配置模式
|
|||
|
|
1. **长按按键**:用户长按ESP32设备按键3秒
|
|||
|
|
2. **进入SoftAP模式**:设备创建"ESP32_Config"热点
|
|||
|
|
3. **连接热点**:用户手机连接到"ESP32_Config"热点
|
|||
|
|
4. **自动弹出配置页面**:浏览器自动打开 `http://192.168.4.1`
|
|||
|
|
|
|||
|
|
### 3. WiFi配置
|
|||
|
|
1. **扫描WiFi**:配置页面自动扫描附近的WiFi网络
|
|||
|
|
2. **选择网络**:用户点击选择目标WiFi网络
|
|||
|
|
3. **输入密码**:输入WiFi密码
|
|||
|
|
4. **提交配置**:点击"配置设备"按钮
|
|||
|
|
|
|||
|
|
### 4. 配置完成
|
|||
|
|
1. **设备重连**:ESP32连接到用户的WiFi网络
|
|||
|
|
2. **APP连接**:用户手机也连接到相同WiFi
|
|||
|
|
3. **自动发现**:APP自动发现并连接ESP32设备
|
|||
|
|
4. **开始使用**:用户可以正常使用所有功能
|
|||
|
|
|
|||
|
|
## 🔧 技术实现
|
|||
|
|
|
|||
|
|
### APP端功能
|
|||
|
|
- **真实网络状态检测**:显示实际的WiFi连接状态
|
|||
|
|
- **ESP32连接管理**:测试、连接、断开ESP32设备
|
|||
|
|
- **配置历史记录**:保存配置成功/失败的历史
|
|||
|
|
- **扫描设备功能**:引导用户进入配置模式
|
|||
|
|
- **手动配置选项**:支持手动输入设备IP进行配置
|
|||
|
|
|
|||
|
|
### ESP32端API
|
|||
|
|
- **`/api/status`**:通用设备状态API
|
|||
|
|
```json
|
|||
|
|
{
|
|||
|
|
"success": true,
|
|||
|
|
"data": {
|
|||
|
|
"version": "v1.0.0",
|
|||
|
|
"device": "ESP32_Firefly",
|
|||
|
|
"uptime": 12345,
|
|||
|
|
"wifi": {"connected": true, "ssid": "WiFi名称", "rssi": -45},
|
|||
|
|
"memory": {"free": 123456, "total": 234567},
|
|||
|
|
"sensors": {"thermal": true, "temperature": true, "light": true}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
- **`/api/wifi`**:WiFi配置API
|
|||
|
|
```json
|
|||
|
|
POST /api/wifi
|
|||
|
|
{
|
|||
|
|
"ssid": "WiFi名称",
|
|||
|
|
"password": "WiFi密码"
|
|||
|
|
}
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 配置页面特性
|
|||
|
|
- **响应式设计**:适配手机和平板
|
|||
|
|
- **WiFi扫描**:自动扫描附近网络
|
|||
|
|
- **信号强度显示**:显示WiFi信号质量
|
|||
|
|
- **实时状态反馈**:配置过程状态提示
|
|||
|
|
- **自动关闭**:配置成功后自动关闭
|
|||
|
|
|
|||
|
|
## 📱 用户界面改进
|
|||
|
|
|
|||
|
|
### 网络设置页面新增功能
|
|||
|
|
1. **配置提示卡片**:未配置时显示操作指引
|
|||
|
|
2. **真实网络状态**:显示实际WiFi连接信息
|
|||
|
|
3. **ESP32设备连接**:显示设备连接状态和信息
|
|||
|
|
4. **断开连接按钮**:方便测试和重新配置
|
|||
|
|
5. **手动配置选项**:支持直接输入设备IP
|
|||
|
|
6. **配置历史记录**:显示配置成功/失败历史
|
|||
|
|
|
|||
|
|
### 状态显示
|
|||
|
|
- ✅ **已连接**:绿色显示,显示延迟和版本信息
|
|||
|
|
- ❌ **未连接**:红色显示,提供配置指引
|
|||
|
|
- 🔄 **测试中**:显示连接测试进度
|
|||
|
|
- 📡 **配置中**:显示配置过程状态
|
|||
|
|
|
|||
|
|
## 🚀 使用优势
|
|||
|
|
|
|||
|
|
### 用户体验
|
|||
|
|
- **零配置门槛**:新用户无需技术知识
|
|||
|
|
- **自动化流程**:最少的手动操作
|
|||
|
|
- **清晰指引**:每步都有明确提示
|
|||
|
|
- **状态可见**:实时显示连接状态
|
|||
|
|
|
|||
|
|
### 开发者友好
|
|||
|
|
- **标准API**:RESTful接口设计
|
|||
|
|
- **错误处理**:完善的错误提示机制
|
|||
|
|
- **调试支持**:详细的日志和状态信息
|
|||
|
|
- **扩展性强**:易于添加新功能
|
|||
|
|
|
|||
|
|
## 📝 注意事项
|
|||
|
|
|
|||
|
|
1. **按键长按时间**:确保长按3秒以上进入配置模式
|
|||
|
|
2. **网络环境**:确保手机和设备在同一WiFi网络
|
|||
|
|
3. **浏览器兼容**:建议使用现代浏览器
|
|||
|
|
4. **配置超时**:配置过程如果超时需要重新开始
|
|||
|
|
5. **安全考虑**:SoftAP模式仅用于配置,配置完成后自动关闭
|
|||
|
|
|
|||
|
|
## 🔄 故障排除
|
|||
|
|
|
|||
|
|
### 常见问题
|
|||
|
|
1. **无法进入配置模式**:检查按键是否长按足够时间
|
|||
|
|
2. **找不到热点**:确认设备已重启并进入配置模式
|
|||
|
|
3. **配置失败**:检查WiFi密码是否正确
|
|||
|
|
4. **APP无法连接**:确认手机和设备在同一网络
|
|||
|
|
|
|||
|
|
### 解决方案
|
|||
|
|
1. **重新配置**:使用断开连接功能重新开始
|
|||
|
|
2. **手动配置**:使用手动输入IP的方式
|
|||
|
|
3. **查看历史**:检查配置历史记录排查问题
|
|||
|
|
4. **重启设备**:必要时重启ESP32设备
|