米家温湿度计2代利用树莓派原生蓝牙接入HomeAssiatant

前期准备

先上效果图吧

左HA 右米家


所需设备:

  • 树莓派4B/3B
  • 米家温湿度计2代(LYWSD03MMC)

准备工作:

  • 安装HomeAssistant(需包含HASS)
  • 安装插件File editorHACS
  • HACS 中安装 ble_monitor

获取 encryption_key

要想从米家温湿度计2代中读出数据,就得获取到key这个kdy在进行新的配对时会改变,如果你将温湿度计接入HomeAssistant(下面简称HA)后又重新和其他设备进行了配对,那么你就要重新获取key
下面将介绍两种方法来获取key,第一种方法较为复杂,但可以同时接入米家和HA;第二种方法很简单,但是接入HA后就无法接入米家了。

方法一

此方法的原理是想获取到米家APP与温湿度计绑定时的key(仅限安卓)

  1. 你首先需要一个没有安装米家APP的安卓设备或者先卸载你手机上的米家APP
  2. 打开手机的文件管理器,在根目录下创建文件夹路径:vevs/logs/
  3. 安装由毛子修改过的 米家APP
  4. 打开刚刚安装好的米家APP,登陆你自己的小米账号
  5. 与温湿度计进行配对
  6. 打开文件管理器,进入vevs/logs/misc找到pairings.txt这个文件并打开,记录BingkeyMAC的值。
    pairings.txt

记录下相应的值后就可以卸载魔改版米家APP了,安装正常的米家APP,登陆你自己的小米账号,就可以看到温湿度计已经配对,并且key也已经拿到了。

方法二

电脑或者手机端使用Chrome浏览器打开此链接,点击Connect按钮,选择设备LYWSD03MMC等待下方出现温湿度及代表连接成功,然后点击Do Activation按钮,下方的Mi Bind Key:中的值就是我们想要的key。

配置yaml文件

利用刚才安装好的File editor插件打开configuration.yaml,在最下面粘贴以下内容,注意将encryption_keyMAC的值换成自己的。

ble_monitor:
rounding: True
  decimals: 1
  period: 60
  log_spikes: False
  use_median: False
  active_scan: False
  hci_interface: 0
  batt_entities: True
  discovery: True
  restore_state: False
  report_unknown: False
  devices:
    - mac: 'A4:C1:38:24:44:3E'
      name: '宿舍'
      encryption_key: 'd65536b64b08d24abc8c40db94d18ebf'

一定要注意缩进,yaml文件对缩进非常严格!!!

修改完yaml文件后重启HA,重启后就可以看到温度与湿度了,如果显示未知,那么等10分钟之后再看,因为米家温湿度计2代默认10分钟通过蓝牙广播一次温湿度,广播之后HA才能看到相应的内容。

ble_monitor这个插件可以接入的小米设备非常多,建议大家去github看看,但是我不建议使用此方法链接HA和米家温湿度计,树莓派的蓝牙覆盖范围实在是有限,以后将介绍使用ESP32来链接温湿度计。


相关链接:

最后修改:2020 年 12 月 13 日 10 : 16 PM
如果觉得我的文章对你有用,请随意赞赏