找回密码
 立即注册

微信扫码登录

搜索
查看: 136|回复: 5

[硬件DIY] ch592f做了一个bthome接入ha的门磁

[复制链接]

89

主题

540

回帖

4499

积分

论坛元老

积分
4499
金钱
3870
HASS币
30
发表于 13 小时前 | 显示全部楼层 |阅读模式
本帖最后由 silas3082 于 2025-8-2 08:00 编辑

    之前做了一个bthome接入ha的按钮(https://bbs.hassbian.com/thread-29910-1-1.html),使用起来效果还不错,就是会出现偶尔按钮按下,ha那里没有反应的情况,需要多按几次才行。经过测试,门磁可以实施变化状态,门磁和按钮的硬件端都是一样的,区别就是按钮使用的是bthome中的event,门磁使用的是door,具体什么原因我也不知道。于是又做了一个门磁,并保留了按钮的功能,改变了pcb的形状,并且重新设计了外壳。

一、PCB设计

在原来按钮的基础上增加门磁,并且增加两个0402电阻(虚拟)作为引脚选择的触点

PB13按钮、PB10门磁,用哪一个就把哪一个0R电阻短接,分为下边四个场景:

用门磁:都不用短接,空着
用按钮:
    使用13端口,短接PB13;
    使用10端口,短接PB10门磁
用按钮+门磁:短接PB13


    wechat_2025-08-02_072826_476.png wechat_2025-08-02_072858_026.png

wechat_2025-08-02_073042_907.png

二、外壳设计

外壳重新设计成方形的,方便放门磁开关,并且保留原来的按钮,在上盖上加上一个一体的按钮,不用额外增加零部件

wechat_2025-08-02_073926_945.png
wechat_2025-08-02_073958_546.png
pcb通过M2短螺丝固定在底壳上,上下壳通过卡扣的形式组合在一块

wechat_2025-08-02_074021_467.png
门磁地方开孔表示干簧管位置

wechat_2025-08-02_074120_011.png






微信图片_20250802074943_5.jpg 微信图片_20250802074943_6.jpg


三、接入流程


参照原作者写的,已经很具体了。(这里我刷原代码需要填写bthome加密密钥,填入之后ha上边提示错误,索性把加密密钥去了,可以直接添加了)
接入 Home Assistant
硬件: 使用 ESP32 开发板/模块。
软件: 在 ESPHome 固件中启用 bluetooth_proxy 组件。
# ESPHome 配置示例
bluetooth_proxy:
esp32_ble_tracker:
  scan_parameters:
    interval: 320ms
    window: 320ms  #设置该值等于interval,最大限度提高广播数据主动侦听时间,提高捕捉概率

流程:
将烧录了 ESPHome(含 bluetooth_proxy)的 ESP32 设备添加到 Home Assistant。
Home Assistant 会自动发现附近的 BTHome 蓝牙设备。
发现设备后,在 Home Assistant 界面输入设备的 BTHome 加密密钥 即可完成添加(我上传的代码中已经去掉了输入密钥的流程,可直接添加)。
注意: 偶尔可能出现密钥正确但添加失败的情况,通常稍等片刻重试即可成功。

四.低功耗


低功耗方面作者说是平均工作电流: ~6uA

以上来自原作者数据,我没有具体测试,从报告看,一节2032可以用1142天,非常牛逼plus了

forum.png
五、功能测试
按钮可以实现单击,双击,三击,长按,双击长按,三击长按等多种功能
门磁可以实时反应门的开关状态
可以根据实际情况选择性的使用门磁、按钮或者门磁+按钮



门磁加按钮3D外壳.rar

54.34 KB, 下载次数: 0

CH592固件.rar

133.63 KB, 下载次数: 1

门磁无线按钮源码.rar

2.51 MB, 下载次数: 1

ProPrj_BTHome格式的CH592门磁_2025-08-02.rar

390.23 KB, 下载次数: 1

评分

参与人数 1金钱 +12 收起 理由
DDDear + 12 大佬高产

查看全部评分

回复

使用道具 举报

61

主题

1515

回帖

7286

积分

元老级技术达人

积分
7286
金钱
5705
HASS币
60
发表于 11 小时前 | 显示全部楼层
大佬利用LD2410S低功耗雷达+CH592F做锂电池版的人体存在传感器
回复

使用道具 举报

89

主题

540

回帖

4499

积分

论坛元老

积分
4499
金钱
3870
HASS币
30
 楼主| 发表于 11 小时前 | 显示全部楼层
sorrypqa 发表于 2025-8-2 10:12
大佬利用LD2410S低功耗雷达+CH592F做锂电池版的人体存在传感器

我看行,代码都不用改,需要增加一个低功耗ldo,一个充电芯片和一个2410s
回复

使用道具 举报

61

主题

1515

回帖

7286

积分

元老级技术达人

积分
7286
金钱
5705
HASS币
60
发表于 9 小时前 | 显示全部楼层
silas3082 发表于 2025-8-2 10:27
我看行,代码都不用改,需要增加一个低功耗ldo,一个充电芯片和一个2410s

只是低功耗还不行,要超低功耗+超低压差的才行
回复

使用道具 举报

89

主题

540

回帖

4499

积分

论坛元老

积分
4499
金钱
3870
HASS币
30
 楼主| 发表于 8 小时前 | 显示全部楼层
sorrypqa 发表于 2025-8-2 12:00
只是低功耗还不行,要超低功耗+超低压差的才行

要是通过uart传输数据,改得需要大佬修改下代码,让芯片和传感器能互相通讯,要是只用好滴电平就直接接传感器就行。
回复

使用道具 举报

61

主题

1515

回帖

7286

积分

元老级技术达人

积分
7286
金钱
5705
HASS币
60
发表于 8 小时前 | 显示全部楼层
silas3082 发表于 2025-8-2 12:52
要是通过uart传输数据,改得需要大佬修改下代码,让芯片和传感器能互相通讯,要是只用好滴电平就直接接传 ...

电平触发足够应付大部分使用场景
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-8-2 21:35 , Processed in 0.111818 second(s), 8 queries , MemCached On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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