找回密码
 立即注册
搜索
查看: 14697|回复: 12

在PVE环境中部署蓝牙monitor及时检测离家回家

[复制链接]

80

主题

1390

回帖

2万

积分

元老级技术达人

积分
28780
金钱
27270
HASS币
290
发表于 2021-5-1 15:36:08 | 显示全部楼层 |阅读模式
本帖最后由 dscao 于 2021-7-26 01:23 编辑

一直用小米门锁的特定几种方式开锁作为回家触发条件,上提把锁延时2分钟室内人体无触发作为离家触发条件,也一直用得还不错。前几天看有大佬分享猫盘接蓝牙https://bbs.hassbian.com/thread-12756-1-1.html,自己也有一个,于是买了个蓝牙适配器CRS8510,结果也正常完成那样的操作。最后用来蓝牙追踪时发现是30秒扫描,想起有个更好的方案,于是找到帖子,研究后决定改回PVE主机安装蓝牙,最后成功了。发现房间的蓝牙信号还是100%,wifi的5G信号都不太行了。反应时间回家十秒内,离家十几秒至几十秒, mqtt.publish monitor/scan/arrive 与 monitor/scan/depart 配合后状态稳定后回家基本秒变,离家大概十秒变成90%,45%,0.0%。

[教程指南] 准确、及时、自动判断离家回家--多种方案试用后的最终选择
https://bbs.hassbian.com/thread-10096-12-1.html


对照XCray大佬的这个在PVE=ikuai+openwrt+nas+hassos环境中部署蓝牙monitor,检测离家回家。




一、PVE中安装蓝牙基本包


1、从web进入PVE管理页面中的shell运行:
apt update
apt install snapd
snap install core
snap install pi-bluetooth



参考:https://snapcraft.io/install/pi-bluetooth/debian


2、提示缺少两个组件,需要安装

apt-get install bluez (提示缺少 btmon)
参考:https://command-not-found.com/btmon
另一个按提示安装即可


二、安装mosquitto

apt-get update -y
apt-get install -y mosquitto-clients


顺带发送一下主机的CPU温度:
在pve的/etc/crontab/root中增加一行:
*/1 * * * * mosquitto_pub -h 192.168.X.X -u mqttuser -P mqttpassword -t pve/temp -m `sensors | tail -2 |cut -c17-20`

ha中增加:
sensor:
  - platform: mqtt
    name: CPUTemp
    icon: 'mdi:thermometer'
    state_topic: 'pve/temp'
    device_class: temperature
    unit_of_measurement: °C


三、执行脚本,配置完成PVE端
这里开始与原帖基本没什么区别了
cd ~
apt-get install git
git clone git://github.com/andrewjfreyer/monitor
cd monitor/

bash monitor.sh
脚本会在当前目录里生成默认的配置文件,按原帖修改:
mqtt_preferences 中填写mqtt的用户名和密码,主题路径,身份不填就默认pve,具体看pve系统设置吧
known_static_addresses 填入你的蓝牙设备的mac地址和名称


bash monitor.sh -h 按各种参数测试哪种最适合自己的,找到最适合的后:

bash monitor.sh -多个需要的参数 - u #参数保存到系统


配置完成后:
systemctl start monitor 启动服务
systemctl stop monitor 停止服务



四、homeassistant端配置传感器
按原帖操作即可




1.jpg


2.jpg

3.jpg

4.jpg



-----------------------2021.7.26更新:
最近PVE换成7.0版的,在安装这个的时候发现apt install snapd还不支持debian11,于是增加一个虚拟机装了个debian10,发现这个服务一旦打开cpu占用是非常高,难怪之前小主机温度比之前要高出很多。
具体原因还不清楚,打算后期主机上还是不用这个了,改到esp32中去。如果Esp32版的能有esphome的固件出来就方便了。

02.jpg
systemctl stop monitor 停止服务后

03.jpg
systemctl start monitor 启动服务后





评分

参与人数 1金钱 +8 收起 理由
XCray + 8 感谢楼主分享!

查看全部评分

回复

使用道具 举报

80

主题

1390

回帖

2万

积分

元老级技术达人

积分
28780
金钱
27270
HASS币
290
 楼主| 发表于 2021-8-21 21:36:38 | 显示全部楼层
hncdbai 发表于 2021-8-21 18:44
我运行  snap install pi-bluetooth后

error: snap "pi-bluetooth" is not available on stable but is a ...

PVE不是7.0版吧?7.0版不支持,在安装这个的时候发现apt install snapd还不支持debian11。
如果是6.x版的,就用“edge  snap install --edge pi-bluetooth“ 就可以安装了。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-7-4 14:10 , Processed in 0.409203 second(s), 10 queries , MemCached On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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