fruggy83 / openocean

27 stars 11 forks source link

Alle Things/Items triggern alle angelernten Eltako Aktoren #91

Closed pascalschoener closed 4 years ago

pascalschoener commented 4 years ago

Hallo @fruggy83,

ich verwende das Enocean-Binding in Verbindung mit einem USB300 an einem Raspi4 mit Raspbian und Openhab in Docker.

Ich habe Gateway und mehrere Classic-Devices mit verschiedenen "senderIdOffset" konfiguriert. Ich habe dann die Eltako Aktoren auf den jeweiligen Kanälen angelernt.

Nun ist es egal, welches der Classic-Devices (Mode: Rocker-Switches) ich nun schalte, werden immer alle Aktoren getriggert obwohl ich sie einzeln angelernt habe. Ich habe das Gefühlt, dass alle Classic-Devices die gleichen IDs oder alle IDs senden.

Hast du eine Idee, was ich falsch mache?

Danke Gruß Pascal

fruggy83 commented 4 years ago

Hi Pascal,

hast du die SenderId durch das Binding bestimmen lassen oder setzt du sie manuell? Hast du die things über PaperUI oder eine Textdateien angelegt? Falls du sie per Textdatei angelegt hast, könntest du dann bitte die Konfig hier posten? Ich habe mal kurz in den Code geschaut aber leider kein offensichtiches Problem feststellen können. Durchspielen kann ich es leider erst am Wochenende. Könntest du ggf. einmal das Debug log aktivieren und zwei unterschiedliche ClassicDevices triggern? Würde gerne sehen, welche Nachrichten verschickt werden. Vielen Dank im Voraus.

Gruß Daniel

pascalschoener commented 4 years ago

Hi Daniel, ich habe alles über Files angelegt. Habe zum test aber auch ein Item über PaperUI konfiguriert. Zeigt das gleiche verhalten.

Anbei mal die Config von Items und things sowie die logfiles beim triggern.

Bridge enocean:bridge:FT3Z2CNO "Enocean USB300 Dongle (FT3Z2CNO)" [ path="/dev/ttyUSB0", rs485=true ] {
Thing classicDevice 86-3 "Wohnzimmerlicht-86-3" @ "Wohnzimmer" [
        senderIdOffset=1,
        sendingEEPId="F6_02_01",
        broadcastMessages=false,
        receivingEEPId="F6_02_01",
        suppressRepeating=false
   ] {
        Type virtualSwitchA             : virtualSwitchA              [duration=300, switchMode="rockerSwitch"]
     }

  Thing classicDevice 86-4 "Esszimmerlicht-86-4" @ "Esszimmer" [
        senderIdOffset=2,
        sendingEEPId="F6_02_01",
        broadcastMessages=false,
        receivingEEPId="F6_02_01",
        suppressRepeating=false
   ] {
        Type virtualSwitchA             : virtualSwitchA              [duration=300, switchMode="rockerSwitch"]
     }   
Switch Wohnzimmerlicht "Wohnzimmerlicht" ["Lighting"] {channel="enocean:classicDevice:FT3Z2CNO:86-3:virtualSwitchA"}
Switch Esszimmerlicht "Esszimmerlicht" ["Lighting"] {channel="enocean:classicDevice:FT3Z2CNO:86-4:virtualSwitchA"}
12:32:23.647 [INFO ] [smarthome.event.ItemCommandEvent     ] - Item 'Wohnzimmerlicht' received command ON
12:32:23.679 [INFO ] [arthome.event.ItemStatePredictedEvent] - Wohnzimmerlicht predicted to become ON
12:32:23.695 [DEBUG] [ternal.transceiver.EnOceanTransceiver] - Enqueue new send request with ESP3 type RADIO_ERP1 without callback
12:32:23.701 [DEBUG] [ternal.transceiver.EnOceanTransceiver] - Sending data, type RADIO_ERP1, payload F630000000013001FFFFFFFFFF00
12:32:23.701 [INFO ] [smarthome.event.ItemStateChangedEvent] - Wohnzimmerlicht changed from OFF to ON
12:32:23.727 [DEBUG] [ternal.transceiver.EnOceanTransceiver] - RESPONSE with code RET_OK payload 00 received
12:32:23.857 [DEBUG] [ternal.transceiver.EnOceanTransceiver] - RADIO_ERP1 with RORG RPS for FFC0CD15 payload F670FFC0CD153000FFFFFFFF5B00 received
12:32:23.921 [DEBUG] [ternal.transceiver.EnOceanTransceiver] - RADIO_ERP1 with RORG RPS for FFC0CD16 payload F670FFC0CD163000FFFFFFFF5C00 received
12:32:24.026 [DEBUG] [ternal.transceiver.EnOceanTransceiver] - Enqueue new send request with ESP3 type RADIO_ERP1 without callback
12:32:24.032 [DEBUG] [ternal.transceiver.EnOceanTransceiver] - Sending data, type RADIO_ERP1, payload F600000000012001FFFFFFFFFF00
12:32:24.047 [DEBUG] [ternal.transceiver.EnOceanTransceiver] - RESPONSE with code RET_OK payload 00 received
12:32:24.122 [DEBUG] [ternal.transceiver.EnOceanTransceiver] - RADIO_ERP1 with RORG RPS for 058EDC1C payload F600058EDC1C2100FFFFFFFF5B00 received
12:32:26.924 [INFO ] [smarthome.event.ItemCommandEvent     ] - Item 'Esszimmerlicht' received command ON
12:32:26.944 [INFO ] [arthome.event.ItemStatePredictedEvent] - Esszimmerlicht predicted to become ON
12:32:26.962 [INFO ] [smarthome.event.ItemStateChangedEvent] - Esszimmerlicht changed from OFF to ON
12:32:26.966 [DEBUG] [ternal.transceiver.EnOceanTransceiver] - Enqueue new send request with ESP3 type RADIO_ERP1 without callback
12:32:26.972 [DEBUG] [ternal.transceiver.EnOceanTransceiver] - Sending data, type RADIO_ERP1, payload F630000000023001FFFFFFFFFF00
12:32:26.991 [DEBUG] [ternal.transceiver.EnOceanTransceiver] - RESPONSE with code RET_OK payload 00 received
12:32:27.295 [DEBUG] [ternal.transceiver.EnOceanTransceiver] - Enqueue new send request with ESP3 type RADIO_ERP1 without callback
12:32:27.297 [DEBUG] [ternal.transceiver.EnOceanTransceiver] - Sending data, type RADIO_ERP1, payload F600000000022001FFFFFFFFFF00
12:32:27.310 [DEBUG] [ternal.transceiver.EnOceanTransceiver] - RESPONSE with code RET_OK payload 00 received
12:32:27.904 [DEBUG] [ternal.transceiver.EnOceanTransceiver] - RADIO_ERP1 with RORG RPS for FFC0CD15 payload F670FFC0CD153000FFFFFFFF5B00 received
12:32:27.968 [DEBUG] [ternal.transceiver.EnOceanTransceiver] - RADIO_ERP1 with RORG RPS for FFC0CD16 payload F670FFC0CD163000FFFFFFFF5B00 received

Danke schonmal für deine Hilfe

fruggy83 commented 4 years ago

Hi Pascal,

du hast für dein Gateway Thing den Parameter rs485=true gesetzt. Dieser Parameter darf nur gesetzt werden, wenn du deinen PI direkt mit dem RS485 Bus verbindest, z.B. USB Verbindung mit dem FAM. Deaktiviere diesen Parameter bitte und führe ein erneutes Teach in durch. Danach sollten sich die Lichter auch einzeln steuern lassen.

Gruß und Kölle Alaaf Daniel

pascalschoener commented 4 years ago

Hi Daniel,

vielen Dank, das hat geholfen. Danke für deine schnelle und sehr gute Hilfe.

Gruß Pascal