Skip to content
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Entwicklung
  4. [Adapter] Neuer radar2-Adapter

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.2k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.9k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.2k

[Adapter] Neuer radar2-Adapter

Geplant Angeheftet Gesperrt Verschoben Entwicklung
adapterradar2 adapter
840 Beiträge 80 Kommentatoren 242.7k Aufrufe 54 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • C Offline
    C Offline
    ChristianF
    schrieb am zuletzt editiert von ChristianF
    #612

    Hallo zusammen,

    da ist ja einiges zusammengekommen worauf ich mal antworten sollte 🙂

    @MathiasJ ich habe einen BT Stick. Ich verwende aber auch nur den Radar2 Adapter, den BLE Adapter habe ich zwar installiert aber deaktiviert. Wenn ich hier BLE schreibe meint das nicht den BLE-Adapter, sondern Bluetooth LE an sich.

    @frankjoke Dass man den LEScan killen muss ist mir klar. Mir ging es nur darum, ob es vielleicht etwas ungünstig ist, mit dem LEScan anzufangen, dann die L2Pings abzusetzen (während der LEScan läuft) und dann den LEScan zu killen. Meine Idee wäre gewesen, die L2Pings zu machen und dann den LEScan hinterher, damit die sich nicht auf der Luftschnittstelle in die Quere kommen. Das ist aber auch nur eine Vermutung.
    Bei den UWZ und EZB Kursen habe ich bisher nicht verstanden wie man das konfiguriert, daher Finger davon gelassen. Gibt es da irgendwo eine Doku zu?

    @Diginix Ich benutze als Stick einen SPEEDLINK SL-7411-BK VIAS Nano Bluetooth Adapter (vom Mediamarkt) und habe mir jetzt noch einen LogiLink BT0015 bestellt.

    Nochmal eine andere Frage in die Runde, wo sich ja hier offenbar viele mit dem Thema Anwesenheitserkennung beschäftigen. Hat jemand eine gute Lösung, um zu prüfen, ob sich Geräte im Gäste-WLAN der Fritzbox aufhalten? Sämtliche Fritz Adapter die ich probiert habe bieten zwar eine Lösung um Gäste-WLAN an und aus zu schalten, aber wirklich eine Lösung für das Erkennen von Geräten dort drin hat keiner..

    Viele Grüße
    Christian

    MathiasJM 1 Antwort Letzte Antwort
    0
    • SBorgS Offline
      SBorgS Offline
      SBorg
      Forum Testing Most Active
      schrieb am zuletzt editiert von
      #613

      Du könntest einen weiteren WLAN-Stick nehmen und den in das Gäste-WLAN einbinden. Dann kannst du per radar2 scannen + erkennen ob/wer eingeloggt ist.

      LG SBorg ( SBorg auf GitHub)
      Projekte: Lebensmittelwarnung.de | WLAN-Wetterstation | PimpMyStation

      1 Antwort Letzte Antwort
      0
      • C ChristianF

        Hallo zusammen,

        da ist ja einiges zusammengekommen worauf ich mal antworten sollte 🙂

        @MathiasJ ich habe einen BT Stick. Ich verwende aber auch nur den Radar2 Adapter, den BLE Adapter habe ich zwar installiert aber deaktiviert. Wenn ich hier BLE schreibe meint das nicht den BLE-Adapter, sondern Bluetooth LE an sich.

        @frankjoke Dass man den LEScan killen muss ist mir klar. Mir ging es nur darum, ob es vielleicht etwas ungünstig ist, mit dem LEScan anzufangen, dann die L2Pings abzusetzen (während der LEScan läuft) und dann den LEScan zu killen. Meine Idee wäre gewesen, die L2Pings zu machen und dann den LEScan hinterher, damit die sich nicht auf der Luftschnittstelle in die Quere kommen. Das ist aber auch nur eine Vermutung.
        Bei den UWZ und EZB Kursen habe ich bisher nicht verstanden wie man das konfiguriert, daher Finger davon gelassen. Gibt es da irgendwo eine Doku zu?

        @Diginix Ich benutze als Stick einen SPEEDLINK SL-7411-BK VIAS Nano Bluetooth Adapter (vom Mediamarkt) und habe mir jetzt noch einen LogiLink BT0015 bestellt.

        Nochmal eine andere Frage in die Runde, wo sich ja hier offenbar viele mit dem Thema Anwesenheitserkennung beschäftigen. Hat jemand eine gute Lösung, um zu prüfen, ob sich Geräte im Gäste-WLAN der Fritzbox aufhalten? Sämtliche Fritz Adapter die ich probiert habe bieten zwar eine Lösung um Gäste-WLAN an und aus zu schalten, aber wirklich eine Lösung für das Erkennen von Geräten dort drin hat keiner..

        Viele Grüße
        Christian

        MathiasJM Offline
        MathiasJM Offline
        MathiasJ
        schrieb am zuletzt editiert von
        #614

        @ChristianF
        Du brauchst einen WLAN-Stick, der das Gäste-WLAN abhorcht.
        Dann funktioniert auch die Anwesenheitskennung im Gäste-Netzwerk.
        Ich habe mir dazu eine 2. Instanz Also Radar 2.1 installiert.
        darf ich fragen, welchen PC Du benutzt, auf dem IObroker installiert ist?
        ich habe die Erfahrung gemacht, daß beim Raspberry der Logilink und beim Tinkerboard/Rock64 der Speedlink der bessere ist.

        IObroker auf dem NUC als VM.
        Da ich noch keine Aktoren habe, wird momentan via Radar nur der AB der Fritzbox ein- und ausgeschaltet.
        Welches Smarthome-System es letztendlich wird, weiß ich noch nicht. Vielleicht kommen auch nur Zigbee-Geräte ins Haus.

        1 Antwort Letzte Antwort
        0
        • C Offline
          C Offline
          ChrisXY
          schrieb am zuletzt editiert von
          #615

          hm irgendwie will der radar2 bei mir nicht so recht. Über Adapter kann ich es Installieren aber bleibt Rot. Im Log hab ich auch nichts gesehen. Hatte es aber jetzt nicht lange versucht. Ich wollt die neue 1.2er Installieren. Hab es Manuell versucht aber es bricht immer ab

          $ ./iobroker url "https://github.com/frankjoke/ioBroker.radar2"
          install https://github.com/frankjoke/ioBroker.radar2/tarball/master
          npm install https://github.com/frankjoke/ioBroker.radar2/tarball/master --production --save --prefix "/opt/iobroker" (System call)
          ../src/linux/DeviceINQ.cc:35:37: fatal error: bluetooth/bluetooth.h: No such file or directory     #include <bluetooth/bluetooth.h>
                                               ^
          
          compilation terminated.
          make: *** [Release/obj.target/BluetoothSerialPort/src/linux/DeviceINQ.o] Error 1
          gyp
           ERR! build error gyp ERR! stack Error: `make` failed with exit code: 2
          gyp ERR! stack     at ChildProcess.onExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:262:23)
          gyp ERR! stack     at emitTwo (events.js:126:13)
          gyp ERR! stack     at ChildProcess.emit (events.js:214:7)
          gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:198:12)
          
          gyp 
          ERR! System Linux 4.4.59+gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "configure" "build"
          gyp ERR! cwd /opt/iobroker/node_modules/node-bluetooth
          gyp 
          ERR! node -v v8.16.0gyp ERR! node-gyp -v v3.8.0
          gyp ERR! not ok 
          
          npm
           WARN optional SKIPPING OPTIONAL DEPENDENCY: osx-temperature-sensor@1.0.3 (node_modules/osx-temperature-sensor):npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for osx-temperature-sensor@1.0.3: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
          npm WARN optional SKIPPING OPTIONAL DEPENDENCY: node-bluetooth@1.2.5 (node_modules/node-bluetooth):
          npm WARN optional SKIPPING OPTIONAL DEPENDENCY: node-bluetooth@1.2.5 install: `node-gyp configure build`
          npm WARN optional SKIPPING OPTIONAL DEPENDENCY: Exit status 1
          
          
          process exited with code 0
          
          DiginixD 1 Antwort Letzte Antwort
          0
          • C ChrisXY

            hm irgendwie will der radar2 bei mir nicht so recht. Über Adapter kann ich es Installieren aber bleibt Rot. Im Log hab ich auch nichts gesehen. Hatte es aber jetzt nicht lange versucht. Ich wollt die neue 1.2er Installieren. Hab es Manuell versucht aber es bricht immer ab

            $ ./iobroker url "https://github.com/frankjoke/ioBroker.radar2"
            install https://github.com/frankjoke/ioBroker.radar2/tarball/master
            npm install https://github.com/frankjoke/ioBroker.radar2/tarball/master --production --save --prefix "/opt/iobroker" (System call)
            ../src/linux/DeviceINQ.cc:35:37: fatal error: bluetooth/bluetooth.h: No such file or directory     #include <bluetooth/bluetooth.h>
                                                 ^
            
            compilation terminated.
            make: *** [Release/obj.target/BluetoothSerialPort/src/linux/DeviceINQ.o] Error 1
            gyp
             ERR! build error gyp ERR! stack Error: `make` failed with exit code: 2
            gyp ERR! stack     at ChildProcess.onExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:262:23)
            gyp ERR! stack     at emitTwo (events.js:126:13)
            gyp ERR! stack     at ChildProcess.emit (events.js:214:7)
            gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:198:12)
            
            gyp 
            ERR! System Linux 4.4.59+gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "configure" "build"
            gyp ERR! cwd /opt/iobroker/node_modules/node-bluetooth
            gyp 
            ERR! node -v v8.16.0gyp ERR! node-gyp -v v3.8.0
            gyp ERR! not ok 
            
            npm
             WARN optional SKIPPING OPTIONAL DEPENDENCY: osx-temperature-sensor@1.0.3 (node_modules/osx-temperature-sensor):npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for osx-temperature-sensor@1.0.3: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
            npm WARN optional SKIPPING OPTIONAL DEPENDENCY: node-bluetooth@1.2.5 (node_modules/node-bluetooth):
            npm WARN optional SKIPPING OPTIONAL DEPENDENCY: node-bluetooth@1.2.5 install: `node-gyp configure build`
            npm WARN optional SKIPPING OPTIONAL DEPENDENCY: Exit status 1
            
            
            process exited with code 0
            
            DiginixD Offline
            DiginixD Offline
            Diginix
            schrieb am zuletzt editiert von
            #616

            @ChrisXY Ich dachte Exit Code 0 ist ok. Die Fehlermeldungen zuvor kann man ignorieren. Wenn er rot bleibt, hilft nur das ioBroker Log. Installiert ist er wahrscheinlich korrekt.

            @frankjoke Ich habe jetzt einen zusätzlichen BT Dongle mit hci2 am PC. Dein Adapter kann sowohl mit dem als auch mit hci0 alles erkennen. Aber eben weiterhin nur mit noble, nicht hci only.

            Selbst wenn radar2 auf hci2 arbeitet, kann ich das keyble für den Türschlossantrieb in der Konsole nicht verwenden weil immer ein timeout kommt. Sobald radar2 pausiert ist, funktioniert es.
            Daher scheint der Konflikt unabhängig der Hardware auch noch bei noble selbst zu bestehen.
            Kann man das entzerren und ja wie?

            ..:: So long! Tom ::..

            NUC7i3 (Ubuntu Proxmox VM) | Echo Dots 2+3. Gen | Xiaomi Sensoren | Mi Robot 1S | Yeelight | Sonoff | Shelly | H801 RGB | Gosund SP1 | NodeMCU+ESP32 | Kostal Plenticore PV+BYD | openWB

            1 Antwort Letzte Antwort
            0
            • C Offline
              C Offline
              ChrisXY
              schrieb am zuletzt editiert von ChrisXY
              #617

              also hier mal nach Installation was im Log steht:

              host.iobroker	2019-05-20 21:09:35.387	error	instance system.adapter.radar2.0 terminated with code null ()
              host.iobroker	2019-05-20 21:09:35.386	warn	instance system.adapter.radar2.0 terminated due to SIGSEGV
              host.iobroker	2019-05-20 21:09:02.739	error	instance system.adapter.radar2.0 terminated with code null ()
              host.iobroker	2019-05-20 21:09:02.739	warn	instance system.adapter.radar2.0 terminated due to SIGABRT
              Caught	2019-05-20 21:09:02.738	error	by controller[0]: .0: ../deps/uv/src/unix/poll.c:123: uv_poll_start: Assertion `!(((handle)->flags & (UV_HANDLE_CLOSING | UV_HANDLE_CLOSED)) != 0)' failed.
              
              

              noch mehr

              radar2.0	2019-05-20 21:12:03.904	info	found '@abandonware/noble'
              radar2.0	2019-05-20 21:12:03.714	info	radar2 initialization started...
              radar2.0	2019-05-20 21:12:03.602	info	starting. Version 1.2.0 in /opt/iobroker/node_modules/iobroker.radar2, node: v8.16.0
              radar2.0	2019-05-20 21:11:30.636	info	found '@abandonware/noble'
              radar2.0	2019-05-20 21:11:30.407	info	radar2 initialization started...
              radar2.0	2019-05-20 21:11:30.282	info	starting. Version 1.2.0 in /opt/iobroker/node_modules/iobroker.radar2, node: v8.16.0
              radar2.0	2019-05-20 21:10:57.684	info	radar2 initialization started...
              radar2.0	2019-05-20 21:10:57.555	info	starting. Version 1.2.0 in /opt/iobroker/node_modules/iobroker.radar2, node: v8.16.0
              radar2.0	2019-05-20 21:10:39.296	info	found '@abandonware/noble'
              radar2.0	2019-05-20 21:10:39.063	info	radar2 initialization started...
              radar2.0	2019-05-20 21:10:38.935	info	starting. Version 1.2.0 in /opt/iobroker/node_modules/iobroker.radar2, node: v8.16.0
              
              frankjokeF 1 Antwort Letzte Antwort
              1
              • C Offline
                C Offline
                ChristianF
                schrieb am zuletzt editiert von
                #618

                @MathiasJ die Idee mit dem zusätzlichen WLAN Stick kam mir auch schon, allerdings ist das Gästenetz bei uns bewusst offen und ich möchte ungern einen Rechner, der an der Haussteuerung hängt, in das freie WLAN hängen. Der Weg von A nach B ist mir da etwas zu kurz. Alternativ müsste man das WLAN Interface so dicht machen dass da wirklich nur noch das absolut Nötigste drüber geht (frei nach dem Motto "Deny all, allow Radar2-Scans"), aber dazu kenne ich mich zu wenig aus.
                ioBroker läuft in einer Debian VM auf meinem NAS, das ich etwas gepimpt habe. Rennt wie Teufel. Leider ist das USB Passthrough in die VM eher suboptimal, weswegen ich einen Raspi als 2. Node zu iobroker aufgesetzt habe.

                @frankjoke ich hätte noch eine Idee. Möchte es eigentlich nicht Feature Request nennen, aber vielleicht ist es ja ganz praktisch für alle, die BTLE Tags nutzen. Es wäre toll, wenn Radar 1x pro Tag oder so den Batteriestand abfragen könnte. So kann man Batterien rechtzeitig tauschen und sich zB einen Notifier setzen, wenn eine Batterie unter 10% oder so geht. Im Falle der G-Tags wäre die passende Abfrage dazu gatttool -b <MAC-Adresse> --char-read --handle=0x001b, und die Antwort ist der Batteriestand in % (Achtung, Angabe in Hex, muss man erst umrechnen!). In meinem Falle kommt dabei raus:

                root@raspi:/tmp# gatttool -b MAC1 --char-read --handle=0x001b
                Characteristic value/descriptor: 64
                root@raspi:/tmp# gatttool -b MAC2 --char-read --handle=0x001b
                Characteristic value/descriptor: 55
                

                Für MAC2 ergibt sich nach Umrechnung dann 85% und für MAC1 ganze 100% (Kunststück, ich hatte ihn gerade frisch aus der Packung genommen).

                Viele Grüße
                Christian

                1 Antwort Letzte Antwort
                0
                • C ChrisXY

                  also hier mal nach Installation was im Log steht:

                  host.iobroker	2019-05-20 21:09:35.387	error	instance system.adapter.radar2.0 terminated with code null ()
                  host.iobroker	2019-05-20 21:09:35.386	warn	instance system.adapter.radar2.0 terminated due to SIGSEGV
                  host.iobroker	2019-05-20 21:09:02.739	error	instance system.adapter.radar2.0 terminated with code null ()
                  host.iobroker	2019-05-20 21:09:02.739	warn	instance system.adapter.radar2.0 terminated due to SIGABRT
                  Caught	2019-05-20 21:09:02.738	error	by controller[0]: .0: ../deps/uv/src/unix/poll.c:123: uv_poll_start: Assertion `!(((handle)->flags & (UV_HANDLE_CLOSING | UV_HANDLE_CLOSED)) != 0)' failed.
                  
                  

                  noch mehr

                  radar2.0	2019-05-20 21:12:03.904	info	found '@abandonware/noble'
                  radar2.0	2019-05-20 21:12:03.714	info	radar2 initialization started...
                  radar2.0	2019-05-20 21:12:03.602	info	starting. Version 1.2.0 in /opt/iobroker/node_modules/iobroker.radar2, node: v8.16.0
                  radar2.0	2019-05-20 21:11:30.636	info	found '@abandonware/noble'
                  radar2.0	2019-05-20 21:11:30.407	info	radar2 initialization started...
                  radar2.0	2019-05-20 21:11:30.282	info	starting. Version 1.2.0 in /opt/iobroker/node_modules/iobroker.radar2, node: v8.16.0
                  radar2.0	2019-05-20 21:10:57.684	info	radar2 initialization started...
                  radar2.0	2019-05-20 21:10:57.555	info	starting. Version 1.2.0 in /opt/iobroker/node_modules/iobroker.radar2, node: v8.16.0
                  radar2.0	2019-05-20 21:10:39.296	info	found '@abandonware/noble'
                  radar2.0	2019-05-20 21:10:39.063	info	radar2 initialization started...
                  radar2.0	2019-05-20 21:10:38.935	info	starting. Version 1.2.0 in /opt/iobroker/node_modules/iobroker.radar2, node: v8.16.0
                  
                  frankjokeF Offline
                  frankjokeF Offline
                  frankjoke
                  schrieb am zuletzt editiert von frankjoke
                  #619

                  @ChrisXY

                  Hast du das installationsscript ausgeführt (womöglich) bevor du den Adapter installiert hast?

                  Es fehlen BT-Treiber bei der Installation.

                  Du hast SIGSEGV error das Bedeutet dass der Adapter eventuell nicht die Rechte hat auf bestimmte Geräte/Funktionen zuzugreifen. Kann auch sein dass du ne andere Software wie Docker oder so verwendest die die Rechte einschränkt.

                  Frank,

                  NUC's, VM's und Raspi's unter Raspian, Ubuntu und Debian zum Testen.
                  Adapter die ich selbst beigesteuert habe: BMW, broadlink2, radar2, systeminfo, km200, xs1 und einige im Anmarsch!

                  frankjokeF 1 Antwort Letzte Antwort
                  0
                  • frankjokeF frankjoke

                    @ChrisXY

                    Hast du das installationsscript ausgeführt (womöglich) bevor du den Adapter installiert hast?

                    Es fehlen BT-Treiber bei der Installation.

                    Du hast SIGSEGV error das Bedeutet dass der Adapter eventuell nicht die Rechte hat auf bestimmte Geräte/Funktionen zuzugreifen. Kann auch sein dass du ne andere Software wie Docker oder so verwendest die die Rechte einschränkt.

                    frankjokeF Offline
                    frankjokeF Offline
                    frankjoke
                    schrieb am zuletzt editiert von
                    #620

                    Habe gerade eine weitere (V1.2)-Version auf git gepostet mit folgenden Änderungen:

                    1. Man kann zwischen Noble & hcitool lescan und BT scan & l2ping getrennt wählen
                    2. Man sollte BT-LE Macs mit einem ! voran kennzeichnen damit sie nicht mit dem l2ping gescannt werden (und es 4 Sekunden/Adresse dauert bis l2ping nichts zurückmeldet).
                    3. Die Abwesenheitszeit kann auf eine Minute gesenkt werden wenn die scan-Zeit < Abwesenheit/2.5 ist.
                    4. Habe in den Readme's kurze Beschreibung für die BT-scans hinzugefügt

                    Damit kann sich jeder seine Einstellungen zusammensetzen wie er sie benötigt.

                    Frank,

                    NUC's, VM's und Raspi's unter Raspian, Ubuntu und Debian zum Testen.
                    Adapter die ich selbst beigesteuert habe: BMW, broadlink2, radar2, systeminfo, km200, xs1 und einige im Anmarsch!

                    1 Antwort Letzte Antwort
                    0
                    • C Offline
                      C Offline
                      ChrisXY
                      schrieb am zuletzt editiert von
                      #621

                      Puh das kann sein ganz am anfang erst adapter installiert dann per Konsole die 2 sachen ausgeführt. Will nur das DHCP nutzen. Bt hab ich eh nicht. Was kann ich den nun machen? Muss doch ein Port bei docker frei gemacht werden?

                      frankjokeF 1 Antwort Letzte Antwort
                      0
                      • S Offline
                        S Offline
                        schreda
                        schrieb am zuletzt editiert von schreda
                        #622

                        Hi

                        Ich nöchte gerne auf folgenden GitHub issue verweisen:
                        https://github.com/frankjoke/ioBroker.radar2/issues/17

                        Ich habe mir mittlerweile die MAC-Adressen-Erkennung selbst geschrieben und möchte diese gerne teilen:

                        const objPrefix          = 'geofence.';
                        const objPostfixIsHere   = '.isHere';
                        const objPostfixLastSeen = '.lastSeen';
                        
                        const arp_scan_cmd      = 'sudo arp-scan --interface=wlan0 -lgq --retry=5 --timeout=400';
                        const arp_scan_interval = 20 * 1000; // ms
                        const device_timeout    = 3; // min
                        const welcomeTimeDelay  = 20 * 1000; // ms
                        
                        const macs = [
                            { 'id': 'id1', 'mac':  'XX:XX:XX:XX:XX:XX'},
                            { 'id': 'id2', 'mac':  'XX:XX:XX:XX:XX:XX'},
                            { 'id': 'id3', 'mac':  'XX:XX:XX:XX:XX:XX'}
                        ];
                        
                        for (var i in macs) {
                            createState(objPrefix + macs[i].id + objPostfixIsHere,   false, { type: 'boolean', def: false });
                            createState(objPrefix + macs[i].id + objPostfixLastSeen, false, { type: 'string', def: '' });
                        }
                        createState(objPrefix + 'nHere', false, { read: true, write: true, type: 'number', def: 0 });
                        
                        setInterval(() => {
                            exec(arp_scan_cmd, (err, stdout, stderr) => {
                                if (!err) {
                                    var macs_found = '';
                                    for (var i in macs) {
                                        if (stdout.includes(macs[i].mac.toLowerCase())) {
                                            macs_found += macs[i].mac + ' ';
                                            setState(objPrefix + macs[i].id + objPostfixLastSeen, new Date().toString(),true);
                                            setState(objPrefix + macs[i].id + objPostfixIsHere, true, true);
                                        } else {
                                            var lastSeen = new Date(getState(objPrefix + macs[i].id + objPostfixLastSeen).val);
                                            lastSeen.setMinutes(lastSeen.getMinutes() + device_timeout)
                                            if (new Date() > lastSeen) {
                                                log('Device ' + macs[i].mac + ' went inactive', 'debug');
                                                setState(objPrefix + macs[i].id + objPostfixIsHere, false, true);
                                            }                 
                                        }
                                    }
                                    if (macs_found) {
                                        log('MACS found: '+macs_found, 'debug');
                                    }
                        
                                    var nHere = 0;
                                    for (var i in macs) {
                                        if (getState(objPrefix + macs[i].id + objPostfixIsHere).val) {
                                            nHere++;
                                        }
                                    }
                                    setState(objPrefix + 'nHere', nHere, true);
                                } else {
                                    log(err.message, 'error');
                                }
                            });
                        }, arp_scan_interval);
                        
                        for (var i in macs) {
                            const mac = macs[i];
                        
                            on({ id: OBJ_JS_INSTANCE + objPrefix + mac.id + objPostfixIsHere, change: 'ne', val: true }, (obj) => { 
                                log('Devie ' + mac.mac + ' went active', 'debug');
                                // user func
                            });
                        }
                        

                        Sollte zugleich eine feature suggestion sein, um eine MAC-only-detection zu ermöglichen

                        frankjokeF 1 Antwort Letzte Antwort
                        0
                        • S schreda

                          Hi

                          Ich nöchte gerne auf folgenden GitHub issue verweisen:
                          https://github.com/frankjoke/ioBroker.radar2/issues/17

                          Ich habe mir mittlerweile die MAC-Adressen-Erkennung selbst geschrieben und möchte diese gerne teilen:

                          const objPrefix          = 'geofence.';
                          const objPostfixIsHere   = '.isHere';
                          const objPostfixLastSeen = '.lastSeen';
                          
                          const arp_scan_cmd      = 'sudo arp-scan --interface=wlan0 -lgq --retry=5 --timeout=400';
                          const arp_scan_interval = 20 * 1000; // ms
                          const device_timeout    = 3; // min
                          const welcomeTimeDelay  = 20 * 1000; // ms
                          
                          const macs = [
                              { 'id': 'id1', 'mac':  'XX:XX:XX:XX:XX:XX'},
                              { 'id': 'id2', 'mac':  'XX:XX:XX:XX:XX:XX'},
                              { 'id': 'id3', 'mac':  'XX:XX:XX:XX:XX:XX'}
                          ];
                          
                          for (var i in macs) {
                              createState(objPrefix + macs[i].id + objPostfixIsHere,   false, { type: 'boolean', def: false });
                              createState(objPrefix + macs[i].id + objPostfixLastSeen, false, { type: 'string', def: '' });
                          }
                          createState(objPrefix + 'nHere', false, { read: true, write: true, type: 'number', def: 0 });
                          
                          setInterval(() => {
                              exec(arp_scan_cmd, (err, stdout, stderr) => {
                                  if (!err) {
                                      var macs_found = '';
                                      for (var i in macs) {
                                          if (stdout.includes(macs[i].mac.toLowerCase())) {
                                              macs_found += macs[i].mac + ' ';
                                              setState(objPrefix + macs[i].id + objPostfixLastSeen, new Date().toString(),true);
                                              setState(objPrefix + macs[i].id + objPostfixIsHere, true, true);
                                          } else {
                                              var lastSeen = new Date(getState(objPrefix + macs[i].id + objPostfixLastSeen).val);
                                              lastSeen.setMinutes(lastSeen.getMinutes() + device_timeout)
                                              if (new Date() > lastSeen) {
                                                  log('Device ' + macs[i].mac + ' went inactive', 'debug');
                                                  setState(objPrefix + macs[i].id + objPostfixIsHere, false, true);
                                              }                 
                                          }
                                      }
                                      if (macs_found) {
                                          log('MACS found: '+macs_found, 'debug');
                                      }
                          
                                      var nHere = 0;
                                      for (var i in macs) {
                                          if (getState(objPrefix + macs[i].id + objPostfixIsHere).val) {
                                              nHere++;
                                          }
                                      }
                                      setState(objPrefix + 'nHere', nHere, true);
                                  } else {
                                      log(err.message, 'error');
                                  }
                              });
                          }, arp_scan_interval);
                          
                          for (var i in macs) {
                              const mac = macs[i];
                          
                              on({ id: OBJ_JS_INSTANCE + objPrefix + mac.id + objPostfixIsHere, change: 'ne', val: true }, (obj) => { 
                                  log('Devie ' + mac.mac + ' went active', 'debug');
                                  // user func
                              });
                          }
                          

                          Sollte zugleich eine feature suggestion sein, um eine MAC-only-detection zu ermöglichen

                          frankjokeF Offline
                          frankjokeF Offline
                          frankjoke
                          schrieb am zuletzt editiert von
                          #623

                          @schreda

                          Das sollte aber schon mit radar funktionieren da ja radar auch arp-scan verwendet!
                          Du musst ja nicht unbedingt etwas in die ip eintragen!

                          Hab's gerade getestet und es funktioniert nur mit der mac-Adresse auch!

                          p.s.: Verwende ja auch das arp-scan...

                          p.s.:: das geht natürlich nur wenn die mac auf den Netz ist wo der adapter direkt zugriff hat, nicht in einem entfernten Netz über den Router.

                          Frank,

                          NUC's, VM's und Raspi's unter Raspian, Ubuntu und Debian zum Testen.
                          Adapter die ich selbst beigesteuert habe: BMW, broadlink2, radar2, systeminfo, km200, xs1 und einige im Anmarsch!

                          S 1 Antwort Letzte Antwort
                          0
                          • C ChrisXY

                            Puh das kann sein ganz am anfang erst adapter installiert dann per Konsole die 2 sachen ausgeführt. Will nur das DHCP nutzen. Bt hab ich eh nicht. Was kann ich den nun machen? Muss doch ein Port bei docker frei gemacht werden?

                            frankjokeF Offline
                            frankjokeF Offline
                            frankjoke
                            schrieb am zuletzt editiert von
                            #624

                            @ChrisXY
                            Leider muss gerade DHCP auf broadcasts zugreifen die der interne router der docker-Anwendung eventuell nicht zulässt.

                            Hab sowas schon bei einem Nutzer erlebt der pihole laufen gehabt hat...

                            Frank,

                            NUC's, VM's und Raspi's unter Raspian, Ubuntu und Debian zum Testen.
                            Adapter die ich selbst beigesteuert habe: BMW, broadlink2, radar2, systeminfo, km200, xs1 und einige im Anmarsch!

                            1 Antwort Letzte Antwort
                            0
                            • C Offline
                              C Offline
                              ChrisXY
                              schrieb am zuletzt editiert von
                              #625

                              habe aber iobroker als macvlan am laufen das sollte glaube ich klappen ?
                              ABER wenn in der Fritzbox es doch erkannt wird , kann man es nicht direkt von dort abgreifen ?

                              frankjokeF 1 Antwort Letzte Antwort
                              0
                              • frankjokeF frankjoke

                                @schreda

                                Das sollte aber schon mit radar funktionieren da ja radar auch arp-scan verwendet!
                                Du musst ja nicht unbedingt etwas in die ip eintragen!

                                Hab's gerade getestet und es funktioniert nur mit der mac-Adresse auch!

                                p.s.: Verwende ja auch das arp-scan...

                                p.s.:: das geht natürlich nur wenn die mac auf den Netz ist wo der adapter direkt zugriff hat, nicht in einem entfernten Netz über den Router.

                                S Offline
                                S Offline
                                schreda
                                schrieb am zuletzt editiert von
                                #626

                                @frankjoke
                                Ich hatte genau die selbe Frage auf GitHub gestellt und da hast du anders geantwortet 😉
                                Nunja, es hat mit dem radar Adapter leider nicht funktioniert..

                                frankjokeF 1 Antwort Letzte Antwort
                                0
                                • C ChrisXY

                                  habe aber iobroker als macvlan am laufen das sollte glaube ich klappen ?
                                  ABER wenn in der Fritzbox es doch erkannt wird , kann man es nicht direkt von dort abgreifen ?

                                  frankjokeF Offline
                                  frankjokeF Offline
                                  frankjoke
                                  schrieb am zuletzt editiert von
                                  #627

                                  @ChrisXY
                                  Das kannst vielleicht mit dem TR???-Adapter.

                                  Wenn auf der Kommandozeile (in dem v-lan) arp-scan geht dann sollte auch radar2 gehen, verwend ja auch nichts anderes.

                                  Frank,

                                  NUC's, VM's und Raspi's unter Raspian, Ubuntu und Debian zum Testen.
                                  Adapter die ich selbst beigesteuert habe: BMW, broadlink2, radar2, systeminfo, km200, xs1 und einige im Anmarsch!

                                  1 Antwort Letzte Antwort
                                  0
                                  • S schreda

                                    @frankjoke
                                    Ich hatte genau die selbe Frage auf GitHub gestellt und da hast du anders geantwortet 😉
                                    Nunja, es hat mit dem radar Adapter leider nicht funktioniert..

                                    frankjokeF Offline
                                    frankjokeF Offline
                                    frankjoke
                                    schrieb am zuletzt editiert von
                                    #628

                                    @schreda
                                    Ich weiß, habe nicht an arp-scan gedacht, aber es dann selbst ausprobiert und bei mir findet er einträge nur mit macs die arp-scan auch findet.

                                    Frank,

                                    NUC's, VM's und Raspi's unter Raspian, Ubuntu und Debian zum Testen.
                                    Adapter die ich selbst beigesteuert habe: BMW, broadlink2, radar2, systeminfo, km200, xs1 und einige im Anmarsch!

                                    1 Antwort Letzte Antwort
                                    0
                                    • C Offline
                                      C Offline
                                      ChrisXY
                                      schrieb am zuletzt editiert von
                                      #629

                                      Muss ich den arp-scan Installieren ? Will es nur zusätzlich nutzen neben der fritzbox und Ping als 3. erkennung DHCP .
                                      Da ich Docker nutze will ich nichts im System groß machen

                                      frankjokeF 1 Antwort Letzte Antwort
                                      0
                                      • C ChrisXY

                                        Muss ich den arp-scan Installieren ? Will es nur zusätzlich nutzen neben der fritzbox und Ping als 3. erkennung DHCP .
                                        Da ich Docker nutze will ich nichts im System groß machen

                                        frankjokeF Offline
                                        frankjokeF Offline
                                        frankjoke
                                        schrieb am zuletzt editiert von
                                        #630

                                        @ChrisXY
                                        Ich kenn mich bei Docker nicht so aus (verwende nur VM's auf meinem QNAP NAS da ich da auch andere Betriebssysteme verwenden kann).
                                        Radar2 braucht arp-scan nur um mac-Adressen zu finden, wenn du das nicht brauchst kannst es weglassen.

                                        Aber ich würde so System-nahe Programme eher am Host system und nicht im container installieren, es sei denn der container kann nicht auf host-Programme zugreifen.

                                        DHCP für IPv4 sind broadcasts auf Port 69 die der mittels dgram modul (von nodejs selbst) gelesen wird, dazu aber erweiterte Systemberechtigungen benötigt (wie auch arp-scan) welche mittels meinem Installationsscript für debian/Ubuntu erteilt werden. Ob diese dann auch in Containern gelten kann ich nicht sagen.
                                        Bei den jetztigen linux-Versionen sind die Bewilligungen auch an das aktuelle Programm (z.B. node oder arp-scan) gebunden, wird dieses per apt(-get) upgedated muss sie neu erteilt werden (mein script neu aufrufen).
                                        Das soll verhindern dass irgendwer das Programm austauscht und dann auf Befehle Zughreifen kann welche die Sicherheit gefährden können.

                                        Frank,

                                        NUC's, VM's und Raspi's unter Raspian, Ubuntu und Debian zum Testen.
                                        Adapter die ich selbst beigesteuert habe: BMW, broadlink2, radar2, systeminfo, km200, xs1 und einige im Anmarsch!

                                        MathiasJM 1 Antwort Letzte Antwort
                                        0
                                        • frankjokeF frankjoke

                                          @ChrisXY
                                          Ich kenn mich bei Docker nicht so aus (verwende nur VM's auf meinem QNAP NAS da ich da auch andere Betriebssysteme verwenden kann).
                                          Radar2 braucht arp-scan nur um mac-Adressen zu finden, wenn du das nicht brauchst kannst es weglassen.

                                          Aber ich würde so System-nahe Programme eher am Host system und nicht im container installieren, es sei denn der container kann nicht auf host-Programme zugreifen.

                                          DHCP für IPv4 sind broadcasts auf Port 69 die der mittels dgram modul (von nodejs selbst) gelesen wird, dazu aber erweiterte Systemberechtigungen benötigt (wie auch arp-scan) welche mittels meinem Installationsscript für debian/Ubuntu erteilt werden. Ob diese dann auch in Containern gelten kann ich nicht sagen.
                                          Bei den jetztigen linux-Versionen sind die Bewilligungen auch an das aktuelle Programm (z.B. node oder arp-scan) gebunden, wird dieses per apt(-get) upgedated muss sie neu erteilt werden (mein script neu aufrufen).
                                          Das soll verhindern dass irgendwer das Programm austauscht und dann auf Befehle Zughreifen kann welche die Sicherheit gefährden können.

                                          MathiasJM Offline
                                          MathiasJM Offline
                                          MathiasJ
                                          schrieb am zuletzt editiert von
                                          #631

                                          @frankjoke

                                          Bei mir werden die G-Tags nur noch gefunden, wenn ich Noble aktiviere.
                                          Das kann ich aber gar nicht gebrauchen, denn wenn ich den USB-Extender endlich mal installiert habe, schmiert Noble ab.
                                          I2ping ist deaktiviert., hcitool lescan deaktiviert,
                                          Ich habe auch gelesen, ein ! vor der MAC-Adresse zu setzen. hat auch nichts gebracht.

                                          Gruß,
                                          Mathias

                                          IObroker auf dem NUC als VM.
                                          Da ich noch keine Aktoren habe, wird momentan via Radar nur der AB der Fritzbox ein- und ausgeschaltet.
                                          Welches Smarthome-System es letztendlich wird, weiß ich noch nicht. Vielleicht kommen auch nur Zigbee-Geräte ins Haus.

                                          1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          758

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe