Hallo
Ich habe einen OpenWRT Router und auf diesem läuft FHEM (nach einigem Probieren). Nun wollte ich mit dem Presence Modul lepresenced nutzen. Da fangen die Probleme an. Ich habe mich durch alle möglichen Anleitungen gekämpft und bekomme auch ein erfolgreiche Anfrage über hcitool lescan.
Leider steht im FHEm define immernoch disconnect.
Beim starten über ./lepresenced kommt folgende Fehlermeldung:
Can't locate Net/Server/Daemonize.pm in @INC (you may need to install the Net::Server::Daemonize module) (@INC contains: /usr/lib/perl5/5.28) at ./lepresenced line 46.
BEGIN failed--compilation aborted at ./lepresenced line 46.
Hat jemand eine Idee wie ich weiter verfahren könnte. Mein Ziel ist es über mein Standart-FHEM auf einem Raspi 4 meine LE BT Dongles auch über den Router abzufragen, da sie manchmal nicht erreichbar sind wenn ich im Garten bin. Da steht der Router günstiger.
Vielen Dank schonmal im Vorraus
Laut Fehlermeldung fehlt das perl Packet Server::Daemonize
Du schreibst leider nicht, auf was für ein System Du FHEM laufen lässt. Meide Glaskugel sagt:
apt-get install libnet-server-perl
Das FHEM System soll auf einem TP-Link Archer C7 v5 mit OpenWrt 19.07.3 laufen, bzw läuft es ja.
Da es bei OpenWrt OPKG und leider nicht apt-get gibt, fällt diese Option leider raus. Trotzdem Danke
Dann mußt Du Dir das Passende für OpenWRT raussuchen ...
Zitat von: Volker80 am 11 August 2020, 04:16:09
Das FHEM System soll auf einem TP-Link Archer C7 v5 mit OpenWrt 19.07.3 laufen, bzw läuft es ja.
Schau mal unter https://openwrt.org/packages/table/start (https://openwrt.org/packages/table/start?dataflt%5BName_pkg-dependencies*%7E%5D=perl*) ob du ein geeignetes perl Paket findest. Vielleicht perlbase-net (https://openwrt.org/packages/pkgdata/perlbase-net)? Das ist aber geraten. Es sieht aber so aus, als cpan (https://openwrt.org/packages/pkgdata/perlbase-cpan) auch zur Verfügung stände (FHEM Wiki: CPAN (https://wiki.fhem.de/wiki/CPAN)).
Installation via opkg auf Console
opkg update
opkg install [package1] [package2] [...]
oder via LuCI GUI.
Und die Pakete direkt notieren, die musst du nach jedem Upgrade nachinstallieren - oder du kompilierst selbst.
Aber mal ehrlich: FHEM auf einem Router? Außer als Spielerei/Test - warum?
Zitat von: yersinia am 11 August 2020, 09:31:53
Aber mal ehrlich: FHEM auf einem Router? Außer als Spielerei/Test - warum?
Naja mir geht es hauptsächlich um Presenced. Das funktioniert zwar auch ohne FHEM aber so lässte es sich leichter testen.
Dann werde ich mich mal mit cpan ausprobieren.
Dankeschön für die Hilfe
Zu presenced/ lepresenced kann ich leider nix beitragen - im Titel steht halt OpenWRT und so ist meine Anregung vielleicht auch passend/ willkommen, obwohl via Wifi statt Bluetooth.
Ottos Blog (http://heinz-otto.blogspot.com/2019/03/precence-und-openwrt-der-3-versuch.html (http://heinz-otto.blogspot.com/2019/03/precence-und-openwrt-der-3-versuch.html)) inspirierte mich zu schauen, wie ich den Status von Wifi-Teilnehmern aus OpenWRT nach Fhem kriege.
Ich mach das nun Event-basiert durch hostapd_cli und erhalte in Fhem den Status per MQTT-Nachrichten (wenn Dein Fhem doch einst auf einem anderen Gerät laufen soll, brauchst nur die Ziel-IP ändern).
OpenWRT-seitig braucht es die Pakete
hostapd-utils
mosquitto-client
und ein einfaches Script, das von hostapd_cli aufgerufen wird und den MQTT-Part macht. Fundorte https://forum.openwrt.org/t/solved-assoc-disassoc-event-trigger/3341/2 (https://forum.openwrt.org/t/solved-assoc-disassoc-event-trigger/3341/2) und https://helpmanual.io/help/hostapd_cli/ (https://helpmanual.io/help/hostapd_cli/).
Fhem-seitig MQTT2_Server mit aurocreate simple und der Rest läuft von allein. Als Ergebnis stehen in Fhem je Drahtlosschnittstelle ein MQTT-Device und darin die MAC-Adressen+Namen als Readings mit dem jeweiligen Status (connected/disconnected).
Wenn interessant, gebe ich gern die Details raus, ansonsten vergesst bitte mein reingrätschen :)
Viele Grüße
rob
...ich deute die "gefällt mir" Marker als ein Ja. ;)
Hier geht es weiter https://forum.fhem.de/index.php/topic,113524.msg1078007.html#msg1078007 (https://forum.fhem.de/index.php/topic,113524.msg1078007.html#msg1078007), damit ich diesen Fred nicht zu sehr kapere und Einsteiger nicht vergraule.
@Volker80: vielleicht taugt es Dir ja.
Viele Grüße
rob
Oh das mit mosquitto is ne gute Idee. ich werde mich da mal ransetzen und berichten wenn es läuft. Wifi is ja das eine aber LE BT scheint etwas schwieriger.
Vielen Dank für die Idee
PS: Ich denke dafür reichen meine Kenntnisse nicht aus. Mein Idee! Ein Skript was das Ergebnis vom HCITOOL LESCAN und SCAN via MQTT weitergibt. Vielleicht hat das ja schon jemand umgesetzt.
So mittlerweile hab ich eine Lösung ohne FHEM gefunden. Auf dem OpenWrt Router fehlten ein paar Pakete
perlbase-attributes und perlbase-universal sind Vorraussetzung um die Module
https://metacpan.org/pod/ExtUtils::MakeMaker (alternativ auch opkg install make)
https://metacpan.org/pod/Net::Server
Dann kamen noch
perlbase-getopt
zu installieren.
Danach läuft es und kann direkt über FHEM abgefragt werden.
lan-bluetooth xx:xx:xx:xx:xx:xx IP-Openwrt:5333
Bei Gelegenheit resette ich den Router mal und probiere es mit weniger Schritten.
Ergebniss: Mein FHEM auf nem RB4 erkennt den BT LE Dongle in der Nähe oder in der Nähe des OpenWrt Routers. So wie es sein sollte.
Danke für die Ideen und Lösungshilfen