用Ai-WB2开发板做智能家居全彩LED小夜灯
大家是不是经常看到各种彩色的小灯,bingbing的五颜六色很吸引人。今天用Ai-WB2开发板做了一个能加入HA的全彩LED小夜灯,来看看主要的教程:
连接WiFi
先对Ai-Thinker-WB2/applications/protocols/mqtt/tcp/例程进行编译,编译成功后,烧录到板子上面去。
上电之后先确认板子有没有连上WiFi,这个在路由器后台可以看到,之后在mqtt服务器后天查看WB2是不是有连接上MQTT服务器,没连上!为啥?哦,忘了改代码里面的MQTT服务器IP了。(这里服务器地址不包含“mqtt://”的前缀,只是纯IP地址)
再次编译上传,从mqtt服务器后台可以看到WB2连上mqtt服务器了。
这里用的是emqx的开源服务器,可以在服务器里面看到有订阅一个主题,尝试向这个主题发送一个信息,然后用调试器看WB2输出。
这里顺带一提默认波特率是115200,烧录器默认的波特率是2000000,要改。
从WB2串口输出,发现WB2收到的mqtt是在一个看不懂的函数里面执行的,里面执行的代码就是把收到的主题和信息打印出来,顺带把订阅和发送的函数也找到了。
远程点亮LED
那就在处理信息这里改,改成判断收到的信息是不是“ON”或者“OFF”,如果是,那就开启或关闭LED(这里的判断,出了很多问题,在妖哥的帮助下,抄了一个arduino的代码才成功判断)。
因为要LED亮起来,程式到这里也就加上了Ai-Thinker-WB2/applications/get-started/blink/里面的闪灯代码。
加上pwm调整亮度
光亮起来,明显是不够的,明显还需要加上一个pwm程式来调节LED的亮度,这里就把blink里面的代码删除,换成Ai-Thinker-WB2/applications/peripherals/demo_pwm/里面的代码,这里面的代码正好是控制那个板载LED的RGB。不过我嫌pwm的代码太繁琐,就给它封装了一个RGB.h库丢那里让我引用就可以了,库里面就一个函数:RGB(R,G,B,BL),这个函数有4个参数,分辨是颜色参数的RGB的值和亮度值。
但是新的问题来了,mqtt收到的信息是字符串,但是RGB需要的参数是数值,比如收到的信息是“255,0,0”,需要分割成255,0,0三个数值。
在网上找了一大圈,最后用了个笨方法把收到的信息进行历遍分解,这样代码就很长很不好看,不过后面在群友的帮助下,用了个函数分解出来了。
到现在为止,已经可以用mqtt方式无线控制LED的颜色、亮度和开关了。
不过这样还是有个问题,就是在断电重新上电之后LED的颜色、亮度和开关状态都会被重置,需要有个地方储存这些参数。
存储数据到flash
在WB2上电后还没有连上WiFi和mqtt服务器的这段时间,没有接收到参数,不会亮的。
所以需要把数据存在WB2上,然后就找到了Ai-Thinker-WB2/applications/storage/easyflash/这个demo,把这个demo改一下也加入到我们的代码中来。
然后设定程式,启动的时候从WB2flash中读取出数据,再去连接WiFi和mqtt,也需要在每次收到命令时将数据存到flash里面。
总结
制作过程的全过程大致就是这样了,总结一下代码流程:
上电--->读取flash--->点亮LED--->连接WiFi和mqtt--->订阅设置主题--->处理收到信息--->更新LED状态--->上传LED状态--->保存LED状态到flash
看看演示效果
玩过HA的都知道设备一旦加入了HA,那么它就具有巨大的可玩性,即使只是一个LED。
这是亮度调节
这是颜色调节
可以直接输入参数
- |
- +1 赞 0
- 收藏
- 评论 0
本文由雪飘梦飞转载自安信可科技公众号,原文标题为:用Ai-WB2开发板做智能家居全彩LED小夜灯,本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。
相关推荐
Ra-09系列开发板入门教程,标准LoRaWAN协议对接国外 TTN LoRaWAN 开源服务器
本文章将说明如何在TTN中创建应用与节点设备,配置安信可Ra-09模块连接至TTN服务,实现数据发送与接收。
设计经验 发布时间 : 2024-11-19
【经验】Ai-WB2系列模组AT固件使用教程
Ai-WB2系列模组AT固件使用教程:1.准备工作需要准备的软硬件:Ai-WB2系列模组或者开发板,Type-C数据线,安信可透传云服务器,连接为http://tt.ai-thinker.com/ttcloud2.连接路由器等。
设计经验 发布时间 : 2023-02-03
Ai-BS21系列烧录指导——开发板or模组
本篇以Ai-BS21-32S_Kit为例指导烧录固件,这是由深圳市安信可科技有限公司开发的蓝牙星闪开发板。该模块核心处理器芯片Hi2821是一款高集成2.4GHzSoCBLE&SLE芯片,支持BLE5.4/SLE1.0,集成RF电路,RF包含功率放大器PA、低噪声放大器、TX/RXSwitch、集成电源管理等模块,支持1M/2M/4M3种带宽,最大支持12Mbit/s速率。
设计经验 发布时间 : 2024-06-24
安信可科技(Ai-Thinker)物联网专用模组&天线选型指南
目录- LoRa product Radar product WiFi+Bluetooth products 2.4G Series Module GPS Series Module UWB & 4G series module GPRS series module Offline Voice Module Series Antenna
型号- RA-01SH,PB-02-KIT,RTL8720 SERIES,AI-WB1,AI-WB2,AI-WB2-M1,HI-07S-KIT,TB-02-KIT,AI-WB2-12F-KIT,AI-WB2-13-KIT,AI-WB2-13U,AI-WB2-01S,A9,SX1268,RA-01SC,TG-02-KIT,PB SERIES,RTL8710BX SERIES,GPS SERIES,AI-WB2-01M,VC-01-KIT,HI-12F,TB SERIES,HI-12F-KIT,BW16,AI-WB2 SERIES,BW15,BW14,TG-12F-KIT,BW12,RTL8710BX,A9G,HI SERIES,AI-WB2-12S,PB-03,SX126X,AI-WB1-32S,HI-07S,HI-07SL-KIT,PB-01,PB-02,RG-02,AI-WB1-32S-KIT,RTL8720DN,AI-WB2-12F,TG-01M,AI-WB1SERIES,NF-05,NF-02-PA,NF-04,NF-03,BW16-KIT,NF-01-S,SX127X,TB-03F-KIT,LLCC68,TG-02,AI-WB2-07S,NF-01-N,NF-02-PE,AI-WB1-32S-CAM,GP-02-KIT,AI-WB2-M1-I,TG-02M-KIT,TG-02M,RA-08-KIT,GP-01,GP-02,CA-01-KITC,CA-01,2.4G SERIES,AI-WB2-13,PB-03F,PB-03M,TG SERIES,TB-04-KIT,TB-05,GPRS SERIES,TB-04,TG-02F,TB-02,RTL8720DN SERIES,TG-02F-KIT,4G SERIES,PB-03M-KIT,AI-WB2-32S-KIT,BU01,RA-01,PB-03-KIT,ESP32-G,RTL8720,RA-08H,NF-04-MI,VC-02-KIT,NF-05-S,RA-01S,HI-12FL,RA-01H,HI-07SL,AI-WB2-32S,RA-01SCH,PB-01-KIT,RTL8720CF,TG-01M-KIT,TG-12F,AI-WB1-A1S,AI-WB1-12F,TB-03F,BW15-KIT,GPRS,UWB SERIES,GP-01-KIT,AI-WB1-12F-KIT,NODEMCU-BU01,RA-08H-KIT,RD-01,RA-02,RTL8720CF SERIES,RA-08,VC-02,VC-01,HI-12FL-KIT,PB-03F-KIT
低能耗、低时延、快速度,星闪开发板Ai-BS21-32S-Kit更多场景应用,邀您一起来探索!
万众期待的星闪开发板上架了!Ai-BS21-32S-Kit 低延迟,高效率!话不多说!先回顾下基本参数信息。
产品 发布时间 : 2024-06-23
零基础开发小安派-Eyes-S1【入门篇】——工程文件架构
AiPi-Eyes-S1是安信可开源团队为Ai-M61-32S模组设计的开发板,支持WiFi6和BLE5.3,具备丰富的外设接口。开发板集成了多种接口,包括SPI屏幕、DVP摄像头、ES8388音频编解码器,并预留TF卡座和USB接口。开发资源包括入门教程、工程文件说明和烧录配置文件,适合初学者快速上手。
设计经验 发布时间 : 2024-11-15
安信可WiFi+BLE蓝牙双模模组Ai-WB2系列:高性价比物联网解决方案
安信可Ai-WB2系列模组支持Wi-Fi 802.11b/g/n协议和BLE 5.0协议,集成Wi-Fi、传统蓝牙和低功耗蓝牙功能。且经过行业“双85”测试,产品可靠性稳定性很强,可广泛应用于物联网(IoT)、移动设备、可穿戴电子设备、智能家居等领域。
器件选型 发布时间 : 2024-09-06
安信可WIFI+蓝牙模组Ai-WB2系列重新定义无线通信模组,简化用户端操作,配网成功率高达95%以上
安信可推出的Ai-WB2系列模组集成Wi-Fi&BT(蓝牙)于一体,搭载BL602芯片作为核心处理器,支持Wi-Fi 802.11b/g/n协议和BLE 5.0协议。智能家居、大小家电、工业自动化、监控设备、无线遥控、智能穿戴....各类终端都可通过Ai-WB2系列模组实现互联互通。
原厂动态 发布时间 : 2023-03-31
【外设移植】基于AI-WB2-32S开发板的SG90舵机控制案例
介绍Ai-WB2模组驱动舵机控制(SG90)的技术要求和方案。
应用方案 发布时间 : 2024-11-05
打卡智能家居之旅(5):Ai-WB2 使用HomeAssistant-C库接入HomeAssistant
之前所有写的《智能家居之旅》帖子代码都是基于Ai-M61来开发的,不少大佬跟我反馈说:Ai-M61/62只用来连接MQTT太浪费资源了,Ai-WB2更具性价比!我觉得有道理,所以昨天就把HomeAssistant-C 给做了一次大改,提升了耦合性,目前仓库的master分支也可以支持Ai-WB2了,现在,跟着我来试试吧!
设计经验 发布时间 : 2024-07-22
高性能开发板Ai-M61-32S-Kit助力Wi-Fi6+BLE5.3模组
Ai-M61-32S-Kit是针对Ai-M61-32S模组设计的开发板。Ai-M61-32S是由深圳市安信可科技有限公司开发的Wi-Fi6+BLE5.3模组,该模组搭载BL618芯片作为核心处理器,支持Wi-Fi 802.11b/g/n/ax协议和BLE协议,支持Thread协议。
产品 发布时间 : 2024-06-22
BU03 UWB室内定位测距模块,配套测试说明
安信可推出了BU03定位模组,采用DW3000芯片,体积小巧,可集成至主板。BU03_Kit开发板使用STM32F103主控芯片,支持SPI连接和STM32 ST-LINK Utility烧录。测试时,需至少两个开发板,通过AT指令设置基站和标签,进行测距和定位测试。开发板提供USB和TTL接口,可配合上位机获取位置数据。
设计经验 发布时间 : 2024-10-31
星闪开发板or模组烧录指导
Ai-BS21-32S_Kit是由安信可科技开发的蓝牙星闪开发板。该模块核心处理器芯片Hi2821是一款高集成2.4GHzSoCBLE&SLE芯片,支持BLE5.4/SLE1.0,集成RF电路,RF包含功率放大器PA、低噪声放大器、TX/RXSwitch、集成电源管理等模块,支持1M/2M/4M3种带宽,最大支持12Mbit/s速率。
设计经验 发布时间 : 2024-06-21
【经验】Ai-WB2模组基于TCP的MQTT连接服务器使用示例
1、需要准备的软硬件:Ai-WB2系列模组或者开发板,Type-C数据线2、连接路由器:先保证模块或者开发板上电打印ready,2.发送AT+CWMODE=1;AT+CWJAP=“WIFI名称”,“WIFI密码”。
设计经验 发布时间 : 2023-01-16
BW16 Combo-AT指令的开发板和旧版AT指令的开发板不通用吗
指令格式不同,不通用
技术问答 发布时间 : 2024-09-30
电子商城
现货市场
服务
可加工PCB层数:1-30层;板材类型:FR4板/铝基板/铜基板/刚扰结合板/FPC板/高精密板/Rogers高频板;成品尺寸:5*5mm~53*84cm;板厚:0.1~5.0mm。
最小起订量: 1 提交需求>
可加工PCB板层数:0-60层,板材类型:高频板/高速板/高频混压板/盲埋孔板/HDI板/无卤素板/厚铜板/刚柔结合板;最大加工尺寸:622*1200MM;板厚:0.05-8.0MM;铜厚:0.33-30OZ;
最小起订量: 1 提交需求>
登录 | 立即注册
提交评论