# device-plug **Repository Path**: smart-mip/device-plug ## Basic Information - **Project Name**: device-plug - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-06-13 - **Last Updated**: 2026-06-13 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 智能插座 (HL-PLUG-001) ESP32-C3智能插座固件,支持远程控制、电能计量和MQTT通信。 ## 📁 目录结构 ``` plug/ ├── code/ # ESP32-C3固件源代码 │ ├── components/ # 硬件组件驱动 │ │ ├── hlw8032/ # HLW8032电能计量芯片 │ │ ├── relay/ # 继电器控制 │ │ ├── led/ # LED指示灯 │ │ ├── key/ # 按键处理 │ │ ├── wifi/ # WiFi管理 │ │ ├── web/ # Web配网 │ │ └── udp_log/ # UDP日志 │ ├── main/ # 主程序 │ ├── CMakeLists.txt # CMake配置 │ └── sdkconfig # ESP-IDF配置 │ ├── doc/ # 设备文档 │ ├── ref/ # 参考资料(数据手册等) │ └── soft-arch/ # 软件架构文档 │ ├── specs/ # 设备模型定义 │ ├── plug.yaml # 设备模型(YAML) │ └── readme.md # 设备模型说明 │ ├── QUICK_START.sh # ⭐ 一键编译脚本(推荐) ├── build_docker.sh # Docker编译脚本 ├── setup_docker_env.sh # Docker环境设置 ├── BUILD_GUIDE.md # 完整编译指南 └── DOCKER_SETUP_COMPLETE.md # Docker设置报告 ``` ## 🚀 快速开始 ### 方式一:Docker编译(推荐)⭐ **最简单的一键编译:** ```bash cd /home/yhlei/work/devices/plug ./QUICK_START.sh ``` 这个脚本会自动: 1. ✓ 检查Docker环境 2. ✓ 下载ESP-IDF v5.5镜像(首次需要,约2-3GB) 3. ✓ 编译ESP32-C3固件 4. ✓ 显示编译结果和烧录说明 **详细文档:** - [BUILD_GUIDE.md](BUILD_GUIDE.md) - 完整编译指南 - [DOCKER_SETUP_COMPLETE.md](DOCKER_SETUP_COMPLETE.md) - Docker设置报告 ### 方式二:本地ESP-IDF编译 如果已安装ESP-IDF到本地: ```bash cd /home/yhlei/work/devices/plug/code idf.py set-target esp32c3 idf.py build ``` 详见:[BUILD_GUIDE.md - 方案二](BUILD_GUIDE.md#方案二本地安装esp-idf编译) ## 🔧 硬件组件 | 组件 | 目录 | 说明 | |------|------|------| | **HLW8032** | `code/components/hlw8032/` | 电能计量芯片,测量电压、电流、功率 | | **Relay** | `code/components/relay/` | 继电器控制,开关负载 | | **LED** | `code/components/led/` | LED状态指示 | | **Key** | `code/components/key/` | 物理按键处理 | | **WiFi** | `code/components/wifi/` | WiFi连接管理 | | **Web** | `code/components/web/` | Web配网页面 | | **UDP Log** | `code/components/udp_log/` | UDP日志输出 | ## 📋 技术规格 - **主控芯片**: ESP32-C3 (RISC-V, 160MHz) - **ESP-IDF版本**: v5.5 - **通信协议**: MQTT (二进制格式) - **电能计量**: HLW8032 - 电压测量: 0-300V - 电流测量: 0-10A - 功率测量: 0-2500W - **配网方式**: Web配网 / SmartConfig - **固件版本**: 1.0.1 ## 📖 设备模型 设备模型定义了插座的所有数据项、事件和配置参数: - **数据项**: 开关状态、电压、电流、功率、累计电量等 - **事件**: 开关状态变化、过载告警等 - **配置**: 定时任务、过载保护阈值等 详见:[specs/plug.yaml](specs/plug.yaml) 和 [specs/readme.md](specs/readme.md) ## 🔗 相关文档 - [协议规范](../../docs/protocol-spec.md) - MQTT二进制协议 - [系统总览](../../readme.md) - 智能家居系统介绍 - [设备开发总览](../readme.md) - 所有设备类型 ## ⚙️ 编译输出 成功编译后,固件文件位于 `code/build/`: ``` code/build/ ├── smart_socket.bin # 主固件 (~800KB-1MB) ├── bootloader/bootloader.bin # Bootloader (~20KB) └── partition_table/partition-table.bin # 分区表 (~3KB) ``` ## 💾 烧录固件 ```bash # 使用esptool.py esptool.py --chip esp32c3 --port /dev/ttyUSB0 write_flash \ 0x0 code/build/bootloader/bootloader.bin \ 0x8000 code/build/partition_table/partition-table.bin \ 0x10000 code/build/smart_socket.bin # 或使用idf.py idf.py -p /dev/ttyUSB0 flash monitor ``` --- **最后更新**: 2026-04-12 **维护者**: Hovel IoT Team