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

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

[快速入门] 篇七:树莓派zero w蓝牙网关

  [复制链接]

9

主题

787

帖子

3831

积分

论坛元老

Rank: 8Rank: 8

积分
3831
金钱
3044
HASS币
87
发表于 2019-9-25 22:40:01 | 显示全部楼层
本帖最后由 令狐鸣 于 2019-9-25 22:43 编辑

大佬求助啊~

首先感谢一下,这个方法太好了,树莓派刚好换成虚拟机服务器一直用蓝牙usb距离不够,家里蓝牙设备失联好久.
用闲置的树莓派按步骤一切正常,ha完美读取蓝牙设备.

但是有个问题,不知道我的什么原因,不稳定,运行一段时间就报错停止,再打不开,必须重启树莓派才能.抽风时间不定.研究了下日志基本相同,求给看看可能是什么问题.

日志:

首先会报这些

Fatal error while executing worker command: BTLEManagementError
Traceback (most recent call last):
  File "gateway.py", line 91, in <module>
    raise e
  File "gateway.py", line 73, in <module>
    mqtt.publish(_WORKERS_QUEUE.get(timeout=10).execute())
  File "/opt/bt-mqtt-gateway/workers_manager.py", line 55, in execute
    messages = self._callback(*self._args)

然后是不同设备,每次不一样,感觉是刚好碰上那个就是哪个


File "/opt/bt-mqtt-gateway/workers/miscale.py", line 22, in status_update
    topic=self.format_topic("weight/kg"), payload=self._get_weight()
  File "/opt/bt-mqtt-gateway/workers/miscale.py", line 31, in _get_weight
    scanner.scan(self.SCAN_TIMEOUT, passive=True)

##########################
File "/opt/bt-mqtt-gateway/workers/btrssi.py", line 77, in status_update
    devices = scanner.scan(5.0)

之后基本又相同btle.py问题


File "/usr/local/lib/python3.7/dist-packages/bluepy/btle.py", line 854, in scan
    self.stop()
  File "/usr/local/lib/python3.7/dist-packages/bluepy/btle.py", line 803, in stop
    self._mgmtCmd(self._cmd()+"end")
  File "/usr/local/lib/python3.7/dist-packages/bluepy/btle.py", line 312, in _mgmtCmd
    raise BTLEManagementError("Failed to execute management command '%s'" % (cmd), rsp)
bluepy.btle.BTLEManagementError: Failed to execute management command 'pasvend'


python也不太懂,这个方法真是看到了希望.希望可以完美运用.

不知道是不是python或者Bluez版本问题.
用的3.7和5.5

回复

使用道具 举报

0

主题

2

帖子

18

积分

新手上路

Rank: 1

积分
18
金钱
16
HASS币
0
发表于 2019-12-30 14:12:11 | 显示全部楼层
这篇干货满满,点赞
回复

使用道具 举报

0

主题

18

帖子

68

积分

注册会员

Rank: 2

积分
68
金钱
50
HASS币
0
发表于 2019-12-30 22:31:02 | 显示全部楼层
这个牛皮
回复

使用道具 举报

0

主题

209

帖子

1483

积分

金牌会员

Rank: 6Rank: 6

积分
1483
金钱
1274
HASS币
0
QQ
发表于 2020-1-2 18:19:32 | 显示全部楼层
自己的做的这个蓝牙网关可以连接米家所有的蓝牙设备嘛?例如绿米的蓝牙锁之类的?
回复

使用道具 举报

0

主题

101

帖子

1006

积分

论坛积极会员

积分
1006
金钱
905
HASS币
0
发表于 2020-2-27 10:12:09 | 显示全部楼层
接入小米电子称成功,有个BUG会导致服务自动终止。  >3000oml的这个测身体阻抗的经常超出设定值导致异常。在程序文件中给注释掉就好了。
回复

使用道具 举报

10

主题

181

帖子

2580

积分

金牌会员

Rank: 6Rank: 6

积分
2580
金钱
2394
HASS币
60
发表于 2020-3-21 12:59:39 | 显示全部楼层
一看就会,一试就废
大佬: 请勿咨询任何问题,所有问题都能 Google 到答案
回复

使用道具 举报

0

主题

19

帖子

84

积分

注册会员

Rank: 2

积分
84
金钱
65
HASS币
0
发表于 2020-5-31 17:43:28 | 显示全部楼层
楼主您好,如果蓝牙设备不在您这三项设备里,配置是要自己写吧?
回复

使用道具 举报

3

主题

136

帖子

1478

积分

金牌会员

Rank: 6Rank: 6

积分
1478
金钱
1342
HASS币
0
发表于 2020-9-8 14:36:35 | 显示全部楼层
本帖最后由 zeze247 于 2020-9-8 14:37 编辑

你好大神按步骤执行python3 gateway.py  出现这种错误。麻烦问一下什么情况?C:\Users\MaNing\Desktop\微信截图_20200908143534.png
root@raspberrypi:/opt/bt-mqtt-gateway# python3 gateway.py
Traceback (most recent call last):
  File "gateway.py", line 20, in <module>
    from config import settings
  File "/opt/bt-mqtt-gateway/config.py", line 6, in <module>
    settings = yaml.safe_load(f)
  File "/usr/local/lib/python3.7/dist-packages/yaml/__init__.py", line 162, in safe_load
    return load(stream, SafeLoader)
  File "/usr/local/lib/python3.7/dist-packages/yaml/__init__.py", line 112, in load
    loader = Loader(stream)
  File "/usr/local/lib/python3.7/dist-packages/yaml/loader.py", line 34, in __init__
    Reader.__init__(self, stream)
  File "/usr/local/lib/python3.7/dist-packages/yaml/reader.py", line 85, in __init__
    self.determine_encoding()
  File "/usr/local/lib/python3.7/dist-packages/yaml/reader.py", line 124, in determine_encoding
    self.update_raw()
  File "/usr/local/lib/python3.7/dist-packages/yaml/reader.py", line 178, in update_raw
    data = self.stream.read(size)
  File "/usr/lib/python3.7/codecs.py", line 322, in decode
    (result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xc0 in position 808: invalid start byte

回复

使用道具 举报

106

主题

549

帖子

2745

积分

金牌会员

Rank: 6Rank: 6

积分
2745
金钱
2196
HASS币
20
发表于 2020-9-9 22:21:29 | 显示全部楼层

ESP32的蓝牙信号太弱,隔一堵墙就基本收不到信号了,全屋蓝牙设备要接入估计要部署几个,这个树莓派不知颠倒信号如何
回复

使用道具 举报

0

主题

15

帖子

120

积分

注册会员

Rank: 2

积分
120
金钱
105
HASS币
0
发表于 2020-9-10 00:19:47 来自手机 | 显示全部楼层
好详细教程,有个二代的派一直吃灰中,好像没什么用
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-4-25 02:31 , Processed in 2.729158 second(s), 37 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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