找回密码
 立即注册
搜索
查看: 488|回复: 20

[硬件DIY] BTHome 门窗状态与光照传感器

[复制链接]

3

主题

46

回帖

253

积分

论坛DIY达人

积分
253
金钱
204
HASS币
0
发表于 7 天前 | 显示全部楼层 |阅读模式
# BTHome 门窗状态与光照传感器项目简介
https://oshwhub.com/bitshen/bthome
BTHome 协议是一种轻量级的蓝牙通信协议,专为智能家居传感器设备与接收端(如网关或主控设备)之间的数据传输设计。

本项目基于 BTHome 协议,结合 TI 霍尔传感器与光度传感器,实现了门窗状态、光照强度、电池电压等数据的精准采集与上报。核心硬件使用了 **CH592F** MCU,整体电路设计极为精简,无需使用任何电阻元件即可完成焊接组装。

![image.png](

                               
登录/注册后可看大图
)
---

## 功能与采集内容

![image.png](

                               
登录/注册后可看大图
)
### 1. 光照强度
- 采样频率:每 40 秒采集一次
- 传感器:TI 光度传感器
- 功能描述:实时监测环境光照强度,适用于室内光照调节等应用场景。

### 2. 门窗关合次数
- 触发方式:每次关门触发 MCU 中断
- 记录内容:累计关门的次数
- 功能描述:通过霍尔传感器实时记录门窗开关动作次数。

### 3. 门窗当前状态
- 实时记录当前门窗开/关状态,方便状态监测与联动控制。

### 4. 电池电压监测
- 监测纽扣电池当前电压,便于掌握电量使用情况并及时更换电池。

---

## 项目硬件设计

- **主控芯片**:WCH CH592F
- **霍尔传感器**:TI 系列
- **光度传感器**:TI 系列
- **电路特点**:
  - 极简布局
  - 无需焊接电阻元件
  - 低成本、高集成度

---

## 已知问题与待完善事项

- **低功耗测试尚未完成**  
  目前尚未进行完整的低功耗性能测试。欢迎有低功耗测试设备的小伙伴协助测试并反馈结果。
- **天线部分匹配不好**  
---

## 使用说明

### 1. 固件烧录

![image.png](

                               
登录/注册后可看大图
)
- 使用 **WCH_TOOL** 工具进行固件烧录。
- 烧录流程简单,支持量产化操作。

### 2. 与 Home Assistant 配合使用

- 烧录完成后,在 Home Assistant (HA) 中添加设备。
- 设备通常会自动弹出识别,显示名称为 **LWSensor**。
- 完成添加后可实时查看传感器数据,并支持自动化联动。

![image.png](

                               
登录/注册后可看大图
)
---

## 通信机制补充说明

在实际使用过程中发现:

- **广播频率**:默认采用 2 秒广播一次的方式。
- **丢包问题**:当门窗在 1 秒内多次开关时,某些广播可能因上游服务器采样周期限制被遗漏,导致状态数据丢失。
- **改进措施**:增加关门次数统计值,将其包含在广播数据中,即使部分广播丢失,依然可以通过累计次数判断状态变化,确保数据完整性和可靠性。

---

<span style="color:red">本项目禁止商用,仅开源固件和硬件部分</span>


回复

使用道具 举报

19

主题

277

回帖

2496

积分

论坛DIY达人

积分
2496
金钱
2195
HASS币
20
发表于 6 天前 来自手机 | 显示全部楼层
感谢分享,如有源码就更方便学习了。如您弄个土壤湿度检测,我可以帮你测量功耗。另请教,并联8个电容的意义是什么呢?这货的漏电流对电池不太友好。
回复

使用道具 举报

3

主题

46

回帖

253

积分

论坛DIY达人

积分
253
金钱
204
HASS币
0
 楼主| 发表于 6 天前 | 显示全部楼层
polisher 发表于 2025-6-28 00:33
感谢分享,如有源码就更方便学习了。如您弄个土壤湿度检测,我可以帮你测量功耗。另请教,并联8个电容的意 ...

并电容是为了防止低电压时候,比如电池电压下降到1.9V时候,瞬时电流过大(比如开启一次广播)会造成VCC的drop,一旦drop下1.8V,MCU就会关机,造成一广播就重启
回复

使用道具 举报

3

主题

46

回帖

253

积分

论坛DIY达人

积分
253
金钱
204
HASS币
0
 楼主| 发表于 6 天前 | 显示全部楼层
polisher 发表于 2025-6-28 00:33
感谢分享,如有源码就更方便学习了。如您弄个土壤湿度检测,我可以帮你测量功耗。另请教,并联8个电容的意 ...

原理上实际上很简单的,就是一个蓝牙广播,用沁恒的MCU原因就是价格便宜、外围元器件少,实际上北极星的NRF52XX系列也是不错的
回复

使用道具 举报

3

主题

46

回帖

253

积分

论坛DIY达人

积分
253
金钱
204
HASS币
0
 楼主| 发表于 6 天前 | 显示全部楼层
polisher 发表于 2025-6-28 00:33
感谢分享,如有源码就更方便学习了。如您弄个土壤湿度检测,我可以帮你测量功耗。另请教,并联8个电容的意 ...

关于陶瓷电容的漏电流,TI有一份测量的文档,电容的耐压值越大、容量越小漏电流越低,你可以看我以前的主题,有蓝牙的温湿度计,已经稳定运行快一年了
回复

使用道具 举报

3

主题

46

回帖

253

积分

论坛DIY达人

积分
253
金钱
204
HASS币
0
 楼主| 发表于 6 天前 | 显示全部楼层
polisher 发表于 2025-6-28 00:33
感谢分享,如有源码就更方便学习了。如您弄个土壤湿度检测,我可以帮你测量功耗。另请教,并联8个电容的意 ...

土壤湿度检测的话....可以把我的蓝牙温度计插土里,温度计是测量温湿度的
回复

使用道具 举报

3

主题

64

回帖

1314

积分

论坛DIY达人

积分
1314
金钱
1237
HASS币
30
发表于 6 天前 | 显示全部楼层
bitshen 发表于 2025-6-28 17:54
土壤湿度检测的话....可以把我的蓝牙温度计插土里,温度计是测量温湿度的 ...

土壤湿度检测一般用PCB做电容来检测。
之前想用CH592和BTHOME做土壤湿度检测,测试了定时器的使用方法,读取土壤湿度模块的脉冲数。
没做完,忙别的就放了好久了。

土壤湿度检测的PCB参考这个。
https://oshwhub.com/wangshujun/ne555
回复

使用道具 举报

3

主题

46

回帖

253

积分

论坛DIY达人

积分
253
金钱
204
HASS币
0
 楼主| 发表于 5 天前 | 显示全部楼层
litchiate 发表于 2025-6-28 19:53
土壤湿度检测一般用PCB做电容来检测。
之前想用CH592和BTHOME做土壤湿度检测,测试了定时器的使用方法, ...

如果用555的话,功耗效果怎么样呢?我有计划做一个雨水传感器,但是外挂放大芯片我担心功耗比较大,现在芯片休眠电流也就几个nA
回复

使用道具 举报

3

主题

64

回帖

1314

积分

论坛DIY达人

积分
1314
金钱
1237
HASS币
30
发表于 5 天前 | 显示全部楼层
bitshen 发表于 2025-6-29 16:27
如果用555的话,功耗效果怎么样呢?我有计划做一个雨水传感器,但是外挂放大芯片我担心功耗比较大,现在 ...

加个IO控制555的VCC, 湿度检测一般不用很频繁。

好像CH592有触摸功能,但没看到是否能输出具体数值, 上面的链接里 ESP32的触摸功能可以直接读取数值,但ESP32功耗太大,PCB画完了又丢着了。
回复

使用道具 举报

3

主题

46

回帖

253

积分

论坛DIY达人

积分
253
金钱
204
HASS币
0
 楼主| 发表于 4 天前 | 显示全部楼层
litchiate 发表于 2025-6-29 20:29
加个IO控制555的VCC, 湿度检测一般不用很频繁。

好像CH592有触摸功能,但没看到是否能输出具体数值,  ...

触摸好像集成到模块了,也没看明白。你说的这个是电容式雨量传感器吧。我看比较多的是电阻式的,用电桥也许也是个方案?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian ( 晋ICP备17001384号-1 )

GMT+8, 2025-7-4 13:49 , Processed in 0.307904 second(s), 9 queries , MemCached On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表