BT lescan
Moderator: Co-Administratoren
-
- Beiträge: 23
- Registriert: 23.10.2018, 13:12
- Hat sich bedankt: 3 Mal
BT lescan
Hallo @hobbyquaker.
Ich habe das hier gefunden und vermute mal, dass es dein Werk ist.
https://flows.nodered.org/node/node-red-contrib-lescan
Ich weiß, dass es noch beta ist (steht ja da) aber ich habe als wissensuchender Noob eine Frage dazu:
Was muss ich dem node als Input geben, damit er mir für eine MAC true/false ausspuckt?
Mit der MAC selber habe ich es schon probiert. Die scheint er aber zu ignorieren. Er spuckt dafür alle BT geräte in der Umgebung aus.
Wie gesagt, bin ein Noob in Sachen Programmierung.
LG O.J.
Ich habe das hier gefunden und vermute mal, dass es dein Werk ist.
https://flows.nodered.org/node/node-red-contrib-lescan
Ich weiß, dass es noch beta ist (steht ja da) aber ich habe als wissensuchender Noob eine Frage dazu:
Was muss ich dem node als Input geben, damit er mir für eine MAC true/false ausspuckt?
Mit der MAC selber habe ich es schon probiert. Die scheint er aber zu ignorieren. Er spuckt dafür alle BT geräte in der Umgebung aus.
Wie gesagt, bin ein Noob in Sachen Programmierung.
LG O.J.
-
- Beiträge: 3978
- Registriert: 12.07.2009, 20:01
- Hat sich bedankt: 17 Mal
- Danksagung erhalten: 176 Mal
- Kontaktdaten:
Re: BT lescan
Du musst garnichts in den Node reinschicken. Benutz ihn einfach in der Default Config, nichts am Eingang anschließen und am Ausgang kannst Du dann einen Switch Node nutzen wenn Dich nur die Nachrichten bestimmter MACs interessieren.
-
- Beiträge: 23
- Registriert: 23.10.2018, 13:12
- Hat sich bedankt: 3 Mal
Re: BT lescan
Ich habe im debug als msg.payload immer nur boolean true zu stehen. Wie komme ich an die MAC?
Die steht ja da, aber wie komme ich ran?
Wie gesagt, bin blutiger Anfänger.
LG O.J.
Die steht ja da, aber wie komme ich ran?
Wie gesagt, bin blutiger Anfänger.
LG O.J.
-
- Beiträge: 3978
- Registriert: 12.07.2009, 20:01
- Hat sich bedankt: 17 Mal
- Danksagung erhalten: 176 Mal
- Kontaktdaten:
Re: BT lescan
die MAC steht in msg.topic
Du könntest also einen Switch Node so in der Art konfigurieren:
Du könntest also einen Switch Node so in der Art konfigurieren:
-
- Beiträge: 23
- Registriert: 23.10.2018, 13:12
- Hat sich bedankt: 3 Mal
-
- Beiträge: 23
- Registriert: 23.10.2018, 13:12
- Hat sich bedankt: 3 Mal
Re: BT lescan
Hallo,
es funktioniert an sich prima, nur bekomme ich ab und zu beim Neustart von Node-red diese seltsame Fehlermeldung.
Was mache ich falsch?
es funktioniert an sich prima, nur bekomme ich ab und zu beim Neustart von Node-red diese seltsame Fehlermeldung.
Was mache ich falsch?
- Dateianhänge
-
- lescan-fehler.png (21.82 KiB) 1836 mal betrachtet
-
- lescam-fehler-2.png (32.56 KiB) 1836 mal betrachtet
-
- Beiträge: 3978
- Registriert: 12.07.2009, 20:01
- Hat sich bedankt: 17 Mal
- Danksagung erhalten: 176 Mal
- Kontaktdaten:
Re: BT lescan
Da bin ich selbst noch am rumdoktern und Lösung suchen. Wenn das hcitool nicht sauber beendet wird kann das passieren. Meistens kannst das "reparieren" indem Du auf der Console einmal
ausführst, ist mir aber auch schon passiert dass der Kerneltreiber und evtl sogar die Hardware voll weggeschmiert war und nur noch ein rmmod/insmod oder Reboot geholfen hat.
Wenn Du das dauerhaft nutzen willst würde ich übrigens auch eher dazu raten ein billigen USB Bluetooth Dongle an Deine CCU3 anzuschließen und den mit nem 50cm USB Verlängerungskabel etwas abzusetzen. Weiss nicht ob das Esotherik ist - aber ich hatte ein bisschen den Eindruck dass die Nutzung von Bluetooth/Wifi in einer CCU3 den Homematic Funk verschlechtern kann.
Code: Alles auswählen
hciconfig hci0 down
hciconfig hci0 up
Wenn Du das dauerhaft nutzen willst würde ich übrigens auch eher dazu raten ein billigen USB Bluetooth Dongle an Deine CCU3 anzuschließen und den mit nem 50cm USB Verlängerungskabel etwas abzusetzen. Weiss nicht ob das Esotherik ist - aber ich hatte ein bisschen den Eindruck dass die Nutzung von Bluetooth/Wifi in einer CCU3 den Homematic Funk verschlechtern kann.
-
- Beiträge: 23
- Registriert: 23.10.2018, 13:12
- Hat sich bedankt: 3 Mal
-
- Beiträge: 23
- Registriert: 23.10.2018, 13:12
- Hat sich bedankt: 3 Mal
Re: BT lescan
Natürlich habe ich keinen BT-Dongle herumliegen (jedenfalls keinen gefunden)
Ich habe mich jetzt mit 2 Exec-nodes beholfen, die ich hintereinander gesetzt hab, und die "hciconfig hci0 down" und "hciconfig hci0 up" senden.
Funktioniert soweit auch ganz gut.
Ich habs bestimmt ganz stümperhaft gelöst, aber wenn jetzt vom lescan eine (bekannte) Fehlermeldung kommt, wird die exec-Kette getriggert.
Frage: kannst du mir einen Tip geben, wie ich den Treshold-Switch dazu bringe, erst nach 10 mal "false" die Message weiterzuleiten?
Wie gesagt, bin blutiger Anfänger
LG O.J.
Nachtrag: mein Konstrukt hatte wohl durch andere Umstände funktioniert, aber nicht durch die "Fehlerroutine"
Übrigens ist auch der externe USB Dongle (ich hatte doch noch einen ) von dem "Error stopping node: Close timed out" betroffen
Ich habe mich jetzt mit 2 Exec-nodes beholfen, die ich hintereinander gesetzt hab, und die "hciconfig hci0 down" und "hciconfig hci0 up" senden.
Funktioniert soweit auch ganz gut.
Code: Alles auswählen
[
{
"id": "10593f2a.d81111",
"type": "function",
"z": "3c35534b.60f4ec",
"name": "F_master_status ändern",
"func": "flow.set(\"f_master_status\", msg.payload);\nreturn msg;",
"outputs": 1,
"noerr": 0,
"x": 790,
"y": 2160,
"wires": [
[]
]
},
{
"id": "265ba11b.23724e",
"type": "switch",
"z": "3c35534b.60f4ec",
"name": "G-Tag Filter",
"property": "topic",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "7C:2F:80:AD:BC:81",
"vt": "str"
}
],
"checkall": "true",
"repair": false,
"outputs": 1,
"x": 350,
"y": 2120,
"wires": [
[
"dc98d474.a6a278",
"3325ce03.673182",
"6f7f6fd4.1c3f3"
]
]
},
{
"id": "d28cf9a6.3747d8",
"type": "lescan",
"z": "3c35534b.60f4ec",
"name": "Lescan",
"cmd": "/usr/bin/hcitool",
"device": "hci0",
"passive": true,
"continuous": true,
"interval": 30,
"scantime": 5,
"timeout": 30,
"x": 160,
"y": 2000,
"wires": [
[
"265ba11b.23724e",
"74fefe13.f8d34"
]
]
},
{
"id": "dc98d474.a6a278",
"type": "ui_text",
"z": "3c35534b.60f4ec",
"group": "a2787fa.7e6198",
"order": 3,
"width": 0,
"height": 0,
"name": "G-Tag Text",
"label": "G-Tag",
"format": "{{msg.payload}}",
"layout": "row-center",
"x": 690,
"y": 2120,
"wires": []
},
{
"id": "3325ce03.673182",
"type": "mqtt out",
"z": "3c35534b.60f4ec",
"name": "gtag_le_mqtt",
"topic": "/stat/system/presence/gtag_le/state",
"qos": "",
"retain": "true",
"broker": "e0131b8a.964c28",
"x": 550,
"y": 2040,
"wires": []
},
{
"id": "6f7f6fd4.1c3f3",
"type": "switch",
"z": "3c35534b.60f4ec",
"name": "Treshold Test",
"property": "payload",
"propertyType": "msg",
"rules": [
{
"t": "true"
},
{
"t": "false"
}
],
"checkall": "true",
"repair": false,
"outputs": 2,
"x": 560,
"y": 2180,
"wires": [
[
"10593f2a.d81111"
],
[]
]
},
{
"id": "dcc651ee.d7479",
"type": "exec",
"z": "3c35534b.60f4ec",
"command": "hciconfig hci0 down",
"addpay": false,
"append": "",
"useSpawn": "false",
"timer": "",
"oldrc": false,
"name": "",
"x": 550,
"y": 1780,
"wires": [
[],
[],
[
"f778da72.ab3358"
]
]
},
{
"id": "abbd24e8.21d3e8",
"type": "exec",
"z": "3c35534b.60f4ec",
"command": "hciconfig hci0 up",
"addpay": false,
"append": "",
"useSpawn": "false",
"timer": "",
"oldrc": false,
"name": "",
"x": 690,
"y": 1900,
"wires": [
[],
[],
[
"d28cf9a6.3747d8"
]
]
},
{
"id": "74fefe13.f8d34",
"type": "switch",
"z": "3c35534b.60f4ec",
"name": "switch Fehler",
"property": "payload",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "\"Error stopping node: Close timed out\"",
"vt": "str"
},
{
"t": "eq",
"v": "\"Invalid device: Network is down\"",
"vt": "str"
}
],
"checkall": "true",
"repair": false,
"outputs": 2,
"x": 350,
"y": 2000,
"wires": [
[
"dcc651ee.d7479"
],
[
"dcc651ee.d7479"
]
]
},
{
"id": "f778da72.ab3358",
"type": "delay",
"z": "3c35534b.60f4ec",
"name": "",
"pauseType": "delay",
"timeout": "5",
"timeoutUnits": "seconds",
"rate": "1",
"nbRateUnits": "1",
"rateUnits": "second",
"randomFirst": "1",
"randomLast": "5",
"randomUnits": "seconds",
"drop": false,
"x": 580,
"y": 1840,
"wires": [
[
"abbd24e8.21d3e8"
]
]
},
{
"id": "a2787fa.7e6198",
"type": "ui_group",
"z": "",
"name": "Bluetooth",
"tab": "d12af3c7.b6b51",
"order": 1,
"disp": true,
"width": "6",
"collapse": true
},
{
"id": "e0131b8a.964c28",
"type": "mqtt-broker",
"z": "",
"name": "Raspi",
"broker": "192.168.178.218",
"port": "1883",
"clientid": "node-red",
"usetls": false,
"compatmode": true,
"keepalive": "60",
"cleansession": true,
"birthTopic": "/stat/system/node-red/live",
"birthQos": "0",
"birthRetain": "true",
"birthPayload": "online",
"closeTopic": "/stat/system/node-red/lwt",
"closeQos": "0",
"closeRetain": "true",
"closePayload": "go off",
"willTopic": "",
"willQos": "0",
"willPayload": ""
},
{
"id": "d12af3c7.b6b51",
"type": "ui_tab",
"z": "",
"name": "Anwesenheit",
"icon": "assignment_ind",
"order": 17,
"disabled": false,
"hidden": false
}
]
Frage: kannst du mir einen Tip geben, wie ich den Treshold-Switch dazu bringe, erst nach 10 mal "false" die Message weiterzuleiten?
Wie gesagt, bin blutiger Anfänger
LG O.J.
Nachtrag: mein Konstrukt hatte wohl durch andere Umstände funktioniert, aber nicht durch die "Fehlerroutine"
Übrigens ist auch der externe USB Dongle (ich hatte doch noch einen ) von dem "Error stopping node: Close timed out" betroffen