搭建个人智能家居 4 -WS2812B-RGB灯

搭建个人智能家居 4 - WS2812B-RGB灯

  • 前言
  • 说明
  • ESPHome
  • HomeAssistant

前言

上一篇文章我们已经完成了第一个外设的添加(一个LED灯),今天接着来“壮大”这个系统,添加第二个外设“RGB灯”。
环境搭建可以回顾前面的文章。前文回顾:
搭建个人智能家居 开篇(搭建Home Assistant)
搭建个人智能家居 2 -安装ESPHome
搭建个人智能家居 3 -第一个设备“点灯”

在这里插入图片描述

说明

本次添加外设接着上一篇文章创建的Dome,在后面添加相应的驱动代码。会用到WS2812RGB灯,5v电源一个。
本次依然分成两步:
第一步是ESPHome编写yaml文件并烧录到ESP32开发板
第二步是HomeAssistant添加控制组件

ESPHome

打开上一篇文章里新建的工程,找到工程的存放位置,然后在存放工程的文件夹输入启动esphome的指令(可参考“搭建个人智能家居 2 -安装ESPHome”)

esphome dashboard xxx/		/*xxx用你创建的工程文件夹名字替代,上一篇创建的名字为LED*/

启动后打开浏览器输入

http://localhost:6052/

进入esphome的控制页面
在这里插入图片描述
进去后可以看到上一篇文章创建的二进制LED工程,我们这一次不用新建了,直接点击编辑上一次的工程,把本次添加WS2812RGB等的代码放进去即可。
在这里插入图片描述
在这里插入图片描述
点进去后可以看到上一篇文章写的二进制LED的代码,由于WS2812RGB也是属于Light组件,所以我们在Light组件下再创建一个“neopixelbus” 平台、“WS2812”芯片、名为"RGB_LED"的RGB设备,完整代码如下:

#Bin_LED    
light:- platform: binaryname: "led"output: bin_led#WS2812_RGB- platform: neopixelbustype: GRBvariant: WS2812pin: GPIO4num_leds: 25name: "RGB_LED"output:- id: bin_ledplatform: gpiopin: GPIO2 

说明:
WS2812RGB灯属于Light组件,一个yaml文件中不能添加多个相同组件,所以直接在上一篇文章的Bin_LED的定义后面接着写即可。
本次实验用的IO口是GPIO4,可自行更改。
num_leds是控制的灯数,由于本次实验用的是一个25颗灯珠的WS2812RGB灯板,所以填了25。
name随意。

编辑好yaml文件后点击保存并编译生成固件。
在这里插入图片描述
在这里插入图片描述

生成固件后通过“flash download tools”烧录,烧录步骤这边不过多赘述
(如果ESP2开发板就只用来做这个项目的可以用OTA在线烧录,由于这边使用的这块ESP32的开发板经常要用在其他地方,上一篇文章烧录的程序早就被刷掉了,所以这边用离线的烧录方法)。
烧录完成后打开串口助手看一下返回日志,wifi是否连上了。
在这里插入图片描述

HomeAssistant

接上节,检查确认wifi连上后,启动HomeAssistant。
启动HomeAssistant的步骤不做赘述(可参考“搭建个人智能家居 开篇(搭建Home Assistant)”)
在这里插入图片描述
启动完后在浏览器打开启动页面里的IPv4的地址,进入HomeAssistan控制面板
在这里插入图片描述
由于上一篇文章做Bin_LED实验的时候就已经添加了这块ESP32开发板设备,所以重新进入HomeAssistant的控制页面刷新后就自动把这块ESP32这个设备里的实体刷新出来了,包括了我们刚才在yaml文件里添加的WS2812RGB灯。
在这里插入图片描述
实体的名称组成:工程名称+yaml文件里创建的实体name
所以上图名称为BIN_LED RGB_LED这个实体就是我们刚才在yaml文件里添加的WS2812RGB。
现在给ESP32开发板断电,连接WS2812RGB灯板。
在这里插入图片描述

上电!
在这里插入图片描述
在这里插入图片描述
这个实体灯光调节的方式还比较多,有固定颜色还有调色板。
WS2812RGB灯设备添加完成。
移动端安装了HomeAssistant的APP通过局域网登录电脑端注册时的账号也是可以控制的,感兴趣的可以去试一下。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/813231.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AutoCAD 2024 安装注册教程

前言 大家好,我是梁国庆。 本篇分享的安装包是 AutoCAD 的全新版本——AutoCAD 2024,下文安装教程中简称 AutoCAD。 时间:2024年4月8日。 获取 AutoCAD 安装包 我已将本篇所使用的安装包打包上传至百度云,扫描下方二维码关注…

Linux 内核学习(1) --- 时钟子系统

标题 时钟系统说明时钟树Clock Provider时钟通用数据结构clock_device 的注册clock_provider DTS配置和注册clock consumer时钟系统总结 时钟系统说明 时钟就是 SoC 中的脉搏,由它来控制各个部件按各自的节奏跳动。比如,CPU主频设置,串口的波…

windows本地运行dreamtalk踩坑总结

dreamtalk是一个语音图片转视频的一个工具,就是给一段语音加一个头像图片,然后生成一段头像跟语音对口型的视频,其实还是很有意思的,最近阿里发布了一个类似的模型,但是还没开源,从展示视频看,阿…

itext7 pdf转图片

https://github.com/thombrink/itext7.pdfimage 新建asp.net core8项目&#xff0c;安装itext7和system.drawing.common 引入itext.pdfimage核心代码 imageListener下有一段不安全的代码 unsafe{for (int y 0; y < image.Height; y){byte* ptrMask (byte*)bitsMask.Scan…

Centos 7.9.2009 下 Gitlab 完全卸载

一、linux版本&#xff1a;lsb_release -a 二、GtiLab 版本 # 查看gitlab的版本号 cat /opt/gitlab/embedded/service/gitlab-rails/VERSION 三、开始卸载 3.1&#xff0c;停止Gitlab 相关服务 # 停止所有GitLab相关服务&#xff1a; sudo gitlab-ctl stop# 移除GitLab包…

【2024年MathorCup数模竞赛】C题完整解析(代码与技术文档)

C题第一问 1 数据预处理2 问题一2.1基于混合ARIMA-LSTM预测模型的未来30天货量预测2.1.1 自适应混合ARIMA-LSTM混合预测模型的建立2.1.2 自适应混合ARIMA-LSTM混合预测模型的求解 2.2 基于混合ARIMA-LSTM预测模型与模糊修正的未来30天每小时货量预测 代码分享 目前已经完成C题数…

如何利用python机器学习解决空间模拟与时间预测问题

徐老师&#xff1a;副教授&#xff1a;长期从事定量遥感、遥感数据同化、地表水热通量转化等相关领域的研究&#xff0c;发表多篇相关领域核心期刊论文&#xff0c;具有丰富的实践技术经验。 专题一、机器学习原理与概述 了解机器学习的发展历史、计算原理、基本定义&#xf…

vue快速入门(二十一)计算属性

注释很详细&#xff0c;直接上代码 上一篇 新增内容 计算属性的基本应用 源码 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.…

Springboot+Vue项目-基于Java+MySQL的社区团购系统(附源码+演示视频+LW)

大家好&#xff01;我是程序猿老A&#xff0c;感谢您阅读本文&#xff0c;欢迎一键三连哦。 &#x1f49e;当前专栏&#xff1a;Java毕业设计 精彩专栏推荐&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb; &#x1f380; Python毕业设计 &…

酷得智能 无人机方案开发

东莞市酷得智能科技有限公司&#xff0c;是一家专业的技术服务公司&#xff0c;致力于为各类智能硬件提供高效、稳定、安全的底层驱动解决方案。拥有一支经验丰富、技术精湛的团队&#xff0c;能够为客户提供全方位的底层驱动开发服务。 无人机功能介绍&#xff1a; 1、自动跟…

【前缀合】Leetcode 连续数组

题目解析 525. 连续数组 寻找一个子数组&#xff0c;这个子数组中包含相同数目的0和1&#xff0c;但是这个子数组需要最长的 算法讲解 只需在[0,i]寻找一段区间使得这一段区间的和也等于sum即可 细节问题&#xff1a;1. 这里的哈希表的value存的是下标&#xff0c;因为需要找…

【Java】第十五届蓝桥杯JavaB组第一道填空题

&#xff03;【Java】第十五届蓝桥杯JavaB组第一道填空题 大家好 我是寸铁&#x1f44a; 总结了一篇【Java】第十五届蓝桥杯JavaB组第一道填空题文章 喜欢的小伙伴可以点点关注 &#x1f49d; Java B组 第一道填空题题解如下:

科研学习|科研软件——SPSS统计作图教程:多组折线图(≥3个变量)

一、问题与数据 研究者想研究45-65岁不同性别人群中静坐时长和血胆固醇水平的关系,分别招募50名男性和女性(gender)询问其每天静坐时长(time,分钟),并检测其血液中胆固醇水平(cholesterol, mmol/L),部分数据如图1。研究者该如何绘图展示这两者间的关系呢? 二、问题…

Traefik与传统的Edge Router有何不同?

在云原生时代&#xff0c;传统的网络架构和现代的解决方案之间存在明显的差异。特别是在处理网络流量和路由方面&#xff0c;传统的 Edge Router 与像 Traefik 这样的现代反向代理和负载均衡器相比&#xff0c;展现出许多不同的特点。本文将深入探讨 Traefik 与传统 Edge Route…

YOLO-World: Real-Time Open-Vocabulary Object Detection 简介+安装+运行+训练(持续更新)

前言 YOLO_WORLD太牛了&#xff01;&#xff01;众所周知&#xff0c;传统是视觉目标检测一旦训练好后&#xff0c;如果我们需要增加新的识别目标的话&#xff0c;必须得重新训练模型。在生产中如果经常要新增检测目标&#xff0c;对时效性影响很大&#xff0c;而且随着数据量…

.vue文件引入路径正确,但报错

问题描述 使用Vue挂载组件时&#xff0c;导入路径正确&#xff0c;但是一直提示 Already included file name ‘绝对路径/index.vue’ differs from file name ‘绝对路径/Index. vue’ only in casing. The file is in the program because: Imported via ‘./components/ind…

O2OA开发平台如何查看数据表结构?

在访问后端api地址&#xff0c;页面最下方有列示平台的各个服务&#xff0c;点击进入可查看具体的表内容 后端api地址&#xff1a; http://{hostIP}/x_program_center/jest/list.html 其中&#xff1a;{hostIP}为中心服务器所在域名或者IP地址 如下图&#xff1a;

25、链表-环形链表

思路&#xff1a; 这道题就是判断链表中是否有环&#xff0c;首先使用集合肯定可以快速地解决&#xff0c;比如通过一个set集合遍历&#xff0c;如果遍历过程中有节点在set中已经存在那么说明存在环。 第二种方式就是通过快慢指针方式寻找环。具体思路就是一个慢指针每次直走一…

博客系统项目测试(selenium+Junit5)

在做完博客系统项目之后&#xff0c;需要对项目的功能、接口进行测试&#xff0c;利用测试的工具&#xff1a;selenium以及Java的单元测试工具Junit进行测试&#xff0c;下面式测试的思维导图&#xff0c;列出该项目需要测试的所有测试用例&#xff1a; 测试结果&#xff08;全…

Composer 安装与配置

Composer 是 PHP 领域中非常重要的一个工具&#xff0c;它作为 PHP 的依赖管理工具&#xff0c;帮助开发者定义、管理、安装项目所依赖的外部库。Composer 的出现极大地简化了 PHP 项目的构建和管理过程&#xff0c;使得开发者可以更加专注于代码的编写和功能的实现。 Compose…