Setting up an EnOcean System

Hi,

I’m struggeling to set up an EnOcean system in openHAB (2.5.3 on an RasPi 3). I have set up a KNX system and that works fine.

So far - with EnOcean - I managed:

  • discover with the Inbox in PaperUI the EnOcean USB 300 as a gateway
  • I added succesfully a rocket switcher (Eltako FT4F-rw, which is trained to a nodon SIN-2-2-01 aktor) however only manually as the scan function recognized it wrongly as a push button

But that was it. The openHAB system recognizes when I push the rocket switcher as shown in the log-viewer:
2020-06-07 22:10:07.646 [vent.ChannelTriggeredEvent] - enocean:rockerSwitch:e117XXXX:rockerswitchA triggered DIR1_PRESSED
but vice-versa when I operate the switch in the control section of PaperUI nothing happens on my nodon aktor (which is perfectly switched when I push directly the switch). The log viewer also doesn’t show the enocean message as above, only that the item recieved the command ON.

I tried to add the nodon aktor with the scan function in PaperUI and putting it into training mode but it is rejected. Log viewer shows:
2020-06-07 21:24:35.726 [INFO ] [ernal.transceiver.EnOceanTransceiver] - Discard message because this is a teach-in telegram from 058CXXXX!
It shows correctly the id of the aktor, the telegram is recieved but rejected.

What am I diong wrong? Why is the switcher recognized by the binding but doesn’t send a signal to switch the aktor?

many thanks for the help
Sepp

Hi,
I would only recommend to add rocker-switches to OH, if you really plan to automate something outside of Enocean with them by using OH rules or such. If you really want, you can add the rockers later.
I paired all my rockers to the respective actors directly, so they work independently of OH (the WAF is important).
Instead remove the rocker and add the NodOn to OH (run discovery in the Enocean-binding) and initiate pairing on the NodOn.
Once you can control the NodOn via OH (Paper/Basic UI, mobile, Alexa if needed) then you could expand to flows/scenes triggered by rocker(s).

HTH
-Markus

Hi Markus,

thank you for the quick reply (and sorry for posting in the wrong forum).

I started as you described it: i paired the switcher with the actors, and the worked fine. Then I thought, if I could simulate the rocket switcher by OH I could operate the actor (as it was not recognised by OH).

Nevertheless I tried to discover the actor again and it worked! And I can operate it from OH. Works fine now.

Many thanks for your hint.

One more question: could you provide me with the configuration files for those 2 things and the respective item (USB 300 gateway, Energy Measurement Switch)? I prefer those much more then rather configure via PaperUI.

best regards
Sepp

Hi Sepp,
here is my (redacted) configuration as an example:

Bridge enocean:bridge:gtwy "EnOcean Gateway"  [ path="/dev/ttyUSB0" ] {
//Bridge enocean:bridge:gtwy "EnOcean Gateway" [ path="rfc2217://x.y.z.126:3001" ] {
    Thing measurementSwitch 01234567 "Lichter Anrichte/Spüle" @ "Küche" [ enoceanId="01234567", senderIdOffset=10, sendingEEPId="D2_01_12_NODON", broadcastMessages=false, receivingEEPId="D2_01_12_NODON", suppressRepeating=false, pollingInterval=300]
}

I use the 2-channel NodOn as well. Also kept the rfc2217-comment in case you want to put the USB300 remote with ser2net later.

Item example:

Switch eg_kueche_licht_spuele "Spüle" <light> (gLicht,gEG,gKueche,gLichterKueche) 
    {alexa="PowerController.powerState" [category="LIGHT"],
    channel="enocean:measurementSwitch:gtwy:01234567:generalSwitchA"}
Switch eg_kueche_licht_anrichte "Anrichte" <light> (gLicht,gEG,gKueche,gLichterKueche) 
    {alexa="PowerController.powerState" [category="LIGHT"],
    channel="enocean:measurementSwitch:gtwy:01234567:generalSwitchB"}

Just replace the 01234567 with your Enoceanid, adjust the other stuff (names, groups and perhaps remove Alexa if you don’t use it).

HTH
-Markus

Hi Markus,

thank you, exactly what I was looking for. Unfortunately I doesn’t work here.

I adjusted your config to:
things: (only changed the EnOcean-Id of my actor and skipped the “_NODON” in the EEPIds - see comment below)

Bridge enocean:bridge:gtwy “EnOcean Gateway” [ path="/dev/ttyUSB0" ] {
Thing measurementSwitch 058CXXXX “Stube” [ enoceanId=“058CXXXX”, senderIdOffset=10, sendingEEPId=“D2_01_12”, broadcastMessages=false, receivingEEPId=“D2_01_12”, suppressRepeating=false, pollingInterval=300]
}

and items (removed groups and Alexa)

Switch licht_stube “Lampe” {channel=“enocean:measurementSwitch:gtwy:058CXXXX:generalSwitchA”}
Switch spots_stube “Spots” {channel=“enocean:measurementSwitch:gtwy:058CXXXX:generalSwitchB”}

I compared your configuration with the the automatically generated from PaperUI; only difference I found was that you had in the EEPId (both sending and recieving) a “_NODON” added, while in the PaperUI that was missing. I tried both versions same result (not working).

When I hit the Switcher the state of the item in OH is changed too, means the confirmation telegram from the actor is recieved by OH. But I can’t operate the actor with the item from OH.

Both things are online (see also that I can recieve the telegram).

many thanks
Sepp

Sepp,
forgot to mention that you also need to adjust the “senderoffsetid”. This ID got generated while you paired the NodOn via PaperUI. If you don’t have that number anymore, remove the file-based config, pair again, retrieve the id from PaperUI, delete thing, change textual config and make it active again.

HTH
-Markus

I add, depending on the actor, an “autoupdate=false” so that OH waits for the actor to confirm the state change:

Yes. I have also moved the whole thing to a dedicated Raspi with a clean OH installation, and now it just works fine.

Many thanks again
br Sepp