近些年来,消费者对家居的舒适性、便捷性有了一定要求。针对现阶段智能家居系统成本高、功耗大、集成度低等缺陷,涂鸦开发者记帖分析并选取合适的平台、传感器和无线组网方式,准备对智能家居系统进行升级改造,DIY一款浪漫满屋的幻彩灯带!
本系统采用涂鸦智能模组二次开发版本,综合涂鸦 Wi-Fi&Bluetooth LE 通信组网技术,以及传感器应用技术,实现家居环境的智能联网,下图为涂鸦智能 Wi-Fi&Bluetooth LE SoC NANO 主控板(BK7231N)。
一.涂鸦模组二次开发方案
涂鸦 IoT 开发平台提供一站式物联网解决方案,涵盖设备智能化、云服务、 软件开发、运营维护等各方面,助力各行业客户实现研发端、生产端、销售端、运营端全产业互联网化,整体开发周期短,成本低。
二.开发流程
创建项目,标准类目选择“照明”---“幻彩灯带”。
因为是基于对涂鸦模组的二次开发,所以下图选择“自定义方案”。
按照自己将要开发的产品和模组填写产品名称,选择对应的通信协议,配置完成后点击“创建产品”。
这里准备使用 CBU 模组开发一个可以支持幻彩灯带的产品。CBU 模组是一款 Wi-Fi&Bluetooth LE 双模模组。
根据产品想要实现的功能,选择对应功能点或自定义创建,点击“确认”。
在设备交互中选择自己喜欢的 App 界面,也可以自定义。
点击“硬件开发”,选择“TuyaOS”---“CBU Wi-Fi&Bluetooth LE 模组”(如果你使用的是其他模组,选择对应的模组即可)。
箭头①指向的“新增自定义固件”是指上传你已经开发好的产品固件。
点击箭头②指向的“ty_iot_light_app_sdk_bk7231n”,下载该模组SDK。
三.应用场景
涂鸦三明治 Wi-Fi&Bluetoohe LE SoC NANO主控板(BK7231N)采用上海博通开发的高性价比的Wi-Fi &Bluetooth LE 双模芯片 BK7231N。开发板包含 Wi-Fi 芯片BK7231N、按键、LED 指示灯、 I/O 接口、电源和USB转串口芯片等。
四.原理图及PCB
涂鸦三明治 Wi-Fi&Bluetooth LE SoC NANO 主控板(BK7231N)的原理图如下所示:
涂鸦三明治 Wi-Fi&Bluetooth LE SoC NANO 主控板(BK7231N) 的 PCB 如下图,顶层:
底层:
五.主控板接口说明
涂鸦三明治 Wi-Fi&Bluetooth LE NANO 主控板(BK7231N)内置 USB 转串口芯片,单路 USB 口可扩展出 2 个串口。可通过拨码开关(S1)切换模组的两路串口,连接到 USB 转串口芯片上。拨码开关引脚说明如下表所示:
拨码切到 ON 方向导通,通断 USB 转串口芯片的双串口和芯片串口之间的链路。
芯片 UART 引脚用于与 MCU 通信或普通 I/O 口使用时,需将相应的拨码位置拨到断开的位置,即数字字母方向。
电脑 COM 口与 USB 芯片串口和芯片 BK7231N 对应关系。
通常情况下A是用来下载程序用的,B是用来打印日志的。
六.烧录授权接线方式
将拨码开关(S2)的 1、2 路都拨至 ON 方向,BK7231N 的串口 UART1 与上位机链路导通。
注意:若出现“获取RF标志位失败”的情况,可在授权阶段,将串口2的RXD引脚(P01引脚)和GND短接。
七.环境搭建
环境搭建请参考涂鸦智能配置说明:https://developer.tuya.com/cn/docs/iot/Module-SDK-development_tutorial?id=Kauqptzv5yo8a
八.下载SDK进行验证
在涂鸦 IoT 开发平台上成功创建自定义开发的产品后,在硬件开发中选择 TuyaOS,即可下载该模组 SDK。
(此前需联系涂鸦工作人员开通白名单授权,联系方式放在文末)
将下载好的 SDK 复制到 Windows 和 Ubuntu 的共享文件夹中,在 Ubuntu 虚拟机中输入下列命令进行编译:
执行成功如下所示:
九.模组二次开发流程
1.启动流程介绍
在开始开发前,需要了解 SDK 的初始化流程。这里需要重点关注四个函数pre_app_init()、pre_device_init()、app_init()和device_init()。启动流程如下图所示。
2.灯珠数量定义
在/home/share/samba/ty_iot_light_app_sdk_bk7231n_0.1.1/app/xh0623_demo_pixel_light_ty/include/src/light_system/light_init.c中可以进行修改。
3.灯带长度定义
在/home/share/samba/ty_iot_light_app_sdk_bk7231n_0.1.1/app/xh0623_demo_pixel_light_ty/include/src/light_upload/light_upload.c中可以进行修改,其中DPID_LED_NUM是灯珠数量,DPID_LED_LENGTH是灯带长度,单位为厘米。
4.编译和生成产物介绍
在 Ubuntu 终端中将路径切换到有 build_app.sh 的路径下,输入下列命令进行编译。
例:我这里处于home/share/samba/ty_iot_light_app_sdk_bk7231n_0.1.1路径下,开始执行下列命令。
执行后如下所示。
5.生成产物
编译完成后,将生成的固件按照不同版本放在所编译的工程目录 output 文件夹内。
例:如果我们编译的是 apps 文件夹中的 xh0623_demo_pixel_light_ty工程,编译版本为1.0.0,那么生成的固件将会放在 apps/xh0623_demo_pixel_light_ty/output/1.0.0 中。
编译后的产物如上图所示,这里主要关注的xh0623_demo_pixel_light_ty_QIO_1.0.0.bin、xh0623_demo_pixel_light_ty_UA_1.0.0.bin和xh0623_demo_pixel_light_ty_UG_1.0.0.bin这三个文件。
6.上传固件
进入涂鸦 IoT 开发平台,在开发的产品中找到“硬件开发”,按照下图指示点击“新增自定义固件”,填写相关信息。
“固件标识名”必须和您编译时的 apps 下的工程文件夹的名称一致。
如果固件标识名填写为 wifi_one_light,上传的固件应为 SDK 包中 apps 目录下的 wifi_one_light 文件夹中编译所生成的固件。
“Flash 大小”为 16Mbit 也就是 2M 大小。相关信息填写完成后(没有被②的框框圈到使用默认设置即可),点击“上传固件”。
“固件版本”需要和编译时输入的版本号对应一致。“生产固件”上传包含 QIO 的 bin 文件,“用户区”上传包含 UA的bin 文件,“升级固件”上传包含 UG 的 bin 文件。运行模式选择 QIO。点击保存。
注意:该顺序不是固定的。
点击“进行固件上架”。
选择“不限范围”,点击“确认上架”。
注意:若是公司将要量产的产品,请严格限定固件的使用范围。
十.烧录授权
生成固件并上传到涂鸦 IoT 开发平台后,下一步需要对模组进行烧录授权。
本文将详细讲解 3 种不同的烧录授权方式:
-自定义开发方式:适用于发布阶段,使用自定义开发方式创建的产品;
-三明治开发板方式:仅适用于涂鸦三明治开发板的烧录授权;
-使用原厂工具:适用于开发阶段。方案特点是授权一次,重复烧录
1.烧录准备工作
烧录授权所需工具如下:
PMS 账号
CBU Nano开发板或涂鸦WiFi模组+usb转UART串口工具
云模组烧录授权工具
原厂烧录工具
具体步骤可查看“阅读原文”
烧录设置如下所示:
烧录完成如下所示:
2.涂鸦智能App
在涂鸦智能手机App中添加模组。
若没有自动识别出,点击照明---灯带进行添加。
若App无法搜索到模组,需要对模组进行重置,查看原理图可以知道P9管脚对应用户按键。
查看/home/share/samba/ty_iot_light_app_sdk_bk7231n_0.1.1/app/xh0623_demo_pixel_light_ty/include/src/light_button/light_button_init.c下有个按键配置代码,可以看到对按键点击4次可以进入复位模式。
3.幻彩灯带功能介绍
①涂抹功能
用户可以根据自己的喜好给灯带进行设置,配置为自己喜欢的颜色组合,例如配置为蓝绿红。
实际配置如下所示。
②场景设置
用户可以根据自己的喜好定义场景。
③音乐律动
音乐律动分为本地模式和App模式,以爵士为例,设置之后可以选择灵敏度来改变灯带频率。
实际演示如下所示。
在App模式下,灯光根据手机麦克风采集到的音乐随之律动,显示效果如下所示:
④其他功能
用户可以给幻彩灯带进行设置,指定打开时间。同时也可以定义灯带的长度。
PS:本文来源于CSDN技术社区,作者:记帖;点击阅读原文,即可查看原链接。
全部0条评论
快来发表一下你的评论吧 !