无需小米349元的蓝牙中枢网关,15块ESP32做分布式中继蓝牙网关,解决大户型蓝牙覆盖难题

要解决蓝牙覆盖问题还是有方法的,今天给大家带来的就是分布式中继蓝牙网关方案。让我们操练起来。

该方案跟上次方案一样,不影响原有米家的接入,也就是一套蓝牙设备可以同时接入米家和homeassistant。

这是小米米家APP中记录的青萍人体传感器记录

这是我通过USB蓝牙接入玩客云homeassistant中的记录,大家可以发现和米家记录的数据分秒不差。

这就证明米家和homeassistant是并行运行,两者互不影响。即使米家服务器宕机了,homeassistant里的这些传感器还是可以正常工作,homeassistant里基于这些传感器的自动化仍然会正常运行的。这才是彻底的本地化运行,这样才稳定可靠、响应速度快。

一、购买ESP32开发版

首先去淘宝花十元左右买个esp32开发板

然后通过USB线把esp32插你的电脑USB上待用,第一次可能需要装驱动,按照提示安装USB转串口驱动即可

二、获取米家蓝牙设备密钥key

现在绝大部分的米家蓝牙传感器都是加密的,所以我们首先就要获取蓝牙设备的密钥key,现在获取米家蓝牙密钥其实十分简单了。

1、下载小米云端token获取软件,打开下图网址,window操作系统点击图中下载链接即可下载该软件

2、获取米家蓝牙设备key

双击打开刚才下载的软件,按软件提示输入你的小米账号ID和密码即可

我们就可以看到我们的蓝牙密钥了,如下图所示,然后我们复制粘贴到记事本待用。

三、下载安装编译esphome

1、 安装esphome

①从python官方网站下载你系统对应版本的python,安装时勾选“Add Python to PATH”

②按Windows +R键,然后在“打开”后输入cmd打开windows命令行窗口。然后输入下面的命令安装esphome

pip3 install wheelpip3 install esphome

最后后再输入下面的命令验证esphome是否安装成功,安装成功会输出版本号

esphome version

2、 编译下载固件

在你的电脑账号目录下创建一个esphome配置文件myesphome.yaml,内容可以直接复制我的这个就行,只需修改一下WiFi账号密码。

把ESP32开发板通过USB数据线插到电脑上,然后再windows命令行窗口输入如下命令

esphome run myesphome.yaml

编译完成后选择提示的1即COM选项,进行固件写入即可。

四、HA配置

1、通过samba打开HA配置文件夹

我已经给大家安装了samba服务,当我们需要添加第三方插件或者需要修改配置文件时需要打开homeassistant的配置目录。我已经把homeassistant的配置目录通过samba服务共享出来了。在您的电脑(电脑需要和玩客云处于同一局域网,你可以理解为同一路由下)同时按下window键加R键,打开运行,输入您的IP地址,点击“确定”

输入登录账号root,密码10245869 登录即可打开homeassistant配置目录。我给大家的默认装了HACS即第三方插件商店的,HACS就放在了custom_components里了。

2、编辑HA配置文件

找到配置文件夹下的configuration.yaml 用notepad++打开,然后写入下面的内容复制粘贴即可

3、重启HA

重启以后HA前端界面就会出现刚才配置的蓝牙中继网关相关的设置组件了,确保网关和网关自动发现设备都是打开状态

4、接入刚才已经刷写的esp32开发板

①点击homeassistant的集成,我们可以看到homeassistant已经自动发现了同局域网的我们DIY的小米蓝牙中继网关,点击“配置”就会自动完成配置

我们选择网关位置点击“完成”即可

五、HACS安装插件

①打开HACS中的“集成”页面

②点击右下角的“浏览并下载存储库”

③在搜索框内输入“BLE”进行搜索,并点击“passive BLE monitor”进入该插件页

④、点击右下角的“通过HACS下载此存储库”

⑤在弹出页面中点击右下角的“下载”进行下载

下载完成后如下图所示

下载完成后按下图重启HA,让插件生效

六、集成配置passive BLE插件

①、按下图打开HA的集成

②在集成搜索框中输入“BLE”进行搜索,然后点击“Passive ble monitor”进行插件配置

③保持默认,点击提交即可,大家可以看到此处已经没有蓝牙适配器了,因为我的玩客云没有再插USB蓝牙适配器了。

④稍等片刻插件会自动发现蓝牙设备

⑤点选项进行设备添加

选择要添加的设备(此处我以青萍人体与环境光传感器为例)然后点“提交”

输入蓝牙密钥后提交即完成设备的添加

自动添加设备后前端界面显示如下

我们可以汉化一下传感器名字

七、打印外壳

我从网上找了3D打印文件,自己打印了外壳装上,显得好看一点,也避免出现短路

八、结论

通过ESP32刷esphome固件后,我们可以有效解决两个问题,一是玩客云或者群晖威联通NAS本身没有蓝牙,无法连接蓝牙设备的问题,二是很好的解决USB蓝牙的覆盖问题,那些蓝牙设备离装有HA的玩客云群晖等比较远的无法被连接,那么我们就可以把这个esp32网关拿过去覆盖即可,只要有WiFi,网关就可以把蓝牙信号通过WiFi传输给HA处理。懒得自己刷esp32和玩客云的可以找博主代刷。

  • 1
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
安装Home Assistant在Ubuntu上可以按照以下步骤进行: 1. 在Ubuntu系统上安装Python和pip(如果还没有安装)。 ``` sudo apt-get update sudo apt-get install python3 python3-pip ``` 2. 安装Home Assistant。 ``` sudo pip3 install homeassistant ``` 3. 启动Home Assistant。 ``` hass ``` 在第一次启动时,Home Assistant会安装所需的依赖项并生成配置文件。请耐心等待一段时间。 4. 访问Home Assistant。 在Web浏览器中输入以下URL: ``` http://<ip_address>:8123 ``` 其中,`<ip_address>`是运行Home Assistant的Ubuntu机器的IP地址。 如果您使用的是本地计算机,请在浏览器中输入以下URL: ``` http://localhost:8123 ``` 这将带您到Home Assistant的配置向导,您可以在其中设置语言、地点和其他选项。 完成上述步骤后,您就可以使用Home Assistant来控制智能设备、创建自动化规则等了。好的,以下是安装Home Assistant在Ubuntu系统上的步骤: 1. 打开终端,更新apt软件包列表: ``` sudo apt-get update ``` 2. 安装必要的软件包: ``` sudo apt-get install -y python3 python3-venv python3-pip libffi-dev libssl-dev libjpeg-dev zlib1g-dev autoconf build-essential libopenjp2-7 libtiff5 ``` 3. 创建一个名为"homeassistant"的用户,并切换到该用户: ``` sudo useradd -rm homeassistant sudo su -s /bin/bash homeassistant ``` 4. 创建一个名为"homeassistant"的虚拟环境: ``` python3 -m venv homeassistant ``` 5. 激活虚拟环境: ``` source homeassistant/bin/activate ``` 6. 安装Home Assistant: ``` pip3 install wheel homeassistant ``` 7. 退出虚拟环境: ``` deactivate ``` 8. 创建一个Systemd服务: ``` sudo nano /etc/systemd/system/homeassistant.service ``` 9. 在编辑器中添加以下内容: ``` [Unit] Description=Home Assistant After=network.target [Service] Type=simple User=%i ExecStart=/home/homeassistant/homeassistant/bin/hass -c "/home/homeassistant/.homeassistant" [Install] WantedBy=multi-user.target ``` 10. 保存并退出编辑器。 11. 重新加载Systemd服务: ``` sudo systemctl --system daemon-reload ``` 12. 启动Home Assistant服务: ``` sudo systemctl start homeassistant ``` 13. 验证服务是否已经启动: ``` sudo systemctl status homeassistant ``` 14. 如果一切正常,设置Home Assistant服务自动启动: ``` sudo systemctl enable homeassistant ``` 现在你已经成功地在Ubuntu系统上安装了Home Assistant。你可以通过在Web浏览器中输入"http://<ubuntu IP address>:8123"来访问Home Assistant的Web界面,并开始配置和使用它。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值