fhempy: ble_monitor (Bluetooth Low Energy)

Begonnen von dominik, 15 Februar 2022, 23:36:47

Vorheriges Thema - Nächstes Thema

dominik

Hallo zusammen,

ich habe die Tage ein neues Modul für BLE Devices erstellt. Es ist auf Basis der ble_monitor Home Assistant Implementierung und unterstützt unzählige BLE Devices, siehe hier:
https://custom-components.github.io/ble_monitor/by_brand

Einrichtung:
- fhempy Installation wenn noch nicht vorhanden
https://github.com/dominikkarall/fhempy#installation

- und danach die Anleitung hier befolgen:
https://github.com/dominikkarall/fhempy/blob/master/FHEM/bindings/python/fhempy/lib/ble_monitor/README.md

Für die Xiaomi Mi Scale habe ich auf Basis von ble_monitor eine eigene Implementierung gemacht:
https://github.com/dominikkarall/fhempy/blob/master/FHEM/bindings/python/fhempy/lib/miscale/README.md

Diese berechnet auch alle BMI/Fett/Wasser/etc. Werte wie in der Mi Fit App.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

RockFan

#1
Hi dominik,

ich dachte mir, das muss ich gleich mal ausprobieren (habe auch eine Mi Scale - allerdings Version 1). Deshalb habe ich erstmal fhem und dann fhempy aktualisiert und dann das Device für die Waage definiert.

Leider klappt das noch nicht so ganz bei mir. Im Status steht jetzt folgende Fehlermeldung:


Failed to load module miscale: Traceback (most recent call last):
  File "/opt/fhem/.local/lib/python3.7/site-packages/fhempy/lib/fhem_pythonbinding.py", line 269, in _onMessage
    functools.partial(importlib.import_module, pymodule)
  File "/opt/fhem/.local/lib/python3.7/site-packages/fhempy/lib/utils.py", line 34, in run_blocking
    return await asyncio.get_event_loop().run_in_executor(pool, function)
  File "/usr/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/lib/python3.7/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
  File "<frozen importlib._bootstrap>", line 983, in _find_and_load
  File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 728, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/opt/fhem/.local/lib/python3.7/site-packages/fhempy/lib/miscale/miscale.py", line 3, in <module>
    from fhempy.lib.ble_monitor.blemonitor import BLEmonitor
  File "/opt/fhem/.local/lib/python3.7/site-packages/fhempy/lib/ble_monitor/blemonitor.py", line 8, in <module>
    from fhempy.lib.ble_monitor.hcidump import HCIdump
  File "/opt/fhem/.local/lib/python3.7/site-packages/fhempy/lib/ble_monitor/hcidump.py", line 8, in <module>
    from bleparser import BleParser
  File "/opt/fhem/.local/lib/python3.7/site-packages/bleparser/__init__.py", line 4, in <module>
    from .altbeacon import parse_altbeacon
  File "/opt/fhem/.local/lib/python3.7/site-packages/bleparser/altbeacon.py", line 5, in <module>
    from typing import Final
ImportError: cannot import name 'Final' from 'typing' (/usr/lib/python3.7/typing.py)
Raspbian (Buster) auf Raspberry Pi 4 /  CUL + RFXTRX + TCM / FS20, FHT 80B, S300TH, Intertechno, DMX, Milight, EnOcean, Homematic, AMAD, Home Connect, MiSmartHome, Yeelight, ...

dominik

Kannst du bitte

sudo -u fhem bash
pip3 install typing

probieren? Womöglich ist das bei Python 3.7 noch nicht im package.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

dominik

Ich habe etwas gegoogelt, scheint so, also ob das typing Final für Python 3.7 nicht verfügbar ist.

Ich hab mal bei der bleparser Library ein Issue für Python 3.7 aufgemacht.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

RockFan

Auch wenn die Info vielleicht nicht mehr nötig ist, das Ergebnis der beiden Kommandos ist:

Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
Requirement already satisfied: typing in /opt/fhem/.local/lib/python3.7/site-packages (3.7.4.3)

Raspbian (Buster) auf Raspberry Pi 4 /  CUL + RFXTRX + TCM / FS20, FHT 80B, S300TH, Intertechno, DMX, Milight, EnOcean, Homematic, AMAD, Home Connect, MiSmartHome, Yeelight, ...

dominik

Ich habe gerade erst gesehen, dass der Python 3.7 Support erst vor kurzem entfernt wurde:
https://github.com/Ernst79/bleparser/commit/55fd52eb94dea27c0a8eb5902e39ceb579abd2eb

Die Chance diesen wieder zurück zu bekommen, dürften also nicht all zu hoch sein. Sollte er doch eingebaut werden, werde ich es aktualisieren. Ich würde vorerst empfehlen auf bullseye und damit Python 3.9 als Standard zu aktualisieren.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

Nighthawk

#6
Hallo Dominik,

danke für deine Arbeit, damit habe ich schon mal meine Mi Body Scale mit miscale ins FHEM gebracht.

Leider klappt es mit den Xiaomi / Honeywell Rauchmelder nicht, es kommen einfach keine Daten in das Device:
Internals:
   DEF        ble_monitor 54:EF:44:E4:6A:81
   FHEMPYTYPE ble_monitor
   FUUID      620f9d9c-f33f-357a-6abe-a1693a5f4e108f38
   IODev      local_pybinding
   NAME       Feuermelder_SZ
   NR         596
   PYTHONTYPE ble_monitor
   STATE      ???
   TYPE       fhempy
   args:
     Feuermelder_SZ
     fhempy
     ble_monitor
     54:EF:44:E4:6A:81
   argsh:
Attributes:


Anfangs kam noch eine Fehlermeldung dass der BleParser fehlt, diesen habe ich mit
pip install bleparser nachinstalliert.

Was mache ich falsch?

dominik

Kannst du bitte verbose 5 machen und dann den Output posten?
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

Nighthawk

2022.02.18 15:25:10 4: BindingsIo (local_pybinding): start fhempyFunction: Feuermelder_SZ => Set (83452285)
2022.02.18 15:25:10 4: BindingsIo (local_pybinding): <<< WS: {"defargs":["Feuermelder_SZ","fhempy","ble_monitor","54:EF:44:E4:6A:81"],"NAME":"Feuermelder_SZ","argsh":{},"id":"83452285","args":["Feuermelder_SZ","?"],"msgtype":"function","defargsh":{},"FHEMPYTYPE":"ble_monitor","PYTHONTYPE":"ble_monitor","function":"Set"}
2022.02.18 15:25:10 5: DevIo_SimpleWrite local_pybinding: 7b2264656661726773223a5b2246657565726d656c6465725f535a222c226668656d7079222c22626c655f6d6f6e69746f72222c2235343a45463a34343a45343a36413a3831225d2c224e414d45223a2246657565726d656c6465725f535a222c226172677368223a7b7d2c226964223a223833343532323835222c2261726773223a5b2246657565726d656c6465725f535a222c223f225d2c226d736774797065223a2266756e6374696f6e222c226465666172677368223a7b7d2c224648454d505954595045223a22626c655f6d6f6e69746f72222c22505954484f4e54595045223a22626c655f6d6f6e69746f72222c2266756e6374696f6e223a22536574227d
2022.02.18 15:25:10 5: BindingsIo (local_pybinding): DevIo_SimpleRead
2022.02.18 15:25:10 5: BindingsIo (local_pybinding): DevIo_SimpleRead WithTimeout
2022.02.18 15:25:10 4: BindingsIo (local_pybinding): >>> WS: {"defargs": ["Feuermelder_SZ", "fhempy", "ble_monitor", "54:EF:44:E4:6A:81"], "NAME": "Feuermelder_SZ", "argsh": {}, "id": "83452285", "args": ["Feuermelder_SZ", "?"], "msgtype": "function", "defargsh": {}, "FHEMPYTYPE": "ble_monitor", "PYTHONTYPE": "ble_monitor", "function": "Set", "finished": 1, "returnval": "Unknown argument ?, choose one of "}
2022.02.18 15:25:10 5: BindingsIo (local_pybinding): QUEUE: start handling - 1
2022.02.18 15:25:10 5: processMessage: {"defargs": ["Feuermelder_SZ", "fhempy", "ble_monitor", "54:EF:44:E4:6A:81"], "NAME": "Feuermelder_SZ", "argsh": {}, "id": "83452285", "args": ["Feuermelder_SZ", "?"], "msgtype": "function", "defargsh": {}, "FHEMPYTYPE": "ble_monitor", "PYTHONTYPE": "ble_monitor", "function": "Set", "finished": 1, "returnval": "Unknown argument ?, choose one of "}
2022.02.18 15:25:10 5: BindingsIo (local_pybinding): QUEUE: finished handling - 0
2022.02.18 15:25:10 4: BindingsIo (local_pybinding): end fhempyFunction: Feuermelder_SZ => Set (83452285) - result: Unknown argument ?, choose one of
2022.02.18 15:25:10 4: BindingsIo (local_pybinding): start fhempyFunction: Feuermelder_SZ => FW_detailFn (12696733)
2022.02.18 15:25:10 4: BindingsIo (local_pybinding): <<< WS: {"PYTHONTYPE":"ble_monitor","FHEMPYTYPE":"ble_monitor","function":"FW_detailFn","defargsh":{},"msgtype":"function","id":"12696733","argsh":{},"args":["WEB","Feuermelder_SZ","",null],"defargs":["Feuermelder_SZ","fhempy","ble_monitor","54:EF:44:E4:6A:81"],"NAME":"Feuermelder_SZ"}
2022.02.18 15:25:10 5: DevIo_SimpleWrite local_pybinding: 7b22505954484f4e54595045223a22626c655f6d6f6e69746f72222c224648454d505954595045223a22626c655f6d6f6e69746f72222c2266756e6374696f6e223a2246575f64657461696c466e222c226465666172677368223a7b7d2c226d736774797065223a2266756e6374696f6e222c226964223a223132363936373333222c226172677368223a7b7d2c2261726773223a5b22574542222c2246657565726d656c6465725f535a222c22222c6e756c6c5d2c2264656661726773223a5b2246657565726d656c6465725f535a222c226668656d7079222c22626c655f6d6f6e69746f72222c2235343a45463a34343a45343a36413a3831225d2c224e414d45223a2246657565726d656c6465725f535a227d
2022.02.18 15:25:10 5: BindingsIo (local_pybinding): DevIo_SimpleRead
2022.02.18 15:25:10 5: BindingsIo (local_pybinding): DevIo_SimpleRead WithTimeout
2022.02.18 15:25:10 4: BindingsIo (local_pybinding): >>> WS: {"PYTHONTYPE": "ble_monitor", "FHEMPYTYPE": "ble_monitor", "function": "FW_detailFn", "defargsh": {}, "msgtype": "function", "id": "12696733", "argsh": {}, "args": ["WEB", "Feuermelder_SZ", "", null], "defargs": ["Feuermelder_SZ", "fhempy", "ble_monitor", "54:EF:44:E4:6A:81"], "NAME": "Feuermelder_SZ", "finished": 1, "returnval": "<script type=\"text/javascript\">\n        function displayHelp() {\n          var x = document.getElementById(\"fhempyReadme\");\n          if (x.style.display === \"none\") {\n            x.style.display = \"block\";\n          } else {\n            x.style.display = \"none\";\n          }\n          var off = $(\"#fhempyReadme\").position().top-20;\n          $('body, html').animate({scrollTop:off}, 500);\n        }\n        \n        $(document).ready(function() {\n          $(\"#content\").append('<div class=\"makeTable help\" id=\"fhempyReadme\"></div>');\n          $(\"#fhempyReadme\").html(`<h1>ble_monitor</h1>\n\n<p>Monitor BLE devices (trackers, toothbrushes, body scales, ...) passively.</p>\n\n<p>List of supported devices: https://custom-components.github.io/ble_monitor/devices</p>\n\n<h1>Usage</h1>\n\n<p><code>\nsudo setcap 'cap_net_raw,cap_net_admin+eip' \\`readlink -f \\\\\\`which python3\\\\\\`\\`\n</code></p>\n\n<p><code>\ndefine my_body_scale fhempy ble_monitor MAC\n</code></p>\n`);\n          document.getElementById(\"fhempyReadme\").style.display = \"none\";\n\n          var helpCmdStr = '{}';\n          var helpCmdJson = JSON.parse(helpCmdStr);\n          $(\"select.set\").change(helpSetAction);\n          function\n          helpSetAction(){\n            var cmd = $(\"select.set\").val()\n            if(helpCmdJson[cmd] && helpCmdJson[cmd].help) {\n              if (document.getElementById(\"idCmdHelp\")===null) {\n                $('<div id=\"idCmdHelp\" class=\"makeTable help\"></div>')\n                      .insertBefore(\"div.makeTable.internals\");\n              }\n              $(\"div#idCmdHelp\").html(helpCmdJson[cmd].help + \"<br>\");\n            } else {\n              $(\"div#idCmdHelp\").remove();\n            }\n          }\n          helpSetAction();\n\n          var helpAttrStr = '{\"hci_interface\": {\"help\": \"{0: \\\\\\\"04:ED:33:FA:53:2E\\\\\\\"}\"}}';\n          var helpAttrJson = JSON.parse(helpAttrStr);\n          $(\"select.attr\").change(helpAttrAction);\n          function\n          helpAttrAction(){\n            var cmd = $(\"select.attr\").val()\n            if(helpAttrJson[cmd] && helpAttrJson[cmd].help) {\n              if (document.getElementById(\"idAttrHelp\")===null) {\n                $('<div id=\"idAttrHelp\" class=\"makeTable help\"></div>')\n                      .insertBefore(\"div.makeTable.attributes\");\n              }\n              $(\"div#idAttrHelp\").html(helpAttrJson[cmd].help + \"<br>\");\n            } else {\n              $(\"div#idAttrHelp\").remove();\n            }\n          }\n          helpAttrAction();\n\n          var helpLink = document.getElementById(\"content\")\n            .getElementsByClassName(\"detLink devSpecHelp\");\n          helpLink[0].innerHTML = '<div class=\"detLink devSpecHelp\"><a href=\"#\" onclick=\"displayHelp();return false;\">Device specific help</a></div>';\n        });\n        </script>"}
2022.02.18 15:25:10 5: BindingsIo (local_pybinding): QUEUE: start handling - 1
2022.02.18 15:25:10 5: processMessage: {"PYTHONTYPE": "ble_monitor", "FHEMPYTYPE": "ble_monitor", "function": "FW_detailFn", "defargsh": {}, "msgtype": "function", "id": "12696733", "argsh": {}, "args": ["WEB", "Feuermelder_SZ", "", null], "defargs": ["Feuermelder_SZ", "fhempy", "ble_monitor", "54:EF:44:E4:6A:81"], "NAME": "Feuermelder_SZ", "finished": 1, "returnval": "<script type=\"text/javascript\">\n        function displayHelp() {\n          var x = document.getElementById(\"fhempyReadme\");\n          if (x.style.display === \"none\") {\n            x.style.display = \"block\";\n          } else {\n            x.style.display = \"none\";\n          }\n          var off = $(\"#fhempyReadme\").position().top-20;\n          $('body, html').animate({scrollTop:off}, 500);\n        }\n        \n        $(document).ready(function() {\n          $(\"#content\").append('<div class=\"makeTable help\" id=\"fhempyReadme\"></div>');\n          $(\"#fhempyReadme\").html(`<h1>ble_monitor</h1>\n\n<p>Monitor BLE devices (trackers, toothbrushes, body scales, ...) passively.</p>\n\n<p>List of supported devices: https://custom-components.github.io/ble_monitor/devices</p>\n\n<h1>Usage</h1>\n\n<p><code>\nsudo setcap 'cap_net_raw,cap_net_admin+eip' \\`readlink -f \\\\\\`which python3\\\\\\`\\`\n</code></p>\n\n<p><code>\ndefine my_body_scale fhempy ble_monitor MAC\n</code></p>\n`);\n          document.getElementById(\"fhempyReadme\").style.display = \"none\";\n\n          var helpCmdStr = '{}';\n          var helpCmdJson = JSON.parse(helpCmdStr);\n          $(\"select.set\").change(helpSetAction);\n          function\n          helpSetAction(){\n            var cmd = $(\"select.set\").val()\n            if(helpCmdJson[cmd] && helpCmdJson[cmd].help) {\n              if (document.getElementById(\"idCmdHelp\")===null) {\n                $('<div id=\"idCmdHelp\" class=\"makeTable help\"></div>')\n                      .insertBefore(\"div.makeTable.internals\");\n              }\n              $(\"div#idCmdHelp\").html(helpCmdJson[cmd].help + \"<br>\");\n            } else {\n              $(\"div#idCmdHelp\").remove();\n            }\n          }\n          helpSetAction();\n\n          var helpAttrStr = '{\"hci_interface\": {\"help\": \"{0: \\\\\\\"04:ED:33:FA:53:2E\\\\\\\"}\"}}';\n          var helpAttrJson = JSON.parse(helpAttrStr);\n          $(\"select.attr\").change(helpAttrAction);\n          function\n          helpAttrAction(){\n            var cmd = $(\"select.attr\").val()\n            if(helpAttrJson[cmd] && helpAttrJson[cmd].help) {\n              if (document.getElementById(\"idAttrHelp\")===null) {\n                $('<div id=\"idAttrHelp\" class=\"makeTable help\"></div>')\n                      .insertBefore(\"div.makeTable.attributes\");\n              }\n              $(\"div#idAttrHelp\").html(helpAttrJson[cmd].help + \"<br>\");\n            } else {\n              $(\"div#idAttrHelp\").remove();\n            }\n          }\n          helpAttrAction();\n\n          var helpLink = document.getElementById(\"content\")\n            .getElementsByClassName(\"detLink devSpecHelp\");\n          helpLink[0].innerHTML = '<div class=\"detLink devSpecHelp\"><a href=\"#\" onclick=\"displayHelp();return false;\">Device specific help</a></div>';\n        });\n        </script>"}
2022.02.18 15:25:10 5: BindingsIo (local_pybinding): QUEUE: finished handling - 0
2022.02.18 15:25:10 4: BindingsIo (local_pybinding): end fhempyFunction: Feuermelder_SZ => FW_detailFn (12696733) - result: <script type="text/javascript">
        function displayHelp() {
          var x = document.getElementById("fhempyReadme");
          if (x.style.display === "none") {
            x.style.display = "block";
          } else {
            x.style.display = "none";
          }
          var off = $("#fhempyReadme").position().top-20;
          $('body, html').animate({scrollTop:off}, 500);
        }
       
        $(document).ready(function() {
          $("#content").append('<div class="makeTable help" id="fhempyReadme"></div>');
          $("#fhempyReadme").html(`<h1>ble_monitor</h1>

<p>Monitor BLE devices (trackers, toothbrushes, body scales, ...) passively.</p>

<p>List of supported devices: https://custom-components.github.io/ble_monitor/devices</p>

<h1>Usage</h1>

<p><code>
sudo setcap 'cap_net_raw,cap_net_admin+eip' \`readlink -f \\\`which python3\\\`\`
</code></p>

<p><code>
define my_body_scale fhempy ble_monitor MAC
</code></p>
`);
          document.getElementById("fhempyReadme").style.display = "none";

          var helpCmdStr = '{}';
          var helpCmdJson = JSON.parse(helpCmdStr);
          $("select.set").change(helpSetAction);
          function
          helpSetAction(){
            var cmd = $("select.set").val()
            if(helpCmdJson[cmd] && helpCmdJson[cmd].help) {
              if (document.getElementById("idCmdHelp")===null) {
                $('<div id="idCmdHelp" class="makeTable help"></div>')
                      .insertBefore("div.makeTable.internals");
              }
              $("div#idCmdHelp").html(helpCmdJson[cmd].help + "<br>");
            } else {
              $("div#idCmdHelp").remove();
            }
          }
          helpSetAction();

          var helpAttrStr = '{"hci_interface": {"help": "{0: \\\"04:ED:33:FA:53:2E\\\"}"}}';
          var helpAttrJson = JSON.parse(helpAttrStr);
          $("select.attr").change(helpAttrAction);
          function
          helpAttrAction(){
            var cmd = $("select.attr").val()
            if(helpAttrJson[cmd] && helpAttrJson[cmd].help) {
              if (document.getElementById("idAttrHelp")===null) {
                $('<div id="idAttrHelp" class="makeTable help"></div>')
                      .insertBefore("div.makeTable.attributes");
              }
              $("div#idAttrHelp").html(helpAttrJson[cmd].help + "<br>");
            } else {
              $("div#idAttrHelp").remove();
            }
          }
          helpAttrAction();

          var helpLink = document.getElementById("content")
            .getElementsByClassName("detLink devSpecHelp");
          helpLink[0].innerHTML = '<div class="detLink devSpecHelp"><a href="#" onclick="displayHelp();return false;">Device specific help</a></div>';
        });
        </script>
2022.02.18 15:25:10 4: BindingsIo (local_pybinding): start fhempyFunction: Feuermelder_SZ => Set (30967999)
2022.02.18 15:25:10 4: BindingsIo (local_pybinding): <<< WS: {"defargsh":{},"msgtype":"function","function":"Set","PYTHONTYPE":"ble_monitor","FHEMPYTYPE":"ble_monitor","id":"30967999","argsh":{},"args":["Feuermelder_SZ","?"],"NAME":"Feuermelder_SZ","defargs":["Feuermelder_SZ","fhempy","ble_monitor","54:EF:44:E4:6A:81"]}
2022.02.18 15:25:10 5: DevIo_SimpleWrite local_pybinding: 7b226465666172677368223a7b7d2c226d736774797065223a2266756e6374696f6e222c2266756e6374696f6e223a22536574222c22505954484f4e54595045223a22626c655f6d6f6e69746f72222c224648454d505954595045223a22626c655f6d6f6e69746f72222c226964223a223330393637393939222c226172677368223a7b7d2c2261726773223a5b2246657565726d656c6465725f535a222c223f225d2c224e414d45223a2246657565726d656c6465725f535a222c2264656661726773223a5b2246657565726d656c6465725f535a222c226668656d7079222c22626c655f6d6f6e69746f72222c2235343a45463a34343a45343a36413a3831225d7d
2022.02.18 15:25:10 5: BindingsIo (local_pybinding): DevIo_SimpleRead
2022.02.18 15:25:10 5: BindingsIo (local_pybinding): DevIo_SimpleRead WithTimeout
2022.02.18 15:25:10 4: BindingsIo (local_pybinding): >>> WS: {"defargsh": {}, "msgtype": "function", "function": "Set", "PYTHONTYPE": "ble_monitor", "FHEMPYTYPE": "ble_monitor", "id": "30967999", "argsh": {}, "args": ["Feuermelder_SZ", "?"], "NAME": "Feuermelder_SZ", "defargs": ["Feuermelder_SZ", "fhempy", "ble_monitor", "54:EF:44:E4:6A:81"], "finished": 1, "returnval": "Unknown argument ?, choose one of "}
2022.02.18 15:25:10 5: BindingsIo (local_pybinding): QUEUE: start handling - 1
2022.02.18 15:25:10 5: processMessage: {"defargsh": {}, "msgtype": "function", "function": "Set", "PYTHONTYPE": "ble_monitor", "FHEMPYTYPE": "ble_monitor", "id": "30967999", "argsh": {}, "args": ["Feuermelder_SZ", "?"], "NAME": "Feuermelder_SZ", "defargs": ["Feuermelder_SZ", "fhempy", "ble_monitor", "54:EF:44:E4:6A:81"], "finished": 1, "returnval": "Unknown argument ?, choose one of "}
2022.02.18 15:25:10 5: BindingsIo (local_pybinding): QUEUE: finished handling - 0
2022.02.18 15:25:10 4: BindingsIo (local_pybinding): end fhempyFunction: Feuermelder_SZ => Set (30967999) - result: Unknown argument ?, choose one of
2022.02.18 15:25:10 4: BindingsIo (local_pybinding): start fhempyFunction: Feuermelder_SZ => Get (48736647)
2022.02.18 15:25:10 4: BindingsIo (local_pybinding): <<< WS: {"argsh":{},"args":["Feuermelder_SZ","?"],"id":"48736647","NAME":"Feuermelder_SZ","defargs":["Feuermelder_SZ","fhempy","ble_monitor","54:EF:44:E4:6A:81"],"msgtype":"function","defargsh":{},"FHEMPYTYPE":"ble_monitor","PYTHONTYPE":"ble_monitor","function":"Get"}
2022.02.18 15:25:10 5: DevIo_SimpleWrite local_pybinding: 7b226172677368223a7b7d2c2261726773223a5b2246657565726d656c6465725f535a222c223f225d2c226964223a223438373336363437222c224e414d45223a2246657565726d656c6465725f535a222c2264656661726773223a5b2246657565726d656c6465725f535a222c226668656d7079222c22626c655f6d6f6e69746f72222c2235343a45463a34343a45343a36413a3831225d2c226d736774797065223a2266756e6374696f6e222c226465666172677368223a7b7d2c224648454d505954595045223a22626c655f6d6f6e69746f72222c22505954484f4e54595045223a22626c655f6d6f6e69746f72222c2266756e6374696f6e223a22476574227d
2022.02.18 15:25:10 5: BindingsIo (local_pybinding): DevIo_SimpleRead
2022.02.18 15:25:10 5: BindingsIo (local_pybinding): DevIo_SimpleRead WithTimeout
2022.02.18 15:25:10 4: BindingsIo (local_pybinding): >>> WS: {"argsh": {}, "args": ["Feuermelder_SZ", "?"], "id": "48736647", "NAME": "Feuermelder_SZ", "defargs": ["Feuermelder_SZ", "fhempy", "ble_monitor", "54:EF:44:E4:6A:81"], "msgtype": "function", "defargsh": {}, "FHEMPYTYPE": "ble_monitor", "PYTHONTYPE": "ble_monitor", "function": "Get", "finished": 1, "returnval": ""}
2022.02.18 15:25:10 5: BindingsIo (local_pybinding): QUEUE: start handling - 1
2022.02.18 15:25:10 5: processMessage: {"argsh": {}, "args": ["Feuermelder_SZ", "?"], "id": "48736647", "NAME": "Feuermelder_SZ", "defargs": ["Feuermelder_SZ", "fhempy", "ble_monitor", "54:EF:44:E4:6A:81"], "msgtype": "function", "defargsh": {}, "FHEMPYTYPE": "ble_monitor", "PYTHONTYPE": "ble_monitor", "function": "Get", "finished": 1, "returnval": ""}
2022.02.18 15:25:10 5: BindingsIo (local_pybinding): QUEUE: finished handling - 0
2022.02.18 15:25:10 4: BindingsIo (local_pybinding): end fhempyFunction: Feuermelder_SZ => Get (48736647) - result:
2022.02.18 15:25:10 4: WEB: /fhem?detail=Feuermelder_SZ&fw_id=1144 / RL:9264 / text/html; charset=UTF-8 / Content-Encoding: gzip
/ Cache-Control: no-cache, no-store, must-revalidate

dominik

Achso, bitte fhempy Log, hatte ich vergessen zu schreiben.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

Nighthawk

#10
2022-02-18 16:08:40,885 - INFO     - fhempy.lib.fhem_pythonbinding: Starting fhempy...
2022-02-18 16:08:40,891 - INFO     - fhempy.lib.fhem_pythonbinding: Waiting for FHEM connection
2022-02-18 16:08:40,912 - INFO     - websockets.server: server listening on 0.0.0.0:15733
2022-02-18 16:08:50,686 - INFO     - websockets.server: connection open
2022-02-18 16:08:50,686 - INFO     - fhempy.lib.fhem_pythonbinding: Incoming FHEM connection: 127.0.0.1
2022-02-18 16:08:50,744 - WARNING  - zeroconf: Error with socket 11 (('192.168.42.0', 5353))): [Errno 126] Required key not available
Traceback (most recent call last):
  File "/usr/lib/python3.9/asyncio/selector_events.py", line 1056, in sendto
    self._sock.sendto(data, addr)
OSError: [Errno 126] Required key not available
2022-02-18 16:08:51,284 - DEBUG    - Feuermelder_SZ: BLE monitor stopped
2022-02-18 16:08:51,284 - DEBUG    - Feuermelder_SZ: Spawning HCIdump thread
2022-02-18 16:08:51,285 - DEBUG    - Feuermelder_SZ: HCIdump thread: Init
2022-02-18 16:08:51,285 - INFO     - Feuermelder_SZ: Attention! Option report_unknown is enabled for Off sensors, be ready for a huge output
2022-02-18 16:08:51,285 - DEBUG    - Feuermelder_SZ: 0 encryptors mac:key pairs loaded
2022-02-18 16:08:51,285 - DEBUG    - Feuermelder_SZ: sensor whitelist: [54:EF:44:E4:6A:81]
2022-02-18 16:08:51,285 - DEBUG    - Feuermelder_SZ: 1 sensor whitelist item(s) loaded
2022-02-18 16:08:51,285 - DEBUG    - Feuermelder_SZ: 0 device tracker(s) being monitored
2022-02-18 16:08:51,285 - DEBUG    - Feuermelder_SZ: HCIdump thread: Run
2022-02-18 16:08:51,286 - DEBUG    - Feuermelder_SZ: HCIdump thread: BLEScanRequester._initialized is False for hci0,  waiting for connection...
2022-02-18 16:08:51,289 - DEBUG    - Feuermelder_SZ: HCIdump thread: joining
Exception in thread Thread-1:
Traceback (most recent call last):
  File "/usr/lib/python3.9/threading.py", line 973, in _bootstrap_inner
    self.run()
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/ble_monitor/hcidump.py", line 183, in run
    self._event_loop.run_until_complete(
  File "/usr/lib/python3.9/asyncio/base_events.py", line 640, in run_until_complete
    raise RuntimeError('Event loop stopped before Future completed.')
RuntimeError: Event loop stopped before Future completed.
2022-02-18 16:08:51,290 - DEBUG    - Feuermelder_SZ: HCIdump thread: joined
2022-02-18 16:08:51,291 - DEBUG    - Feuermelder_SZ: BLE monitor stopped
2022-02-18 16:08:51,291 - DEBUG    - Feuermelder_SZ: Spawning HCIdump thread
2022-02-18 16:08:51,291 - DEBUG    - Feuermelder_SZ: HCIdump thread: Init
2022-02-18 16:08:51,291 - INFO     - Feuermelder_SZ: Attention! Option report_unknown is enabled for Off sensors, be ready for a huge output
2022-02-18 16:08:51,291 - DEBUG    - Feuermelder_SZ: 0 encryptors mac:key pairs loaded
2022-02-18 16:08:51,291 - DEBUG    - Feuermelder_SZ: sensor whitelist: [54:EF:44:E4:6A:81, 54:EF:44:E3:E6:64]
2022-02-18 16:08:51,291 - DEBUG    - Feuermelder_SZ: 2 sensor whitelist item(s) loaded
2022-02-18 16:08:51,291 - DEBUG    - Feuermelder_SZ: 0 device tracker(s) being monitored
2022-02-18 16:08:51,291 - DEBUG    - Feuermelder_SZ: HCIdump thread: Run
2022-02-18 16:08:51,293 - DEBUG    - Feuermelder_SZ: HCIdump thread: BLEScanRequester._initialized is False for hci0,  waiting for connection...
2022-02-18 16:08:51,305 - DEBUG    - Feuermelder_SZ: HCIdump thread: joining
Exception in thread Thread-2:
Traceback (most recent call last):
  File "/usr/lib/python3.9/threading.py", line 973, in _bootstrap_inner
    self.run()
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/ble_monitor/hcidump.py", line 183, in run
    self._event_loop.run_until_complete(
  File "/usr/lib/python3.9/asyncio/base_events.py", line 640, in run_until_complete
    raise RuntimeError('Event loop stopped before Future completed.')
RuntimeError: Event loop stopped before Future completed.
2022-02-18 16:08:51,306 - DEBUG    - Feuermelder_SZ: HCIdump thread: joined
2022-02-18 16:08:51,306 - DEBUG    - Feuermelder_SZ: BLE monitor stopped
2022-02-18 16:08:51,306 - DEBUG    - Feuermelder_SZ: Spawning HCIdump thread
2022-02-18 16:08:51,306 - DEBUG    - Feuermelder_SZ: HCIdump thread: Init
2022-02-18 16:08:51,307 - INFO     - Feuermelder_SZ: Attention! Option report_unknown is enabled for Off sensors, be ready for a huge output
2022-02-18 16:08:51,307 - DEBUG    - Feuermelder_SZ: 0 encryptors mac:key pairs loaded
2022-02-18 16:08:51,307 - DEBUG    - Feuermelder_SZ: sensor whitelist: [54:EF:44:E4:6A:81, 54:EF:44:E3:E6:64, 54:EF:44:E4:72:D1]
2022-02-18 16:08:51,307 - DEBUG    - Feuermelder_SZ: 3 sensor whitelist item(s) loaded
2022-02-18 16:08:51,307 - DEBUG    - Feuermelder_SZ: 0 device tracker(s) being monitored
2022-02-18 16:08:51,307 - DEBUG    - Feuermelder_SZ: HCIdump thread: Run
2022-02-18 16:08:51,309 - DEBUG    - Feuermelder_SZ: HCIdump thread: BLEScanRequester._initialized is False for hci0,  waiting for connection...
2022-02-18 16:08:51,317 - DEBUG    - Feuermelder_SZ: HCIdump thread: joining
Exception in thread Thread-3:
Traceback (most recent call last):
  File "/usr/lib/python3.9/threading.py", line 973, in _bootstrap_inner
    self.run()
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/ble_monitor/hcidump.py", line 183, in run
    self._event_loop.run_until_complete(
  File "/usr/lib/python3.9/asyncio/base_events.py", line 640, in run_until_complete
    raise RuntimeError('Event loop stopped before Future completed.')
RuntimeError: Event loop stopped before Future completed.
2022-02-18 16:08:51,318 - DEBUG    - Feuermelder_SZ: HCIdump thread: joined
2022-02-18 16:08:51,318 - DEBUG    - Feuermelder_SZ: BLE monitor stopped
2022-02-18 16:08:51,318 - DEBUG    - Feuermelder_SZ: Spawning HCIdump thread
2022-02-18 16:08:51,318 - DEBUG    - Feuermelder_SZ: HCIdump thread: Init
2022-02-18 16:08:51,319 - INFO     - Feuermelder_SZ: Attention! Option report_unknown is enabled for Off sensors, be ready for a huge output
2022-02-18 16:08:51,319 - DEBUG    - Feuermelder_SZ: 0 encryptors mac:key pairs loaded
2022-02-18 16:08:51,319 - DEBUG    - Feuermelder_SZ: sensor whitelist: [54:EF:44:E4:6A:81, 54:EF:44:E3:E6:64, 54:EF:44:E4:72:D1, FD:32:B5:9C:4F:CC]
2022-02-18 16:08:51,319 - DEBUG    - Feuermelder_SZ: 4 sensor whitelist item(s) loaded
2022-02-18 16:08:51,319 - DEBUG    - Feuermelder_SZ: 0 device tracker(s) being monitored
2022-02-18 16:08:51,319 - DEBUG    - Feuermelder_SZ: HCIdump thread: Run
2022-02-18 16:08:51,320 - DEBUG    - Feuermelder_SZ: HCIdump thread: BLEScanRequester._initialized is False for hci0,  waiting for connection...
2022-02-18 16:08:51,326 - ERROR    - asyncio: Task was destroyed but it is pending!
task: <Task pending name='Task-62' coro=<Event.wait() done, defined at /usr/lib/python3.9/asyncio/locks.py:213> wait_for=<Future pending cb=[<TaskWakeupMethWrapper object at 0x7faff51f09a0>()]> cb=[_release_waiter(<Future pendi...ff51f0850>()]>)() at /usr/lib/python3.9/asyncio/tasks.py:416]>
2022-02-18 16:08:51,327 - ERROR    - asyncio: Task was destroyed but it is pending!
task: <Task pending name='Task-67' coro=<Event.wait() done, defined at /usr/lib/python3.9/asyncio/locks.py:213> wait_for=<Future pending cb=[<TaskWakeupMethWrapper object at 0x7faff51f06a0>()]> cb=[_release_waiter(<Future pendi...ff51f0970>()]>)() at /usr/lib/python3.9/asyncio/tasks.py:416]>
2022-02-18 16:08:51,327 - ERROR    - asyncio: Task was destroyed but it is pending!
task: <Task pending name='Task-80' coro=<Event.wait() done, defined at /usr/lib/python3.9/asyncio/locks.py:213> wait_for=<Future pending cb=[<TaskWakeupMethWrapper object at 0x7faff51f0700>()]> cb=[_release_waiter(<Future pendi...ff521c0a0>()]>)() at /usr/lib/python3.9/asyncio/tasks.py:416]>
2022-02-18 16:08:51,412 - DEBUG    - Feuermelder_SZ: HCIdump thread: connected to hci0
2022-02-18 16:08:51,412 - DEBUG    - Feuermelder_SZ: HCIdump thread: BLEScanRequester._initialized is True for hci0,  connection established, send_scan_request succeeded.
2022-02-18 16:08:51,413 - DEBUG    - Feuermelder_SZ: HCIdump thread: BLEScanRequester._initialized is True for hci0,  waiting for connection...
2022-02-18 16:08:51,413 - DEBUG    - Feuermelder_SZ: HCIdump thread: connected to hci0
Exception in thread Thread-4:
Traceback (most recent call last):
  File "/usr/lib/python3.9/threading.py", line 973, in _bootstrap_inner
    self.run()
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/ble_monitor/hcidump.py", line 196, in run
    self._event_loop.run_until_complete(
  File "/usr/lib/python3.9/asyncio/base_events.py", line 642, in run_until_complete
    return future.result()
  File "/opt/fhem/.local/lib/python3.9/site-packages/aioblescan/aioblescan.py", line 1806, in send_scan_request
    if self._use_ext_scan():
  File "/opt/fhem/.local/lib/python3.9/site-packages/aioblescan/aioblescan.py", line 1791, in _use_ext_scan
    return (self._supported_commands[37] & 0x60) == 0x60
TypeError: 'NoneType' object is not subscriptable

dominik

Kannst du bitte mal nur das eine Device versuchen welches Probleme macht? Bitte alle anderen Devices löschen und dann fhempy neu starten. Poste dann bitte wieder das fhempy Log.

Ich habe hier was dazu gefunden:
https://github.com/custom-components/ble_monitor/issues/388

Nur dürfte es dort ein Hardware Issue sein. Wenn bei dir jedoch 1 Device funktioniert, ist es vielleicht doch kein Hardware Issue. Lass mich bitte auch wissen was für ein System du hast.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

Nighthawk

Hallo Dominik,

mein FHEM System ist ein NUC ähnlicher x86 Computer mit Ubuntu 21.10.
Wie geschrieben funktioniert das miscale ohne probleme.

Die Feuermelder geben aber keinen Mucks an FHEM ab:

2022-02-19 14:35:44,672 - INFO     - fhempy.lib.fhem_pythonbinding: Starting fhempy...
2022-02-19 14:35:44,679 - INFO     - fhempy.lib.fhem_pythonbinding: Waiting for FHEM connection
2022-02-19 14:35:44,707 - INFO     - websockets.server: server listening on 0.0.0.0:15733
2022-02-19 14:35:54,771 - INFO     - websockets.server: connection open
2022-02-19 14:35:54,772 - INFO     - fhempy.lib.fhem_pythonbinding: Incoming FHEM connection: 127.0.0.1
2022-02-19 14:35:54,838 - WARNING  - zeroconf: Error with socket 13 (('192.168.42.0', 5353))): [Errno 126] Required key not available
Traceback (most recent call last):
  File "/usr/lib/python3.9/asyncio/selector_events.py", line 1056, in sendto
    self._sock.sendto(data, addr)
OSError: [Errno 126] Required key not available
2022-02-19 14:35:55,322 - DEBUG    - Feuermelder_SZ: BLE monitor stopped
2022-02-19 14:35:55,322 - DEBUG    - Feuermelder_SZ: Spawning HCIdump thread
2022-02-19 14:35:55,322 - DEBUG    - Feuermelder_SZ: HCIdump thread: Init
2022-02-19 14:35:55,322 - INFO     - Feuermelder_SZ: Attention! Option report_unknown is enabled for Off sensors, be ready for a huge output
2022-02-19 14:35:55,322 - DEBUG    - Feuermelder_SZ: 0 encryptors mac:key pairs loaded
2022-02-19 14:35:55,322 - DEBUG    - Feuermelder_SZ: sensor whitelist: [54:EF:44:E4:6A:81]
2022-02-19 14:35:55,322 - DEBUG    - Feuermelder_SZ: 1 sensor whitelist item(s) loaded
2022-02-19 14:35:55,323 - DEBUG    - Feuermelder_SZ: 0 device tracker(s) being monitored
2022-02-19 14:35:55,323 - DEBUG    - Feuermelder_SZ: HCIdump thread: Run
2022-02-19 14:35:55,324 - DEBUG    - Feuermelder_SZ: HCIdump thread: BLEScanRequester._initialized is False for hci0,  waiting for connection...
2022-02-19 14:35:55,327 - DEBUG    - Feuermelder_SZ: HCIdump thread: connected to hci0
2022-02-19 14:35:55,328 - DEBUG    - Feuermelder_SZ: HCIdump thread: BLEScanRequester._initialized is True for hci0,  connection established, send_scan_request succeeded.
2022-02-19 14:35:55,328 - DEBUG    - Feuermelder_SZ: HCIdump thread: start main event_loop
2022-02-19 14:35:55,335 - DEBUG    - Feuermelder_SZ: HCIdump thread: joining
2022-02-19 14:35:55,336 - DEBUG    - Feuermelder_SZ: HCIdump thread: main event_loop stopped, finishing.
2022-02-19 14:35:55,336 - DEBUG    - Feuermelder_SZ: HCIdump thread: Run finished
2022-02-19 14:35:55,336 - DEBUG    - Feuermelder_SZ: HCIdump thread: joined
2022-02-19 14:35:55,336 - DEBUG    - Feuermelder_SZ: BLE monitor stopped
2022-02-19 14:35:55,336 - DEBUG    - Feuermelder_SZ: Spawning HCIdump thread
2022-02-19 14:35:55,336 - DEBUG    - Feuermelder_SZ: HCIdump thread: Init
2022-02-19 14:35:55,336 - INFO     - Feuermelder_SZ: Attention! Option report_unknown is enabled for Off sensors, be ready for a huge output
2022-02-19 14:35:55,337 - DEBUG    - Feuermelder_SZ: 0 encryptors mac:key pairs loaded
2022-02-19 14:35:55,337 - DEBUG    - Feuermelder_SZ: sensor whitelist: [54:EF:44:E4:6A:81, FD:32:B5:9C:4F:CC]
2022-02-19 14:35:55,337 - DEBUG    - Feuermelder_SZ: 2 sensor whitelist item(s) loaded
2022-02-19 14:35:55,337 - DEBUG    - Feuermelder_SZ: 0 device tracker(s) being monitored
2022-02-19 14:35:55,337 - DEBUG    - Feuermelder_SZ: HCIdump thread: Run
2022-02-19 14:35:55,338 - DEBUG    - Feuermelder_SZ: HCIdump thread: BLEScanRequester._initialized is False for hci0,  waiting for connection...
2022-02-19 14:35:55,350 - DEBUG    - Feuermelder_SZ: HCIdump thread: connected to hci0
2022-02-19 14:35:55,350 - DEBUG    - Feuermelder_SZ: HCIdump thread: BLEScanRequester._initialized is True for hci0,  connection established, send_scan_request succeeded.
2022-02-19 14:35:55,351 - DEBUG    - Feuermelder_SZ: HCIdump thread: BLEScanRequester._initialized is False for hci0,  waiting for connection...
2022-02-19 14:35:55,355 - DEBUG    - Feuermelder_SZ: HCIdump thread: connected to hci0
2022-02-19 14:35:55,355 - DEBUG    - Feuermelder_SZ: HCIdump thread: BLEScanRequester._initialized is True for hci0,  connection established, send_scan_request succeeded.
2022-02-19 14:35:55,356 - DEBUG    - Feuermelder_SZ: HCIdump thread: start main event_loop

dominik

Nimm bitte die miscale auch noch raus und probier dann nochmals.
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

Nighthawk

2022-02-19 17:25:30,000 - INFO     - fhempy.lib.fhem_pythonbinding: Starting fhempy...
2022-02-19 17:25:30,006 - INFO     - fhempy.lib.fhem_pythonbinding: Waiting for FHEM connection
2022-02-19 17:25:30,026 - INFO     - websockets.server: server listening on 0.0.0.0:15733
2022-02-19 17:25:39,825 - INFO     - websockets.server: connection open
2022-02-19 17:25:39,826 - INFO     - fhempy.lib.fhem_pythonbinding: Incoming FHEM connection: 127.0.0.1
2022-02-19 17:25:39,875 - WARNING  - zeroconf: Error with socket 13 (('192.168.42.0', 5353))): [Errno 126] Required key not available
Traceback (most recent call last):
  File "/usr/lib/python3.9/asyncio/selector_events.py", line 1056, in sendto
    self._sock.sendto(data, addr)
OSError: [Errno 126] Required key not available
2022-02-19 17:25:40,281 - DEBUG    - Feuermelder_SZ: BLE monitor stopped
2022-02-19 17:25:40,281 - DEBUG    - Feuermelder_SZ: Spawning HCIdump thread
2022-02-19 17:25:40,281 - DEBUG    - Feuermelder_SZ: HCIdump thread: Init
2022-02-19 17:25:40,282 - INFO     - Feuermelder_SZ: Attention! Option report_unknown is enabled for Off sensors, be ready for a huge output
2022-02-19 17:25:40,282 - DEBUG    - Feuermelder_SZ: 0 encryptors mac:key pairs loaded
2022-02-19 17:25:40,282 - DEBUG    - Feuermelder_SZ: sensor whitelist: [54:EF:44:E4:6A:81]
2022-02-19 17:25:40,282 - DEBUG    - Feuermelder_SZ: 1 sensor whitelist item(s) loaded
2022-02-19 17:25:40,282 - DEBUG    - Feuermelder_SZ: 0 device tracker(s) being monitored
2022-02-19 17:25:40,282 - DEBUG    - Feuermelder_SZ: HCIdump thread: Run
2022-02-19 17:25:40,283 - DEBUG    - Feuermelder_SZ: HCIdump thread: BLEScanRequester._initialized is False for hci0,  waiting for connection...
2022-02-19 17:25:40,287 - DEBUG    - Feuermelder_SZ: HCIdump thread: connected to hci0
2022-02-19 17:25:40,287 - DEBUG    - Feuermelder_SZ: HCIdump thread: BLEScanRequester._initialized is True for hci0,  connection established, send_scan_request succeeded.
2022-02-19 17:25:40,287 - DEBUG    - Feuermelder_SZ: HCIdump thread: start main event_loop