ESP32-C3 低功耗懒人开关:传统开关轻松上云和本地控制
项目背景
随着科技的快速发展,智能家居已经成为我们日常生活的一部分。而对于基础设施已经配备完毕的家庭而言,对家居设备的智能化改造是一项相对困难的工作。本文将分享一款基于 Wi-Fi 的低功耗懒人开关—— “ESP32-C3 管灯熊猫”。将智能的 “ESP32-C3 管灯熊猫”与传统开关结合,能够在不改造家庭电路且无需额外网关的情况下,快速实现对灯具的智能化控制。搭载 ESP32-C3 的“熊猫”支持直连 HomeKit 与乐鑫 ESP RainMaker 云。用户可轻松实现对“熊猫”的本地控制和云端远程控制。将“熊猫”贴在现有的传统开关上,利用“熊猫”双脚控制开关,进而控制房间内的灯具设备。通过这种简单的改造方式,智能懒人开关能有效提升家居体验。
观看视频 体验这款易开发、长续航的懒人开关神器“ESP32-C3 管灯熊猫”。
[开源] [DIY] ESP32 管灯熊猫 直连 Iphone 15 分钟复刻 ! 全平台可控 懒人神器!
“ESP32-C3 管灯熊猫”具有以下优点:
- 直连 Homekit 与 ESP RainMaker 云:“熊猫”无需接入智能音响或网关,便可实现局域网控制。它支持 Siri 语音控制和通知栏快捷控制,响应十分迅速。此外,我们还可以将其接入 ESP RainMaker 云平台,实现对其的云端远程控制。
- 易于配置:仅需扫码两次即可完成所有配置。
- 极低功耗:兼顾高响应速度和强续航能力。搭配 2000mAh 电池情况下,仅使用 ESP RainMaker 控制待机续航约为 90 天,HomeKit + ESP RainMaker 待机续航约为 45 天。
- 超易复刻:代码、硬件和结构完全开源。
- - 固件支持一键烧录,无需烧录工具,也无需下载任何开发环境。
- - 简约的电路设计,仅使用了约 20 个器件。
- 功能齐全:支持电池低电量报警和自动关机,支持重置配网信息。
- 极低成本:复刻整机,物料成本不超过 30 元。
- 高度集成:整机结构紧凑,尺寸小巧。
“ESP32-C3 管灯熊猫”开源项目现已开源在 GitHub 和立创硬件开源平台。
项目价值
在产品开发流程中,开发者通常需要评估设备的易用程度、续航能力、开发难易度和成本等因素。与此同时开发者还需考虑如何将设备接入第三方平台,如何将设备接入云平台以实现远程控制,并对产品进行细致的功耗优化等问题。乐鑫为开发者提供了丰富的芯片矩阵和软件平台:
- ESP32-C3 SoC 集成了 Wi-Fi、Bluetooth LE,兼具优良性能与高性价比,还提供了品类丰富的外设,仅需少量器件即可实现产品功能。
- ESP32-C3 支持通过 USB 直接下载,借助零代码分享平台 ESP LaunchPad,可以轻松实现一键烧录。
- 乐鑫提供了 ESP HomeKit SDK 和 ESP RainMaker SDK 开源代码及细致例程,可实现对设备便捷的本地控制和远程云端控制。
- ESP32-C3 设备可针对典型场景动态切换功耗模式 (Active, Modem-sleep, Light-sleep, Deep-sleep),结合乐鑫提供的功耗管理例程,在同时集成 HomeKit 和 ESP RainMaker 的情况下,也能实现超低功耗。
- 乐鑫提供了完善的开发环境和活跃的开发平台,开发者可以在论坛中获取解决方案,所有资料均可直接在 GitHub 中获得,无需注册。
对于开发者而言,“ESP32-C3 管灯熊猫”能直接达到开箱即体验的效果。用户无需搭建开发环境、研究协议和芯片底层的具体细节,大大简化了开发过程。值得一提的是,它还易于扩展为各类形态,可以被设计为小夜灯、电子门锁、远程开机卡等设备,是学生群体入门物联网领域的理想实践。
开发指南
硬件准备
点击文末的项目硬件开源链接即可获取 PCB 设计资料,项目所需物料均选用易于焊接的封装。下载原理图、PCB 和对应的 BOM,选择合适的打样平台制作 PCB。
快速使用
1. 烧录
- 进入 ESP Launchpad 页面。
- 将“熊猫”连接到电脑上。
- 同时按住“熊猫”上的 RESET 键和 BOOT 键 (IO9) ,然后先松开 BOOT 键,再松开 RESET 键,强制芯片进入烧录模式。
- 点击 Connect 并选择“管灯熊猫”对应的串口,串口名通常类似于 “USB JTAG/serial debug unit (COMXX) - 已配对”。
- 点击 Flash 开始烧录。
2. 配网
- 烧录完成后,点击“管灯熊猫”上的 RESET 键。
- 在网页中点击 Connect 并选择该设备对应的串口。
- 在网页中点击 Console,进入控制台页面,点击 Reset Device。
- 稍等片刻,控制台上会显示两个二维码,使用 ESP RainMaker APP 扫描大的二维码,对设备进行配网。完成后即可通过 APP 远程控制设备。
- 使用 Apple 自带的家庭 APP 扫描小的二维码,即可绑定设备至 Homekit,通过 Apple 通知栏或者 ‘Siri’ 实现更快捷的本地控制。
编译和修改代码
如果想在当前代码的基础上进行二次修改,请按照如下流程进行编译:
- 先决条件:首先,需要安装 ESP-IDF 开发环境,并拉取 ESP RainMaker 和 ESP-HomeKit-SDK 的代码。
- 确保上述环境已成功安装并导入正确路径;
- 在 esp-rainmaker/example 目录下克隆本仓库代码:
```
cd esp-rainmaker/examples/ git clone git@github.com:lisir233/esp_smart_light_controller.git
```
- 进行编译:
```
cd esp_smart_light_controller idf.py build
```
相关资源
- 项目 Github 链接
- 项目硬件开源链接
- 乐鑫物联网开发框架 ESP-IDF
- 乐鑫 ESP RainMaker SDK
- 乐鑫 ESP HomeKit SDK
相关文章:
ESP32-C3 低功耗懒人开关:传统开关轻松上云和本地控制
项目背景 随着科技的快速发展,智能家居已经成为我们日常生活的一部分。而对于基础设施已经配备完毕的家庭而言,对家居设备的智能化改造是一项相对困难的工作。本文将分享一款基于 Wi-Fi 的低功耗懒人开关—— “ESP32-C3 管灯熊猫”。将智能的 “ESP32-…...
前端学习路线指南:从入门到精通【①】
前言 作为一个前端开发者,学习前端技术是必不可少的。然而,由于前端领域的广阔和不断演进的技术栈,对于初学者来说可能会感到困惑。本篇文章将为你提供一个清晰的前端学习路线,帮助你系统地掌握前端开发技能,并成为一名…...

Flash模拟EEPROM原理浅析
根据ST的手册,我们可以看到,外挂EEPROM和Dflash模拟EEPROM,区别如下: 很明显,模拟EEprom的写入速度要远远快于外挂eeprom(有数据传输机制); 其次,外挂EEPROM不需要擦除即可实现写入数据…...

Typora 最新激活方法
Markdown是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容具有一定的格式,其目标是实现易读易写。而Typora则是一个非常不错的Markdown编辑器,它的界面非常的简洁直观,并且功能各…...

jenkins如何安装?
docker pull jenkins/jenkins:lts-centos7-jdk8 2.docker-compose.yml version: 3 services:jenkins:image: jenkins/jenkins:lts-centos7-jdk8container_name: my-jenkinsports:- "8080:8080" # 映射 Jenkins Web 界面端口volumes:- jenkins_home:/var/jenkins_h…...

从零开始的LINUX(三)
bc:进行浮点数运算 uname:查看当前的操作系统 ctrlc:中止当前正在执行的程序 ctrld:退出xshell shutdown:关机 reboot:重启 shell外壳: 作用:1、命令解释(将输入的程序…...

CleanMyMac2024永久免费版Mac系统磁盘清理工具
Cleanmymac对很多用户来说已经非常熟悉了,因为在网上如果你搜寻有关清理mac系统方面的软件时,占比非常多的会是cleanmymac的相关消息。许多刚从Windows系统转向Mac系统怀抱的用户,一开始难免不习惯,因为Mac系统没有像Windows一样的…...
HashSet 元素不重复
HashSet通过底层使用HashMap来保证元素不重复。具体来说,HashSet内部维护一个HashMap,其中元素存储在HashMap的key上,而所有的value都指向同一个共享的内部对象。在存储元素时,HashSet会根据元素的hashCode值来确定其在HashMap中的…...

基于SpringBoot的二手车交易系统的设计与实现
目录 前言 一、技术栈 二、系统功能介绍 管理员功能实现 商家管理 公告信息管理 论坛管理 商家功能实现 汽车管理 汽车留言管理 论坛管理 用户功能实现 汽车信息 在线论坛 公告信息 三、核心代码 1、登录模块 2、文件上传模块 3、代码封装 前言 如今社会上各行…...

最短路径:迪杰斯特拉算法
简介 英文名Dijkstra 作用:找到路中指定起点到指定终点的带权最短路径 核心步骤 1)确定起点,终点 2)从未走过的点中选取从起点到权值最小点作为中心点 3)如果满足 起点到中心点权值 中心点到指定其他点的权值 < 起…...

基于UDP/TCP的网络通信编程实现
小王学习录 今日鸡汤Socket套接字基于UDP来实现一个网络通信程序DatagramSocket类DatagramPacket类基于UDP的服务器端代码基于UDP的客户端代码基于TCP来实现一个网络通信程序ServerSocket类Socket类基于TCP的服务器端代码基于TCP的客户端代码优化之后的服务器端代码补充TCP长短…...

springboot启动报错
...
Python中的split()函数
函数:split() Python中有split()和os.path.split()两个函数,具体作用如下: split():拆分字符串。通过指定分隔符对字符串进行切片,并返回分割后的字符串列表(list) os.path.split():…...
大数据-玩转数据-Python Sftp Mysql 数据
一、需求描述 1、从Mysql数据库表下载数据到服务器; 2、将数据已csv文件格式存储并对数据格式进行处理(添加表头,表头和数据均用竖线分隔符隔开,末尾也加分割符); 3、文件路径文件夹以天为单位,…...

Selenium3-当元素通过@FindBy获取时,返回元素为null
报错: 在获取元素的js属性时一直获取不到,报空指针,定位到元素时,发现是FindBy的元素没有找到 解决方法: 在page类的构造函数中加上了 界面初始化,让元素先隐式加载,这样就不会出现返回元素为空的情况辣 PageFactory…...

JWT详解解读读
📑前言 本文主要是jwt解读文章,如果有什么需要改进的地方还请大佬指出⛺️ 🎬作者简介:大家好,我是青衿🥇 ☁️博客首页:CSDN主页放风讲故事 🌄每日一句:努力一点&#…...

一文详解如何从 Oracle 迁移数据到 DolphinDB
Oracle 是一个广泛使用的关系型数据库管理系统,它支持 ACID 事务处理,具有强大的安全性和可靠性,因此被广泛应用于各种企业级应用程序。但是,随着数据规模的增加和业务需求的变化,Oracle 的一些限制和缺点也逐渐暴露出…...

负载均衡--Haproxy
haproxy 他也是常用的负载均衡软件 nginx 支持四层转发,七层转发 haproxy也可以四层和七层转发 haproxy:法国人开发的威利塔罗在2000年基于C语言开发的一个开源软件 可以支持一万以上的并发请求 高性能的tcp和http负载均衡2.4 1.5.9 haproxy&#…...
股票价格预测 | 融合CNN和Transformer以提升股票趋势预测准确度
一 本文摘要 股票价格往往很难预测,因为我们很难准确建模数据点之间的短期和长期时间关系。卷积神经网络(CNN)擅长找出用于建模短期关系的局部模式。然而,由于其有限的观察范围,CNN无法捕捉到长期关系。相比之下,Transformer可以学习全局上下文和长期关系。本文提出了一…...

QMI8658A_QMC5883L(9轴)-EVB 评估板
1. 描述 QMI8658A_QMC5883L(9轴)-EVB 评估板是一款功能强大的9轴IMU传感器,它利用了QMA8658A 内置的3轴加速度计和3轴陀螺仪,同时结合QMC5883L的3轴地磁数据,来测量物体在三维空间中的角速度和加速度(严格意义上的IMU只为用户提供…...

SCAU期末笔记 - 数据分析与数据挖掘题库解析
这门怎么题库答案不全啊日 来简单学一下子来 一、选择题(可多选) 将原始数据进行集成、变换、维度规约、数值规约是在以下哪个步骤的任务?(C) A. 频繁模式挖掘 B.分类和预测 C.数据预处理 D.数据流挖掘 A. 频繁模式挖掘:专注于发现数据中…...

Keil 中设置 STM32 Flash 和 RAM 地址详解
文章目录 Keil 中设置 STM32 Flash 和 RAM 地址详解一、Flash 和 RAM 配置界面(Target 选项卡)1. IROM1(用于配置 Flash)2. IRAM1(用于配置 RAM)二、链接器设置界面(Linker 选项卡)1. 勾选“Use Memory Layout from Target Dialog”2. 查看链接器参数(如果没有勾选上面…...
leetcodeSQL解题:3564. 季节性销售分析
leetcodeSQL解题:3564. 季节性销售分析 题目: 表:sales ---------------------- | Column Name | Type | ---------------------- | sale_id | int | | product_id | int | | sale_date | date | | quantity | int | | price | decimal | -…...
【生成模型】视频生成论文调研
工作清单 上游应用方向:控制、速度、时长、高动态、多主体驱动 类型工作基础模型WAN / WAN-VACE / HunyuanVideo控制条件轨迹控制ATI~镜头控制ReCamMaster~多主体驱动Phantom~音频驱动Let Them Talk: Audio-Driven Multi-Person Conversational Video Generation速…...
Mysql8 忘记密码重置,以及问题解决
1.使用免密登录 找到配置MySQL文件,我的文件路径是/etc/mysql/my.cnf,有的人的是/etc/mysql/mysql.cnf 在里最后加入 skip-grant-tables重启MySQL服务 service mysql restartShutting down MySQL… SUCCESS! Starting MySQL… SUCCESS! 重启成功 2.登…...

C++ 设计模式 《小明的奶茶加料风波》
👨🎓 模式名称:装饰器模式(Decorator Pattern) 👦 小明最近上线了校园奶茶配送功能,业务火爆,大家都在加料: 有的同学要加波霸 🟤,有的要加椰果…...

CVPR2025重磅突破:AnomalyAny框架实现单样本生成逼真异常数据,破解视觉检测瓶颈!
本文介绍了一种名为AnomalyAny的创新框架,该方法利用Stable Diffusion的强大生成能力,仅需单个正常样本和文本描述,即可生成逼真且多样化的异常样本,有效解决了视觉异常检测中异常样本稀缺的难题,为工业质检、医疗影像…...

认识CMake并使用CMake构建自己的第一个项目
1.CMake的作用和优势 跨平台支持:CMake支持多种操作系统和编译器,使用同一份构建配置可以在不同的环境中使用 简化配置:通过CMakeLists.txt文件,用户可以定义项目结构、依赖项、编译选项等,无需手动编写复杂的构建脚本…...

阿里云Ubuntu 22.04 64位搭建Flask流程(亲测)
cd /home 进入home盘 安装虚拟环境: 1、安装virtualenv pip install virtualenv 2.创建新的虚拟环境: virtualenv myenv 3、激活虚拟环境(激活环境可以在当前环境下安装包) source myenv/bin/activate 此时,终端…...
前端调试HTTP状态码
1xx(信息类状态码) 这类状态码表示临时响应,需要客户端继续处理请求。 100 Continue 服务器已收到请求的初始部分,客户端应继续发送剩余部分。 2xx(成功类状态码) 表示请求已成功被服务器接收、理解并处…...