『瀚思彼岸』» 智能家居技术论坛

 找回密码
 立即注册
楼主: XCray

[修仙教程] 【ESPHome】ESP32 DIY通用蓝牙网关,接入米家系门锁等各种设备

  [复制链接]

105

主题

2954

帖子

1万

积分

超级版主

智能家居&单板滑雪痴迷爱好者

Rank: 8Rank: 8

积分
12119
金钱
9100
HASS币
460

教程狂人突出贡献

 楼主| 发表于 2021-6-2 12:18:35 来自手机 | 显示全部楼层
ruan_yhang 发表于 2021-6-2 11:55
这是C++,可以认为容器里面放了一个动态数组,顺序排列,可以添加和删除元素。 ...

道理我懂。zzZ
就是一动手就出各种低级错误……

算了,等你有空继续弄吧,我先折腾折腾多模网关,这东西比我想象的难用多了。
回复

使用道具 举报

1

主题

81

帖子

790

积分

高级会员

Rank: 4

积分
790
金钱
709
HASS币
0
发表于 2021-6-2 15:44:18 | 显示全部楼层
本帖最后由 zraxx 于 2021-6-2 16:20 编辑

支持大神研究!!!

回复

使用道具 举报

12

主题

241

帖子

2397

积分

论坛技术达人

积分
2397
金钱
2155
HASS币
30
发表于 2021-6-3 09:40:24 | 显示全部楼层
这样搞太折腾了吧, Gateway3 多模网关全都解析好了,129块钱就搞定的东西
回复

使用道具 举报

105

主题

2954

帖子

1万

积分

超级版主

智能家居&单板滑雪痴迷爱好者

Rank: 8Rank: 8

积分
12119
金钱
9100
HASS币
460

教程狂人突出贡献

 楼主| 发表于 2021-6-3 12:19:08 | 显示全部楼层
uavana 发表于 2021-6-3 09:40
这样搞太折腾了吧, Gateway3 多模网关全都解析好了,129块钱就搞定的东西

有些设备多模网关并不支持,比如我在用的榉树门锁就是,只能配合老版的蓝牙网关使用。
回复

使用道具 举报

105

主题

2954

帖子

1万

积分

超级版主

智能家居&单板滑雪痴迷爱好者

Rank: 8Rank: 8

积分
12119
金钱
9100
HASS币
460

教程狂人突出贡献

 楼主| 发表于 2021-6-4 08:42:12 来自手机 | 显示全部楼层
ruan_yhang 发表于 2021-5-31 23:34
试了你的代码,没问题。解出来的结果和网关输出的一致!!!!!!

突然想到了一种可能性:创米小白会不会在把密文发往服务器的时候在ttl口打印出来?如果会的话就不用再搞一个esp32进行嗅探了。
既然密钥会打印出来,密文也打印出来就不算意外了。
回复

使用道具 举报

0

主题

22

帖子

144

积分

注册会员

Rank: 2

积分
144
金钱
122
HASS币
0
发表于 2021-6-5 10:56:18 | 显示全部楼层
XCray 发表于 2021-6-4 08:42
突然想到了一种可能性:创米小白会不会在把密文发往服务器的时候在ttl口打印出来?如果会的话就不用再搞 ...

貌似不行,从TTL收不到MiBeacon,带不带Object的两种都没有。
回复

使用道具 举报

105

主题

2954

帖子

1万

积分

超级版主

智能家居&单板滑雪痴迷爱好者

Rank: 8Rank: 8

积分
12119
金钱
9100
HASS币
460

教程狂人突出贡献

 楼主| 发表于 2021-6-5 16:31:21 | 显示全部楼层
本帖最后由 XCray 于 2021-6-5 21:27 编辑
ruan_yhang 发表于 2021-6-5 10:56
貌似不行,从TTL收不到MiBeacon,带不带Object的两种都没有。

我把esphome的 xiaomi_lywsd03mmc 和 xiaomi_ble 代码改了改,实现了锁属性、锁事件、门事件和电量报告的接入。看来这是一个比较省事儿的办法,问题就是必须根据具体型号具体调整,另外就是要直接修改esphome代码,方式上不够正规。
这是一条锁属性和一条锁事件(开门记录)对应的ESPHome日志:
[20:36:39][D][xiaomi_ble:205]: decrypt_xiaomi_payload(): authenticated decryption passed.
[20:36:39][D][xiaomi_ble:207]:   Plaintext : 0E.10.01.01 (4), Packet : 81
[20:36:39][D][xiaomi_ble:070]: value_length:1;payload_length:4
[20:36:39][D][xiaomi_ble:219]: Got Xiaomi ZELKOVA (xx:xx:xx:xx:xx:xx):
[20:36:39][D][xiaomi_ble:225]:   LockAttr:1
[20:36:39][D][sensor:099]: 'LockAttr': Sending state 1.00000  with 0 decimals of accuracy

[20:36:41][D][xiaomi_ble:205]: decrypt_xiaomi_payload(): authenticated decryption passed.
[20:36:41][D][xiaomi_ble:207]:   Plaintext : 05.00.0A.00.02.01.00.01.00.D5.6F.BB.60 (13), Packet : 82
[20:36:41][D][xiaomi_ble:070]: value_length:10;payload_length:13
[20:36:41][D][xiaomi_ble:219]: Got Xiaomi ZELKOVA (xx:xx:x:xx:xx:xx):
[20:36:41][D][xiaomi_ble:222]:   OpMethod:2
[20:36:41][D][sensor:099]: 'OpMethod': Sending state 2.00000  with 0 decimals of accuracy


回复

使用道具 举报

105

主题

2954

帖子

1万

积分

超级版主

智能家居&单板滑雪痴迷爱好者

Rank: 8Rank: 8

积分
12119
金钱
9100
HASS币
460

教程狂人突出贡献

 楼主| 发表于 2021-6-6 12:27:24 | 显示全部楼层
自己顶最后一次,已实现全部有用数据的接入,具体见主贴。

感兴趣的可以参照修改代码以匹配自己的门锁。
回复

使用道具 举报

0

主题

44

帖子

168

积分

注册会员

Rank: 2

积分
168
金钱
124
HASS币
0
发表于 2021-6-10 09:22:27 | 显示全部楼层
蓝牙感觉好麻烦,但凡有别的协议可选绝不选蓝牙
回复

使用道具 举报

105

主题

2954

帖子

1万

积分

超级版主

智能家居&单板滑雪痴迷爱好者

Rank: 8Rank: 8

积分
12119
金钱
9100
HASS币
460

教程狂人突出贡献

 楼主| 发表于 2021-6-10 11:59:52 来自手机 | 显示全部楼层
hass001 发表于 2021-6-10 09:22
蓝牙感觉好麻烦,但凡有别的协议可选绝不选蓝牙

木得办法呀!小米非要全面转向蓝牙,弄了100多款蓝牙网关、自己的客服人员都搞不清楚。
我感觉蓝牙协议是正经协议,是小米把事情搞得太复杂了
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-12-28 00:21 , Processed in 0.054180 second(s), 33 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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