如何低门槛自制Zigbee 3.0温湿度计?涂鸦上新开发包,开箱即用、完全开源

温湿度计作为智能家居环境感知的核心组件,通过实时检测温湿度信息,可主动联动暖通、加湿器等设备,帮助提升居住舒适度、降低能源消耗。这类产品通常是由电池供电,对低功耗的要求较高。而 Zigbee 天然支持低功耗类设备,采用 Zigbee 3.0 协议,待机电流低至几个微安(uA),一节纽扣电池可持续工作长达 1~2 年,远超 Wi-Fi 版续航时长(仅能维持 2 个月),是温湿度类设备的理想选择。

(涂鸦赋能 Zigbee 温湿度计)

但开发 Zigbee 温湿度计需攻克多项技术难点,包括硬件集成、协议栈优化、功耗管理及网络稳定性等核心领域。整体开发流程复杂、时间周期长、成本高。

一、涂鸦产品级的开源温湿度开发包

为帮助客户加速落地量产,涂鸦为开发者提供产品级别的 Zigbee 温湿度设备开发包,完全开源,开箱即用,可快速开发出符合 Zigbee 3.0 协议和涂鸦接入规范的温湿度设备。

戳视频,沉浸式体验通过涂鸦赋能的 Zigbee 温湿度设备实际效果👇:

自制温湿度计联动加湿器演示

该产品开发包的核心功能包含:

1、网络配对

  • 长按设备上的配对按键 3 秒,设备将开启配网功能,屏幕背光灯开始快闪;
  • 根据 Zigbee 网关类型(如有线或无线),完成传感器与网关的配对。详细步骤可复制链接查看:https://support.tuya.com/zh/help/_detail/K9hut39qq9dt6
  • 配对成功时,设备背光灯长亮 3 秒后熄灭,此时可在 App 页面看到此设备;
  • 配对超时(默认 30 秒)后,设备背光灯停止闪烁,设备进入休眠。

2、采集+上报温湿度

  • 入网后,用户开启采集和上报定时器,系统就会按周期采集并上报当前温湿度值;
  • 当温湿度变化大于阈值(可自定义配置)时,立即触发警报,并上报当前状态;
  • 如果带屏,即使未入网屏幕也会实时显示温湿度数值。

3、按键操作

  • 短按时,背光灯会亮起几秒钟,并自动上报温湿度值、电池电量,屏幕温湿度会在摄氏度和华氏度之间切换;
  • 长按大于 3 秒,背光灯开始快闪并启动配网。

4、分阶段上报电池电量

  • 配网成功后 5 秒内上报 100% 电量;
  • 配网成功后 20 分钟,上报真实电量;
  • 以 4 小时为周期,上报当前电量;
  • 电量低于 20% 时,上报电量频率提升至每小时一次(即 1/4 周期)

以上所有功能均源码开放,涉及到的各类参数,开发者均可自定义修改。

二、深度解析开发包的软件架构

涂鸦 Zigbee 温湿度产品开发包的软件架构图如下所示👇:

从上图可以看到,软件架构总共分为三层:

  • 最底层是 TuyaOS SDK,封装 Zigbee 3.0 协议栈,免去射频调试/协议开发,直接提供基础的硬件驱动接口和 Zigbee 网络相关接口,支撑上层开发;
  • 中间层是解耦化的功能模块层(如采集模块、上报模块),以组件的形式实现单一功能模块的驱动层、抽象层、应用层,像搭积木一样快速重构产品功能;
  • 最上层是应用层,用于实现灵活定制化的行为现象,如指示灯现象、按键功能、LCD 显示逻辑等可能存在耦合的功能

三、如何获取产品开发包?

1、安装并登录 Tuya Wind IDE 插件

复制下方链接,了解 TuyaOS 开发流程,并安装 Tuya Wind IDE 插件👇:

https://developer.tuya.com/cn/docs/iot-device-dev/tuyaos-wind-ide?id=Kbfy6kfuuqqu3

在 Visual Studio Code 软件页面上,打开 Wind IDE,点击 Home,登录账号密码。选择 Dev Framework,请确保 Dev Framework 界面有已下载 SDK 的信息,由于该产品开发包是基于 SDK 发布,因此没有 SDK 时,产品开发包不显示。

2、下载产品开发包

右侧点击 Product Dev Kit,选择温湿度传感器产品开发包,点击 Request Permission,申请通过后即可下载。

3、创建产品

关于产品创建流程,可复制下方链接了解详情👇:

https://developer.tuya.com/cn/docs/iot/create-product?id=K914jp1ijtsfe

4、开启与配置 LCD 屏幕功能

4.1 开启功能

apps\tuyaos_demo_thermo_hygrometer\include\sensor_app_config.h

,将 APP_LCD_DISPLAY_SUPPORT 置 1

4.2 配置 I2C 相关 IO 口

apps\tuyaos_demo_thermo_hygrometer\components\tdl_lcd\tdl_lcd_config.h 文件中修改 LCD 屏幕的 I2C 参数。

4.3 编译

在Visual Studio Code软件页面上,打开下载好的产品开发包,展开左侧 software/TuyaOS/apps,可以看到本产品 Demo 的 project 文件夹。

右键产品文件夹,选择 Build Project,在跳出的文本框内输入编译固件的版本号(格式为 x.x.x,最大版本为 3.3.15)后,按回车键确认。具体操作见下方几张图👇:



4.4 烧录

烧录步骤可参考下方 SDK 开发指导文档:

https://developer.tuya.com/cn/docs/iot-device-dev/sdk-dev-guidance?id=Ken8g7zk3g4yu

四、开发者问题咨询

如在开发遇到任何问题,也可以直接在论坛中提问,将有技术小哥随时为你解答:

https://www.tuyaos.com/viewforum.php?f=18

相关推荐
li星野34 分钟前
打工人日报#20251008
单片机·嵌入式硬件
24K纯帅ll42 分钟前
神经网络与人脑的联结JS如何模拟意识流动
开源
法欧特斯卡雷特1 小时前
从 Kotlin 编译器 API 的变化开始: 2.2.2X -> 2.3.0-Beta1
后端·架构·开源
居7然1 小时前
京东开源王炸!JoyAgent-JDGenie如何重新定义智能体开发?
人工智能·开源·大模型·mcp
听风吹雨yu2 小时前
RK3588从数据集到训练到部署YoloV8
linux·yolo·开源·rk3588·rknn
Stanford_11062 小时前
关于嵌入式硬件需要了解的基础知识
开发语言·c++·嵌入式硬件·微信小程序·微信公众平台·twitter·微信开放平台
点灯小铭3 小时前
基于单片机的Boost升压斩波电源电路
单片机·嵌入式硬件·毕业设计·课程设计
清风6666663 小时前
基于单片机的蓝牙可调PWM波形发生器设计
单片机·嵌入式硬件·mongodb·毕业设计·课程设计
小莞尔3 小时前
【51单片机】【protues仿真】基于51单片机汽车智能灯光控制系统
c语言·单片机·嵌入式硬件·汽车·51单片机
ajassi20004 小时前
开源 C# 快速开发(十七)进程--消息队列MSMQ
windows·开源·c#