当前位置: 首页 > article >正文

立创开源:基于ESP8266与BME680的HA智能环境光立方DIY全攻略

立创开源基于ESP8266与BME680的HA智能环境光立方DIY全攻略最近在捣鼓智能家居想做一个既能监测室内环境又能当氛围灯的小玩意儿。在网上找了一圈发现立创开源社区的这个项目正合我意——一个基于ESP8266的可充电式智能设备集成了BME680环境传感器和WS2812 RGB灯带还能无缝接入Home Assistant。我自己跟着做了一遍过程挺有意思也踩了一些坑。今天我就把这个项目的完整DIY过程从硬件焊接、软件配置到接入智能家居平台手把手地分享给大家希望能帮你少走弯路。这个项目最终成品是一个“智能环境光立方”。它能实时监测你房间的温度、湿度、气压和空气质量VOC并通过多彩的LED灯珠显示出来或者根据你的心情变换灯光效果。所有数据和控制都能在Home Assistant里看到和操作非常方便。无论你是刚接触ESP8266的创客还是想给家里添置一个自制智能设备的玩家这篇教程都能带你一步步完成。1. 硬件准备与焊接要点工欲善其事必先利其器。在开始写代码之前咱们得先把硬件搞定。这个项目的硬件主要分为三块主控板、铝基板灯面板和BME680传感器板。我会重点讲主控板上几个容易出问题的地方。1.1 核心主控板焊接与调试主控板是整个设备的大脑集成了ESP8266主控、IP5306电源管理芯片等核心部件。焊接和调试这一步至关重要特别是电源部分搞不好会烧芯片或者无法工作。首先重中之重先焊电源部分我强烈建议你拿到PCB后先别急着焊ESP8266和其他芯片。第一步应该用热风枪或者加热台单独把IP5306-I2C电源管理芯片及其周边电路电感、电容等焊接好。注意这是一个非常重要的安全操作。原文作者特别强调错误的IP5306-I2C寄存器配置可能导致后级MCU也就是ESP8266断电甚至损坏。所以我们必须先确保电源部分工作正常再焊接MCU。电源部分调试步骤焊接与初步测试焊好IP5306周边电路后先别接电池。用万用表测量IP5306的5V输出引脚以及后级降压芯片TLV62569输出的3.3V是否正常。只有这两个电压都对了才能进行下一步。I2C调试IP5306为了安全地配置IP5306原文提供了一个巧妙的办法。BME680传感器也是通过I2C通信的我们可以先不焊ESP8266而是在BME680的预留焊盘上外接一个I2C调试器比如USB转I2C模块、或者另一块单片机来读写IP5306的寄存器。这样即使配置出错也不会影响到还没焊接的ESP8266。关于电池电压测量板子上用了ADS1115这个ADC芯片来测量电池电压。这里有个细节ADS1115需要5V供电才能正常工作。为了实现电源隔离设计上使用了ISO1541 I2C隔离芯片。如果你不需要测量电池电压可以去掉这部分电路直接给ADS1115供3.3V也行。关键元器件选择电感IP5306旁边的功率电感是关键。如果你需要自己更换务必确保电感的额定电流大于4.5A。否则当WS2812灯珠全亮高亮度时电流很大电感可能会啸叫、产生过大压降甚至导致ESP8266死机重启。自恢复保险丝充电时板子上最热的部分往往是自恢复保险丝。为了减少发热尽量选择阻值偏小的型号。正常充电10分钟后温度应该会稳定下来。TYPE-C旁的开关这个开关连接着IP5306的按键检测脚和ESP8266的唤醒引脚用于控制开关机别忘了焊上。固定孔板上的固定孔默认规格可能不太好配铜柱你可以将其更换为更常见的M3规格的孔。1.2 灯面板与传感器板铝基板灯面板灯板用的是WS2812 RGB灯珠焊接在铝基板上是为了更好的散热。但铝基板有个特性它是导电的所以千万不要用普通的排针来连接铝基板和主控板因为排针穿过铝基板上的孔时会直接导致短路。正确的做法是使用“pogopin”弹簧探针来接触。如果你实在想用排针那么灯板就不能用铝基板得换成普通的双层FR4 PCB。不过说实话根据我的实测WS2812灯珠在一般亮度下发热并不大不用铝基板用普通PCB也完全没问题还能省去处理导电问题的麻烦。BME680传感器板这个小板子就是用来焊接BME680传感器的。打样制作时需要注意板材厚度选择0.8mm。工艺备注一定要在订单备注里写上“【不做半孔工艺】”。DRC检查下单时可以不检查DRC设计规则检查以加快进度。2. 软件环境搭建与固件烧录硬件准备妥当后咱们就来搞定软件。这个项目使用ESPHome来配置和编译固件它极大地简化了ESP8266/ESP32的开发流程让你能用YAML配置文件来定义设备功能无需编写大量C代码。2.1 安装ESPHomeESPHome推荐通过Python的pip包管理器安装这是最方便的方法。确保你的电脑已经安装了Python建议Python 3.7或以上版本。打开命令行终端Windows上是CMD或PowerShellMac/Linux上是Terminal。输入以下命令安装ESPHomepip install esphome安装完成后你可以通过运行esphome --help来验证是否安装成功。2.2 准备并编译固件项目作者已经提供了写好的配置文件test1.yaml。你需要下载项目附件找到这个文件。在命令行中切换到test1.yaml文件所在的目录。运行以下命令来编译并将固件烧录到设备esphome run test1.yaml首次运行会提示你选择操作选择upload烧录。ESPHome会自动下载编译工具链和库文件这可能需要一些时间。2.3 进入下载模式与烧录ESP8266需要通过串口烧录程序需要手动让它进入下载模式。连接设备用USB转TTL串口模块将电脑和主控板上的串口引脚TX, RX, GND连接好并给主控板供电可以接上电池。进入下载模式这是一个经典操作先按住主控板上的REST复位键不放。接着再按住BOOT或FLASH键不放。然后松开REST键。最后松开BOOT键。 此时ESP8266就进入了等待烧录的状态。开始烧录在命令行中确认串口号如COM3或/dev/ttyUSB0ESPHome会自动检测并开始烧录。看到进度条走完并提示成功即可。3. 配置文件详解与关键代码烧录的固件行为完全由test1.yaml配置文件决定。理解这个文件你就能自定义设备的功能。我们来拆解其中最核心的几个部分。3.1 网络连接与MQTT配置设备需要联网并将数据上报给Home Assistant。这里使用了MQTT协议它比ESPHome原生API更适合跨网络或复杂网络环境比如设备在校园网HA在公网。mqtt: broker: 172.18.81.102 # 你的MQTT服务器IP地址 port: 1883 # MQTT端口默认是1883 username: user # MQTT用户名如果服务器需要认证 password: ...123456 # MQTT密码你需要修改的地方broker改成你部署的MQTT服务器的实际IP地址。如果Home Assistant和ESP8266在同一个局域网可以填Home Assistant的IP。username和password根据你的MQTT服务器设置来修改。提示如果你还没有MQTT服务器可以在安装Home Assistant时一并安装Mosquitto MQTT broker插件这样broker就可以填Home Assistant的IP。3.2 I2C总线与设备扫描BME680传感器和IP5306I2C版本都是通过I2C总线与ESP8266通信的。配置I2C是让传感器工作的第一步。i2c: sda: GPIO4 # I2C数据线连接的ESP8266引脚 scl: GPIO5 # I2C时钟线连接的ESP8266引脚 id: my_i2c_bus scan: True # 启用I2C设备扫描调试时非常有用sda和scl这两个引脚号必须根据你实际的PCB布线来填写。示例中是GPIO4和GPIO5请务必核对原理图。scan: True这个功能太实用了。设备启动时它会在日志中打印出所有挂在I2C总线上的设备地址。如果你发现BME680没数据首先就来这里看看日志确认ESP8266是否找到了设备BME680的I2C地址通常是0x76或0x77。3.3 理解IP5306-I2C的寄存器配置进阶在提供的C代码注释中详细列出了IP5306-I2C芯片的各个寄存器功能。这部分属于进阶内容但了解它能帮你更好地控制电源管理比如设置充电截止电压、配置按键行为等。寄存器分类简介系统控制寄存器 (0x00, 0x01, 0x02)控制芯片的全局功能如开启/关闭升压输出、使能充电、配置按键长按时间、轻载自动关机时间等。充电控制寄存器 (0x03-0x06)精细管理充电过程包括设置电池充满的电压、充电截止电流、恒流恒压充电参数等。修改这些寄存器需要格外小心错误的电压/电流设置可能损坏电池。状态读取寄存器 (0x07-0x0A)用于读取芯片当前状态比如是否在充电、电池是否已满、当前负载轻重、以及按键被按下的类型短按、长按、双击。重要提醒正如在硬件部分强调的配置这些寄存器有风险。建议先通过外接I2C调试器在MCU未上电的情况下进行读写测试找到最优配置后再将配置代码集成到固件中。不要直接在已焊接MCU的板子上盲目修改寄存器。4. 接入Home Assistant与使用设备烧录好固件并上电后它就会自动连接你配置的Wi-Fi和MQTT服务器。接下来就是在Home Assistant中把它添加进来。4.1 安装Home Assistant如果你还没有Home Assistant推荐使用Docker安装这是最灵活方便的方式。在你的服务器可以是树莓派、NAS、或者一台常开机的电脑上安装Docker。运行一条Docker命令即可启动Home Assistant容器。具体命令可以在Home Assistant官网找到它会自动下载镜像并运行。启动后通过浏览器访问你服务器的IP地址加上端口号8123例如http://192.168.1.100:8123就能进入Home Assistant的初始化界面。4.2 发现与配置设备MQTT集成在Home Assistant的“配置” - “集成”中点击“添加集成”搜索并添加“MQTT”。配置MQTT连接填写你在test1.yaml中设置的MQTT服务器地址、端口、用户名和密码。保存后Home Assistant就会连接到MQTT服务器。自动发现如果一切配置正确ESPHome设备通常支持MQTT自动发现。稍等片刻Home Assistant的仪表盘上应该就会自动出现一个新的设备里面包含了ESP8266的所有传感器实体温度、湿度、气压、VOC和灯光实体。创建仪表盘你可以将这些实体添加到Home Assistant的概览页面上创建卡片来显示环境数据并添加一个灯光卡片来控制WS2812灯带的颜色、亮度、效果模式。至此你的智能环境光立方就全部制作完成了它现在是一个独立的、可充电的智能设备既能为你提供实时的环境监测数据又能营造丰富的灯光氛围所有控制尽在Home Assistant的掌握之中。你可以把它放在书桌、床头或者客厅成为你智能家居生态中一个兼具实用性和趣味性的自制节点。如果在制作过程中遇到问题不妨回头检查一下电源焊接、I2C连线以及配置文件中的IP地址和引脚号这些都是最容易出错的环节。祝你制作成功玩得开心

相关文章:

立创开源:基于ESP8266与BME680的HA智能环境光立方DIY全攻略

立创开源:基于ESP8266与BME680的HA智能环境光立方DIY全攻略 最近在捣鼓智能家居,想做一个既能监测室内环境,又能当氛围灯的小玩意儿。在网上找了一圈,发现立创开源社区的这个项目正合我意——一个基于ESP8266的可充电式智能设备&a…...

快马平台五分钟速成:用clowdbot快速搭建你的第一个聊天机器人原型

最近在尝试快速验证一个聊天机器人的想法,正好了解到一个叫clowdbot的框架,它主打基于云服务的快速搭建。我的目标很简单:在最短时间内,搞出一个能对话、能回答几个预设问题、回复还像那么回事儿的原型。如果按照传统流程&#xf…...

Z-Image-GGUF模型推理性能测试:不同GPU配置下的速度对比

Z-Image-GGUF模型推理性能测试:不同GPU配置下的速度对比 最近在折腾图像生成模型,特别是那些能本地部署的轻量级版本,发现Z-Image-GGUF这个模型挺有意思。它主打的就是一个“小而美”,用GGUF格式把模型压缩得不错,对显…...

Hotkey Detective:Windows热键冲突的智能诊断解决方案

Hotkey Detective:Windows热键冲突的智能诊断解决方案 【免费下载链接】hotkey-detective A small program for investigating stolen hotkeys under Windows 8 项目地址: https://gitcode.com/gh_mirrors/ho/hotkey-detective 一、问题:被劫持的…...

nullclaw多agents设置指南

nullclaw是最小的OpenClaw,却能支持多agents,其多智能体协作机制通过配置驱动的代理定义与任务委派实现,适用于构建复杂的多角色AI系统。以下是具体的支持细节与实现方式: 一、多agents支持的核心依据 nullclaw的多agents功能是其自治AI助手…...

Nanbeige4.1-3B多场景落地:法律合同审查助手——条款冲突识别+修订建议生成

Nanbeige4.1-3B多场景落地:法律合同审查助手——条款冲突识别修订建议生成 1. 引言:当法律文书遇上AI助手 想象一下,你手头有一份长达50页的商业合作协议,里面密密麻麻的条款让你看得头晕眼花。更头疼的是,你隐约感觉…...

WAN2.2文生视频零基础教程:5分钟用中文提示词生成你的第一个AI视频

WAN2.2文生视频零基础教程:5分钟用中文提示词生成你的第一个AI视频 想不想试试,只用几句话就让电脑帮你拍一段视频?这听起来像魔法,但现在通过WAN2.2这个工具,真的可以轻松实现。你不需要懂复杂的剪辑软件&#xff0c…...

Ostrakon-VL-8B MySQL数据可视化:将图片分析结果转化为商业洞察

Ostrakon-VL-8B MySQL数据可视化:将图片分析结果转化为商业洞察 你有没有想过,你店铺里那些琳琅满目的商品图片,除了吸引顾客点击,还能告诉你什么秘密?比如,是不是“简约风格”的封面图点击率更高&#xf…...

5大维度彻底解决Windows热键冲突难题:从根源排查到系统优化的全流程方案

5大维度彻底解决Windows热键冲突难题:从根源排查到系统优化的全流程方案 【免费下载链接】hotkey-detective A small program for investigating stolen hotkeys under Windows 8 项目地址: https://gitcode.com/gh_mirrors/ho/hotkey-detective 一、问题溯源…...

基于TI MSPM0的AGS10 MEMS TVOC传感器I2C驱动移植与室内空气质量监测实战

基于TI MSPM0的AGS10 MEMS TVOC传感器I2C驱动移植与室内空气质量监测实战 最近在做一个室内环境监测的小项目,需要检测空气中的TVOC(总挥发性有机物)浓度,正好用上了TI的MSPM0开发板和AGS10传感器。AGS10这个传感器体积小、功耗低…...

cv_resnet50_face-reconstruction模型在Linux系统下的部署与调优

cv_resnet50_face-reconstruction模型在Linux系统下的部署与调优 1. 引言 想不想用一张普通的自拍照,就能生成精细的3D人脸模型?cv_resnet50_face-reconstruction这个模型就能做到。它基于阿里云团队开发的HRN技术,是CVPR2023收录的论文成果…...

GME多模态向量-Qwen2-VL-2B保姆级教程:从零到一的图文检索系统搭建

GME多模态向量-Qwen2-VL-2B保姆级教程:从零到一的图文检索系统搭建 1. 为什么你需要亲手搭建一个图文检索系统 想象一下这个场景:你的电脑里存了几千张产品图、设计稿、会议截图和资料图片。某天老板突然问你要“去年Q3那个蓝色包装盒的最终版设计图”…...

艺术化过滤:VideoAgentTrek Screen Filter实现屏幕内容的风格化替换

艺术化过滤:VideoAgentTrek Screen Filter实现屏幕内容的风格化替换 你有没有想过,屏幕上的遮挡或打码,可以不再是生硬的马赛克,而是一幅画、一个动态特效,甚至是一个艺术二维码?传统的屏幕内容处理&#…...

Scan2CAD:三维扫描到CAD模型的效率革命——AI驱动的建筑数字化技术突破

Scan2CAD:三维扫描到CAD模型的效率革命——AI驱动的建筑数字化技术突破 【免费下载链接】Scan2CAD [CVPR19] Dataset and code used in the research project Scan2CAD: Learning CAD Model Alignment in RGB-D Scans 项目地址: https://gitcode.com/gh_mirrors/s…...

卡证检测矫正模型开发利器:使用IDEA进行Java后端调试与优化

卡证检测矫正模型开发利器:使用IDEA进行Java后端调试与优化 你是不是也遇到过这种情况?好不容易把卡证检测矫正模型集成到Java后端服务里,结果一跑起来,要么是模型调用报错,要么是性能慢得让人抓狂,内存还…...

告别重复造轮子:用快马平台一键生成高效cnn开发模板,专注模型创新

在深度学习领域,尤其是计算机视觉任务中,卷积神经网络(CNN)无疑是基石般的存在。无论是图像分类、目标检测还是图像分割,CNN都扮演着核心角色。然而,在实际开发过程中,我们常常会陷入一种困境&a…...

保姆级教程:Ollama运行translategemma-12b-it,翻译说明书、菜单、合同图片

保姆级教程:Ollama运行translategemma-12b-it,翻译说明书、菜单、合同图片 1. 为什么你需要一个本地图文翻译助手? 想象一下这个场景:你刚拿到一份英文的产品说明书PDF,里面有几十张带文字的示意图,老板让…...

AI辅助开发实战:彻底解决conda pyaudio安装失败的终极指南

在AI辅助开发,特别是语音识别、语音合成这类项目中,pyaudio 几乎是处理实时音频流的标配库。然而,很多朋友(包括我自己)在 conda 环境下安装它时,都遭遇过令人头疼的失败。最常见的报错就是下面这个&#x…...

网盘加速工具提升下载效率的全面指南

网盘加速工具提升下载效率的全面指南 【免费下载链接】Online-disk-direct-link-download-assistant 可以获取网盘文件真实下载地址。基于【网盘直链下载助手】修改(改自6.1.4版本) ,自用,去推广,无需输入“暗号”即可…...

嵌入式设备可行吗?DeepSeek-R1低功耗部署探索

嵌入式设备可行吗?DeepSeek-R1低功耗部署探索 1. 项目简介 DeepSeek-R1-Distill-Qwen-1.5B是一个专为本地化部署优化的轻量级语言模型。这个模型基于DeepSeek-R1的蒸馏技术,将参数量压缩到15亿,同时保留了原模型强大的逻辑推理能力。 这个…...

Qwen3模型LaTeX文档智能辅助:从黑板报到学术排版

Qwen3模型LaTeX文档智能辅助:从黑板报到学术排版 写论文、做报告,最头疼的是什么?对我而言,除了实验数据,就是排版。尤其是用LaTeX,一个公式敲半天,一个表格调格式调到怀疑人生。那种从脑海里的…...

5步解决Windows HEIC缩略图难题:让苹果照片预览效率提升300%

5步解决Windows HEIC缩略图难题:让苹果照片预览效率提升300% 【免费下载链接】windows-heic-thumbnails Enable Windows Explorer to display thumbnails for HEIC files 项目地址: https://gitcode.com/gh_mirrors/wi/windows-heic-thumbnails 在数字工作流…...

1. 天空星HC32F4A0开发板驱动1.28寸圆形LCD屏实战:从软件SPI到硬件SPI的完整移植指南

天空星HC32F4A0开发板驱动1.28寸圆形LCD屏实战:从软件SPI到硬件SPI的完整移植指南 最近用天空星的HC32F4A0开发板做项目,需要驱动一块1.28寸的圆形LCD屏,屏幕驱动芯片是GC9A01。网上找的例程大多是软件模拟SPI的,虽然能用&#xf…...

网盘直链解析技术解决方案:突破下载限制的高效实践指南

网盘直链解析技术解决方案:突破下载限制的高效实践指南 【免费下载链接】Online-disk-direct-link-download-assistant 可以获取网盘文件真实下载地址。基于【网盘直链下载助手】修改(改自6.1.4版本) ,自用,去推广&…...

如何突破Mac NTFS读写限制?Nigate工具让跨平台文件管理变得简单

如何突破Mac NTFS读写限制?Nigate工具让跨平台文件管理变得简单 【免费下载链接】Free-NTFS-for-Mac Nigate,一款支持苹果芯片的Free NTFS for Mac小工具软件。NTFS R/W for macOS. Support Intel/Apple Silicon now. 项目地址: https://gitcode.com/g…...

3个核心功能解决微信单向好友检测难题

3个核心功能解决微信单向好友检测难题 【免费下载链接】WechatRealFriends 微信好友关系一键检测,基于微信ipad协议,看看有没有朋友偷偷删掉或者拉黑你 项目地址: https://gitcode.com/gh_mirrors/we/WechatRealFriends 在微信社交生态中&#xf…...

新手零基础入门:借助快马ai编程动手实现第一个待办事项应用

作为一名刚接触编程不久的新手,我最近一直在寻找一种既能动手实践,又不会因为复杂的语法和环境配置而劝退的学习方法。传统的教程要么是枯燥的理论,要么是直接扔给你一堆看不懂的代码,让人望而却步。直到我尝试了用AI来辅助编程&a…...

无人驾驶车辆的双移线轨迹跟踪仿真与联合车辆动力学仿真平台的开发

无人驾驶 carsimsimulink联合仿真 跟踪双移线轨迹打开Carsim的瞬间,仿真界面的参数密密麻麻像蚂蚁搬家。盯着屏幕上那个闪烁的光标,我突然意识到——要让这个铁盒子里的虚拟汽车跑出完美的双移线,可能比教我家猫用马桶还难。联合仿真的第一个…...

大学新生人工智能学习路线规划,非常详细收藏我这一篇就够了

1. 引言 七月来临,各省高考分数已揭榜完成。而高考的完结并不意味着学习的结束,而是新旅程的开始。对于有志于踏入IT领域的高考少年们,这个假期是开启探索IT世界的绝佳时机。作为该领域的前行者和经验前辈,我愿意为准新生们提供一…...

对26年LLM发展的一些思考与展望

01 对于 LLM 发展的一些思考 还是打算努力维持一下过年期间对于自己的思考的一些总结。说起来 25 年过年的时候想着接下来的一年要多写点,结果反向突破快要变成年更账号了。 到目前这个时间节点,个人感觉 LLM 的应用方向越来越明确了,最大的价…...