Zigbee Gateways Conbee und Raspbee mit deConz und Phoscon in Fhem einbinden

Begonnen von maddinthebrain, 04 Januar 2019, 10:41:24

Vorheriges Thema - Nächstes Thema

SamNitro

Ich habe es gebraucht weil ich Steckdosen ab und zu von Hand schalte. Damit FHEM das zeitnah mitbekommt habe ich den Intervall auf eine sek gestellt. Da ist so oder so ein Standard Intervall gesetzt aber der war mir zu lang. Glaube 60sek oder so.
(Intel-Nuc Proxmox) (Homematic) (EnOcean) (CUL868) (CUL433) (Zigbee2MQTT) (ESP8266) (Echo) (DUOFERN)

volschin

Ist trotzdem nicht notwendig, wenn die websocket-Verbindung sauber funktioniert. Ein wesentlicher Vorteil gegenüber der Philips HueBridge.
Intel NUC+Ubuntu 22.04+Docker+FHEM6
HomeMatic: HM-MOD-RPI-PCB+HM-USB-CFG2+hmland+diverse, HUE: Hue-Bridge, RaspBee+deCONZ+diverse
Amzn Dash-Buttons, Siro Rollos
4xRPi, 4xCO20, OWL+USB, HarmonyHub, FRITZ!Box 7590, Echo Dots+Show8, Logi Circle 2, HomeBridge
TIG Stack (Telegraf, InfluxDB, Grafana)

justme1968

das push api ist auf jeden fall zu bevorzugen. die last durch das häufige pollen sollte man nicht unterschätzen. das geht eigentlich nur weil die deconz hardware deutlich leistungsfähiger ist als die hue bridge.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

freakadings

Moin,
ich habe einen Conbee2 Stick am raspbi hängen.
Habe in deconz (ausschließlkich) Sensoren angelegt hat super funktioniert.
Wenn ich jetzt aber in FHEM das autocreate starte, legt er keine Sensoren an.

Das fhemlog sagt:

2019.12.14 17:28:30 4: using HttpUtils_BlockingGet: GET sensors
2019.12.14 17:28:34 4: using HttpUtils_NonblockingGet: GET lights
2019.12.14 17:29:34 5: deCONZ: websocket data: {
  'id' => '2',
  't' => 'event',
  'uniqueid' => '00:15:8d:00:03:d4:4f:ad-01-0402',
  'e' => 'changed',
  'name' => 'Multisensor_Bad',
  'r' => 'sensors'
}

2019.12.14 17:29:34 4: deCONZ: message for unknown device received: deCONZ-S2
2019.12.14 17:29:34 5: deCONZ: websocket data: {
  'id' => '3',
  'uniqueid' => '00:15:8d:00:03:d4:4f:ad-01-0405',
  't' => 'event',
  'name' => 'Multisensor_Bad',
  'e' => 'changed',
  'r' => 'sensors'
}

2019.12.14 17:29:34 4: deCONZ: message for unknown device received: deCONZ-S3
2019.12.14 17:29:34 5: deCONZ: websocket data: {
  'id' => '4',
  'r' => 'sensors',
  'name' => 'Multisensor_Bad',
  'uniqueid' => '00:15:8d:00:03:d4:4f:ad-01-0403',
  't' => 'event',
  'e' => 'changed'
}

2019.12.14 17:29:34 4: deCONZ: message for unknown device received: deCONZ-S4
2019.12.14 17:29:34 4: using HttpUtils_NonblockingGet: GET
2019.12.14 17:29:34 4: parse status message for deCONZ
2019.12.14 17:29:34 3: deCONZ: websocket opened to 192.168.178.99:8091
2019.12.14 17:29:34 4: deCONZ: message for unknown sensor received: deCONZ-S2
2019.12.14 17:29:34 4: deCONZ: message for unknown sensor received: deCONZ-S5
2019.12.14 17:29:34 4: deCONZ: message for unknown sensor received: deCONZ-S8
2019.12.14 17:29:34 4: deCONZ: message for unknown sensor received: deCONZ-S12
2019.12.14 17:29:34 4: deCONZ: message for unknown sensor received: deCONZ-S3
2019.12.14 17:29:34 4: deCONZ: message for unknown sensor received: deCONZ-S11
2019.12.14 17:29:34 4: deCONZ: message for unknown sensor received: deCONZ-S10
2019.12.14 17:29:34 4: deCONZ: message for unknown sensor received: deCONZ-S6
2019.12.14 17:29:34 4: deCONZ: message for unknown sensor received: deCONZ-S9
2019.12.14 17:29:34 4: deCONZ: message for unknown sensor received: deCONZ-S7
2019.12.14 17:29:34 4: deCONZ: message for unknown sensor received: deCONZ-S4
2019.12.14 17:29:34 4: deCONZ: message for unknown sensor received: deCONZ-S1
2019.12.14 17:29:34 3: deCONZ: websocket: Switching Protocols ok
2019.12.14 17:29:40 4: using HttpUtils_BlockingGet: GET sensors
2019.12.14 17:29:46 4: using HttpUtils_BlockingGet: GET lights
2019.12.14 17:29:46 4: using HttpUtils_BlockingGet: GET groups
2019.12.14 17:29:46 5: deCONZ: id '1' already defined as 'deCONZ_HUEGroup1'
2019.12.14 17:29:46 5: deCONZ: id '0' already defined as 'deCONZ_HUEGroup0'
2019.12.14 17:30:34 4: using HttpUtils_NonblockingGet: GET lights
2019.12.14 17:31:15 5: deCONZ: websocket data: {
  'config' => {
                'on' => bless( do{\(my $o = 1)}, 'JSON::PP::Boolean' ),
                'reachable' => $VAR1->{'config'}{'on'},
                'battery' => 100,
                'temperature' => 2900
              },
  'e' => 'changed',
  'uniqueid' => '00:15:8d:00:02:47:8b:54-01-0500',
  't' => 'event',
  'r' => 'sensors',
  'id' => '6'
}

2019.12.14 17:31:15 4: deCONZ: message for unknown device received: deCONZ-S6
2019.12.14 17:31:15 5: deCONZ: websocket data: {
  't' => 'event',
  'uniqueid' => '00:15:8d:00:02:47:8b:54-01-0500',
  'e' => 'changed',
  'r' => 'sensors',
  'state' => {
               'lowbattery' => bless( do{\(my $o = 0)}, 'JSON::PP::Boolean' ),
               'tampered' => $VAR1->{'state'}{'lowbattery'},
               'water' => $VAR1->{'state'}{'lowbattery'},
               'lastupdated' => '2019-12-14T16:31:15'
             },
  'id' => '6'
}

2019.12.14 17:31:15 4: deCONZ: message for unknown device received: deCONZ-S6
2019.12.14 17:31:34 4: using HttpUtils_NonblockingGet: GET lights
2019.12.14 17:32:29 3: DBLogging_Reopen: Reopen executed.
2019.12.14 17:32:34 4: using HttpUtils_NonblockingGet: GET lights


Kann es sein, dass ich irgendwas falsch mache?

justme1968

ja. du hast das wiki und die commandref nicht gelesen.

nur lampen werden per autocreate angelegt.

sensoren muss man von hand anlegen.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

freakadings

mea clupa.

habe die sensoren jetzt angelegt, allerdings steht im FHEM log folgende Meldung:

2019.12.14 18:08:39 2: Multisensor_HausFlur_press: got wrong status message for Multisensor_HausFlur_press: ARRAY(0x5e820f8)
2019.12.14 18:08:39 2: Multisensor_HausFlur_hum: got wrong status message for Multisensor_HausFlur_hum: ARRAY(0x5bb92c8)
2019.12.14 18:08:39 2: Multisensor_HausFlur_tmp: got wrong status message for Multisensor_HausFlur_tmp: ARRAY(0x5eb82d8)
2019.12.14 18:09:39 2: Bewegungsmelder_Bad: got wrong status message for Bewegungsmelder_Bad: ARRAY(0x5e93610)
2019.12.14 18:09:39 2: Bewegungsmelder_Flur: got wrong status message for Bewegungsmelder_Flur: ARRAY(0x5e826e0)
2019.12.14 18:09:39 2: Bewegungsmelder_SZ: got wrong status message for Bewegungsmelder_SZ: ARRAY(0x5bca048)
2019.12.14 18:09:39 2: Wassersensor_WaMa: got wrong status message for Wassersensor_WaMa: ARRAY(0x5ba9d50)
2019.12.14 18:09:39 2: Wassersensor_SpueMa: got wrong status message for Wassersensor_SpueMa: ARRAY(0x5bca048)
2019.12.14 18:09:39 2: Multisensor_Bad_tmp: got wrong status message for Multisensor_Bad_tmp: ARRAY(0x5bf96e8)
2019.12.14 18:09:39 2: Multisensor_Bad_press: got wrong status message for Multisensor_Bad_press: ARRAY(0x5eb9940)
2019.12.14 18:09:39 2: Multisensor_Bad_hum: got wrong status message for Multisensor_Bad_hum: ARRAY(0x5a23888)
2019.12.14 18:09:39 2: Multisensor_HausFlur_tmp: got wrong status message for Multisensor_HausFlur_tmp: ARRAY(0x5938068)
2019.12.14 18:09:39 2: Multisensor_HausFlur_hum: got wrong status message for Multisensor_HausFlur_hum: ARRAY(0x5eb5d28)
2019.12.14 18:09:39 2: Multisensor_HausFlur_press: got wrong status message for Multisensor_HausFlur_press: ARRAY(0x59f2d90)
2019.12.14 18:10:39 2: Bewegungsmelder_Bad: got wrong status message for Bewegungsmelder_Bad: ARRAY(0x58e48f0)
2019.12.14 18:10:39 2: Bewegungsmelder_SZ: got wrong status message for Bewegungsmelder_SZ: ARRAY(0x2a68de8)
2019.12.14 18:10:39 2: Bewegungsmelder_Flur: got wrong status message for Bewegungsmelder_Flur: ARRAY(0x59e4d38)
2019.12.14 18:10:39 2: Wassersensor_WaMa: got wrong status message for Wassersensor_WaMa: ARRAY(0x5eb9dd8)
2019.12.14 18:10:39 2: Wassersensor_SpueMa: got wrong status message for Wassersensor_SpueMa: ARRAY(0x5706888)
2019.12.14 18:10:39 2: Multisensor_Bad_tmp: got wrong status message for Multisensor_Bad_tmp: ARRAY(0x5bf7aa0)
2019.12.14 18:10:39 2: Multisensor_HausFlur_tmp: got wrong status message for Multisensor_HausFlur_tmp: ARRAY(0x58e9e40)
2019.12.14 18:10:39 2: Multisensor_Bad_press: got wrong status message for Multisensor_Bad_press: ARRAY(0x5947260)
2019.12.14 18:10:39 2: Multisensor_Bad_hum: got wrong status message for Multisensor_Bad_hum: ARRAY(0x4672950)
2019.12.14 18:10:39 2: Multisensor_HausFlur_hum: got wrong status message for Multisensor_HausFlur_hum: ARRAY(0x59372c8)
2019.12.14 18:10:39 2: Multisensor_HausFlur_press: got wrong status message for Multisensor_HausFlur_press: ARRAY(0x5bac3d0)


verbose 5:
019.12.14 18:15:39 3: resource, /lights/3, not available
2019.12.14 18:15:39 2: Multisensor_Bad_hum: got wrong status message for Multisensor_Bad_hum: ARRAY(0x5e7de68)
2019.12.14 18:15:39 3: resource, /lights/4, not available
2019.12.14 18:15:39 2: Multisensor_Bad_press: got wrong status message for Multisensor_Bad_press: ARRAY(0x59fee30)
2019.12.14 18:15:39 3: resource, /lights/9, not available
2019.12.14 18:15:39 2: Multisensor_HausFlur_tmp: got wrong status message for Multisensor_HausFlur_tmp: ARRAY(0x59c9ef0)
2019.12.14 18:15:39 3: resource, /lights/11, not available
2019.12.14 18:15:39 2: Multisensor_HausFlur_press: got wrong status message for Multisensor_HausFlur_press: ARRAY(0x1bf1a48)
2019.12.14 18:15:39 3: resource, /lights/10, not available
2019.12.14 18:15:39 2: Multisensor_HausFlur_hum: got wrong status message for Multisensor_HausFlur_hum: ARRAY(0x5919b90)
2019.12.14 18:15:43 4: using HttpUtils_NonblockingGet: GET lights
2019.12.14 18:16:15 5: deCONZ: websocket data: {
  't' => 'event',
  'state' => {
               'lastupdated' => '2019-12-14T17:16:15',
               'presence' => bless( do{\(my $o = 0)}, 'JSON::PP::Boolean' )
             },
  'e' => 'changed',
  'r' => 'sensors',
  'id' => '7',
  'uniqueid' => '00:15:8d:00:04:47:e7:00-01-0406'
}

2019.12.14 18:16:15 4: deCONZ: message for unknown device received: deCONZ-S7
2019.12.14 18:16:39 4: using HttpUtils_NonblockingGet: GET lights/5
2019.12.14 18:16:39 3: resource, /lights/5, not available
2019.12.14 18:16:39 2: Bewegungsmelder_Bad: got wrong status message for Bewegungsmelder_Bad: ARRAY(0x5926608)
2019.12.14 18:16:39 4: using HttpUtils_NonblockingGet: GET lights/7
2019.12.14 18:16:39 3: resource, /lights/7, not available
2019.12.14 18:16:39 2: Bewegungsmelder_Flur: got wrong status message for Bewegungsmelder_Flur: ARRAY(0x5ec6330)
2019.12.14 18:16:39 4: using HttpUtils_NonblockingGet: GET lights/8
2019.12.14 18:16:39 4: using HttpUtils_NonblockingGet: GET lights/6
2019.12.14 18:16:39 3: resource, /lights/8, not available
2019.12.14 18:16:39 2: Bewegungsmelder_SZ: got wrong status message for Bewegungsmelder_SZ: ARRAY(0x59ffd20)
2019.12.14 18:16:39 4: using HttpUtils_NonblockingGet: GET lights/12
2019.12.14 18:16:39 3: resource, /lights/6, not available
2019.12.14 18:16:39 2: Wassersensor_WaMa: got wrong status message for Wassersensor_WaMa: ARRAY(0x5ec5ec8)
2019.12.14 18:16:39 4: using HttpUtils_NonblockingGet: GET lights/2
2019.12.14 18:16:39 3: resource, /lights/12, not available
2019.12.14 18:16:39 2: Wassersensor_SpueMa: got wrong status message for Wassersensor_SpueMa: ARRAY(0x1bf0348)
2019.12.14 18:16:39 3: resource, /lights/2, not available
2019.12.14 18:16:39 2: Multisensor_Bad_tmp: got wrong status message for Multisensor_Bad_tmp: ARRAY(0x5b3b3d8)
2019.12.14 18:16:39 4: using HttpUtils_NonblockingGet: GET lights/3
2019.12.14 18:16:39 4: using HttpUtils_NonblockingGet: GET lights/4
2019.12.14 18:16:39 4: using HttpUtils_NonblockingGet: GET lights/9
2019.12.14 18:16:39 3: resource, /lights/3, not available
2019.12.14 18:16:39 2: Multisensor_Bad_hum: got wrong status message for Multisensor_Bad_hum: ARRAY(0x5925db0)
2019.12.14 18:16:39 4: using HttpUtils_NonblockingGet: GET lights/10
2019.12.14 18:16:39 4: using HttpUtils_NonblockingGet: GET lights/11
2019.12.14 18:16:39 3: resource, /lights/4, not available
2019.12.14 18:16:39 2: Multisensor_Bad_press: got wrong status message for Multisensor_Bad_press: ARRAY(0x5ec8bc0)
2019.12.14 18:16:39 3: resource, /lights/11, not available
2019.12.14 18:16:39 2: Multisensor_HausFlur_press: got wrong status message for Multisensor_HausFlur_press: ARRAY(0x5bf8d70)
2019.12.14 18:16:39 3: resource, /lights/10, not available
2019.12.14 18:16:39 2: Multisensor_HausFlur_hum: got wrong status message for Multisensor_HausFlur_hum: ARRAY(0x5bb6f48)
2019.12.14 18:16:39 3: resource, /lights/9, not available
2019.12.14 18:16:39 2: Multisensor_HausFlur_tmp: got wrong status message for Multisensor_HausFlur_tmp: ARRAY(0x5ed8e90)
2019.12.14 18:16:43 4: using HttpUtils_NonblockingGet: GET
2019.12.14 18:16:43 4: parse status message for deCONZ
2019.12.14 18:16:43 3: deCONZ: websocket opened to 192.168.178.99:8091
2019.12.14 18:16:43 4: deCONZ: message for unknown sensor received: deCONZ-S10
2019.12.14 18:16:43 4: deCONZ: message for unknown sensor received: deCONZ-S7
2019.12.14 18:16:43 4: deCONZ: message for unknown sensor received: deCONZ-S11
2019.12.14 18:16:43 4: deCONZ: message for unknown sensor received: deCONZ-S8
2019.12.14 18:16:43 4: deCONZ: message for unknown sensor received: deCONZ-S3
2019.12.14 18:16:43 4: deCONZ: message for unknown sensor received: deCONZ-S4
2019.12.14 18:16:43 4: deCONZ: message for unknown sensor received: deCONZ-S2
2019.12.14 18:16:43 4: deCONZ: message for unknown sensor received: deCONZ-S9
2019.12.14 18:16:43 4: deCONZ: message for unknown sensor received: deCONZ-S1
2019.12.14 18:16:43 4: deCONZ: message for unknown sensor received: deCONZ-S12
2019.12.14 18:16:43 4: deCONZ: message for unknown sensor received: deCONZ-S6
2019.12.14 18:16:43 4: deCONZ: message for unknown sensor received: deCONZ-S5
2019.12.14 18:16:43 3: deCONZ: websocket: Switching Protocols ok
2019.12.14 18:16:53 5: deCONZ: websocket data: {
  't' => 'event',
  'config' => {
                'battery' => 100,
                'temperature' => 2600,
                'reachable' => bless( do{\(my $o = 1)}, 'JSON::PP::Boolean' ),
                'on' => $VAR1->{'config'}{'reachable'}
              },
  'e' => 'changed',
  'id' => '12',
  'r' => 'sensors',
  'uniqueid' => '00:15:8d:00:02:79:75:8d-01-0500'
}

2019.12.14 18:16:53 4: deCONZ: message for unknown device received: deCONZ-S12
2019.12.14 18:16:53 5: deCONZ: websocket data: {
  'e' => 'changed',
  'state' => {
               'lastupdated' => '2019-12-14T17:16:53',
               'water' => bless( do{\(my $o = 0)}, 'JSON::PP::Boolean' ),
               'tampered' => $VAR1->{'state'}{'water'},
               'lowbattery' => $VAR1->{'state'}{'water'}
             },
  't' => 'event',
  'uniqueid' => '00:15:8d:00:02:79:75:8d-01-0500',
  'r' => 'sensors',
  'id' => '12'
}

2019.12.14 18:16:53 4: deCONZ: message for unknown device received: deCONZ-S12

justme1968

deine sensoren sind scheinbar als light angelegt. die daten der sensoren die per push api kommen sind nicht als fhem sensor angelegt.

ich glaube da passt noch einiges nicht.

- was gibt ein get lights? wenn du wirklich nur sensoren hast und hier etwas auftaucht sind die devices in deconz falsch eingebunden
- was gibt ein get sensors?
- wie hast du die sensoren in fhem angelegt?
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Dracolein

Stehen die Sensoren in der Phoscon Oberfläche denn brav in der Kategorie Sensoren?

Meine Osram Smart Plug beispielsweise ist unter den Lichtern einsortiert und wird in FHEM bei den "Lights" angezeigt.
Raspberry Pi 4 mit FHEM; FTUI Dashboard auf Asus 15,6" VT168H Touchscreen; ZigBee mit ConBee2 USB-Stick; div. Shelly 2.5; integr. Gaszähler mit ESP8266 & ESPEasy;

justme1968

#143
das ist ja auch kein sensor. steckdosen und rolläden zählen zu den lampen. scheinbar alles was irgendwie mit licht zu tun hat.

bewegungsmelder, taster, ... sind sensoren. thermostate suche.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

gvzdus

Ich möchte nochmal an meine Frage auf Seite 8 erinnern: Natürlich ist Polling scheiße, wenn dank Raspbee / Conbee Push-Verfahren laufen. Aber wie schalte ich das wirksam und dauerhaft ab, wenn ansonsten alles super funktioniert (Vielen Dank dafür!)? Wegen Polling bin ich natürlich auch erst mal bei der Watchdog-Funktion in die Falle geraten, dass zunächst beim Test mit 1 Minute Inaktivität das Büro in Sachen Strom sauber runterfahren wurde, aber dann im "echten Leben" die 1 h ("Fahr das Büro komplett runter, wenn niemand mehr da ist") durch das Polling wirkungslos wurde.

freakadings

Zitat von: justme1968 am 14 Dezember 2019, 19:50:25
deine sensoren sind scheinbar als light angelegt. die daten der sensoren die per push api kommen sind nicht als fhem sensor angelegt.

ich glaube da passt noch einiges nicht.

- was gibt ein get lights? wenn du wirklich nur sensoren hast und hier etwas auftaucht sind die devices in deconz falsch eingebunden
- was gibt ein get sensors?
- wie hast du die sensoren in fhem angelegt?

get lights tut in der fhem oberfläche nix.
get_sensors siehe Anhang
deconz siehe Anhang

Angelegt habe ich die sensoren in fhem so:
define Bewegungsmelder_Bad HUEDevice 5 1
define Bewegungsmelder_Flur HUEDevice 7 1
define Bewegungsmelder_SZ HUEDevice 8 1
define Wassersensor_WaMa HUEDevice 6 1
define Wassersensor_SpueMa HUEDevice 12 1
define Multisensor_Bad_tmp HUEDevice 2 1
define Multisensor_Bad_hum HUEDevice 3 1
define Multisensor_Bad_press HUEDevice 4 1
define Multisensor_HausFlur_tmp HUEDevice 9 1
define Multisensor_HausFlur_hum HUEDevice 10 1
define Multisensor_HausFlur_press HUEDevice 11 1

justme1968

#146
um einen sensor anzulegen musst du das SENSOR schlüsselwort verwenden.

du solltest nicht  sekunden intervall pollen. mit dem push api ist das auch nicht nötig.

ab einer gewissen anzahl devices sollte man pollDevices im bridge device setzen.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

justme1968

@gvzdus: ich verstehe das problem nicht ganz. warum willst du das pillen abstellen? es ist ein fallback wenn mit dem push etwas nicht stimmt.

wenn push abbricht sollte neu verbunden werden. aber in der zwischenzeit könnte etwas verloren gehen.

wenn werte kommen (egal ob pollen oder push) die mit drm aktuellen zustand übereinstimmen passiert nichts.

hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

freakadings

Zitat von: justme1968 am 14 Dezember 2019, 23:15:30
um einen sensor anzulegen musst du das SENSOR schlüsselwort verwenden.

du solltest nicht  sekunden intervall pollen. mit dem push api ist das auch nicht nötig.

ab einer gewissen anzahl devices sollte man pollDevices im bridge device setzen.

Sorry, stehe heute scheinbar auf dem Schlauch, wo muss ich das Schlüsselwort verwenden?
Wärst du so nett und schreibst mir ein Beispiel define?

Dracolein

Vielleicht ist folgendes Beispiel genannt, um einen Sensor anzulegen:

define Raumsensor1 HUEBridge sensor 2"

Die "2" steht für die ID des Sensors, die du zuvor recherchiert hast.
Raspberry Pi 4 mit FHEM; FTUI Dashboard auf Asus 15,6" VT168H Touchscreen; ZigBee mit ConBee2 USB-Stick; div. Shelly 2.5; integr. Gaszähler mit ESP8266 & ESPEasy;