Enocean item (button) not working after powercycle

Hi all

I recognized that my enocean button is not working anymore after a restart of my raspberry pi (OH3 and GPIO-Enocean module). To fix the issue I have to change the EnOceanID, and change it back to the original value (gui). To mention is also, that it is not depending if the thing- / itemconfig is done by guy or file, the issue is present anyway.

I’m useing the following thing / channel / item:

A debug on the enocean module shows that the commands from the enocean button are received, but OH does not react.

For me it seems that the enocean part is running proper, but maybe it is comming up to early or to late, so that OH does not work proper after startup.

I am using OH3.0.2 on a raspberry pi 3 and enocean button from Feller (Feller: PTM210 S3001-A210-29 DC).

Does someone know this issue also, or does someone have the same environement without this issue? I’m happy about every kind of help / information.

Thanks,
Backflip

Hi,
I am using the same setup.
Pi3 with gpio enocean board.

I don’t get any problems or not responding devices after a restart. And I‘ve got a lot of enocean devices.
I use OH3.1 but the not the enocean binding you can install via openhab.
I use openocean, from the GitHub repo.

Hi,
Many thanks for your feedback. I think you are speeking about this openocean Repo
For me it looks like to do a try with it, but I don’t understand how to install, or in which folder to copy the repo. Did I miss something in the readme?

Uninstall the official binding and place the .jar file into the addons folder. That’s it.

Maybe you need to install the serial transport:

feature:install openhab-transport-serial 

Sorry, but I don’t find out how to get this .jar file…? There is no .jar file in the repo…

Sure there is :smile:

https://github.com/fruggy83/openocean/releases/download/v3.1.0.0/org.openhab.binding.openocean-3.1.0-SNAPSHOT.jar

It looks like I’m not so familiar with git :thinking: :grinning:
I got the file and placed it to /usr/share/openhab/addons/ after removing the enocean bindiing. Then I installed the openhab-transport-serial feature over the console. After a reboot I got the following situation:

  • Guy added enocean things are not working anymore > status = uninitialized
  • File added enocean things are vanished
  • Enocean Gateway is vanished

Enocean.things looks like the following:

Bridge enocean:bridge:gtwy "EnOcean Gateway" [ path="/dev/serial0" ] {
  Thing classicDevice cd02 "Taster Jalousie B1_1" @ "Buero1" [
        senderIdOffset=2,
        sendingEEPId="F6_02_01",
        broadcastMessages=true,
        receivingEEPId="F6_02_01",
        suppressRepeating=false
   ] {
        Type virtualSwitchA : vs12      [duration=300, switchMode="rockerSwitch"]
        Type rockerswitchListenerSwitch : Listener12 "Taster J B1"  [enoceanId="003AD164", channel="channelA", switchMode="rockerSwitch"]
        }

  Thing classicDevice cd03 "Taster Jalousie B2_1" @ "Buero2" [
        senderIdOffset=3,
        sendingEEPId="F6_02_01",
        broadcastMessages=true,
        receivingEEPId="F6_02_01",
        suppressRepeating=false
   ] {
        Type virtualSwitchA : vs13      [duration=300, switchMode="rockerSwitch"]
        Type rockerswitchListenerSwitch : Listener13 "Taster J B2"      [enoceanId="003AD187", channel="channelA", switchMode="rockerSwitch"]
        }

  Thing classicDevice cd04 "Taster Jalousie B3_1" @ "Buero3" [
        senderIdOffset=4,
        sendingEEPId="F6_02_01",
        broadcastMessages=true,
        receivingEEPId="F6_02_01",
        suppressRepeating=false
   ] {
        Type virtualSwitchA : vs14      [duration=300, switchMode="rockerSwitch"]
        Type rockerswitchListenerSwitch : Listener14 "Taster J B3"      [enoceanId="003AD18B", channel="channelA", switchMode="rockerSwitch"]
        }

 Thing classicDevice cd05 "Taster Jalousie SZ1_1" @ "Schlafzimmer" [
        senderIdOffset=5,
        sendingEEPId="F6_02_01",
        broadcastMessages=true,
        receivingEEPId="F6_02_01",
        suppressRepeating=false
   ] {
        Type virtualSwitchA : vs15      [duration=300, switchMode="rockerSwitch"]
        Type rockerswitchListenerSwitch : Listener15 "Taster J S1"      [enoceanId="003AA4CA", channel="channelA", switchMode="rockerSwitch"]
        }

 Thing classicDevice cd06 "Taster Jalousie SZ1_2" @ "Schlafzimmer" [
        senderIdOffset=6,
        sendingEEPId="F6_02_01",
        broadcastMessages=true,
        receivingEEPId="F6_02_01",
        suppressRepeating=false
   ] {
        Type virtualSwitchA : vs16      [duration=300, switchMode="rockerSwitch"]
        Type rockerswitchListenerSwitch : Listener16 "Taster J S2"      [enoceanId="003AA4CA", channel="channelB", switchMode="rockerSwitch"]
        }

 Thing classicDevice cd07 "Taster Jalousie B4_1" @ "Buero4" [
        senderIdOffset=7,
        sendingEEPId="F6_02_01",
        broadcastMessages=true,
        receivingEEPId="F6_02_01",
        suppressRepeating=false
   ] {
        Type virtualSwitchA : vs17      [duration=300, switchMode="rockerSwitch"]
        Type rockerswitchListenerSwitch : Listener17 "Taster J1 B4" [enoceanId="0033BFD1", channel="channelA", switchMode="rockerSwitch"]
        }
 Thing classicDevice cd08 "Taster Jalousie B4_2" @ "Buero4" [
        senderIdOffset=8,
        sendingEEPId="F6_02_01",
        broadcastMessages=true,
        receivingEEPId="F6_02_01",
        suppressRepeating=false
   ] {
        Type virtualSwitchA : vs18      [duration=300, switchMode="rockerSwitch"]
        Type rockerswitchListenerSwitch : Listener18  "Taster J2 B4" [enoceanId="0033BFD1", channel="channelB", switchMode="rockerSwitch"]
        }
}

At the moment it is not clear for me why I lost the enocean gateway. Could there be a dependency to my used path:

Bridge enocean:bridge:gtwy "EnOcean Gateway" [ path="/dev/serial0" ]

Because in the example always the following is used:

Bridge enocean:bridge:gtwy "EnOcean Gateway" [ path="/dev/ttyAMA0" ]

I don’t know why your gateway is lost, I use as config the /dev/ttyAMA0 path. No problems with that.

Have you checked the log after starting the openhab service? Maybe there is another dependecy missing or the openocean binding doesn‘t start correctly.
Do you see the openocean binding when adding a new thing via gui? Can you stop the Bridge and start it again via gui?

It looks like a major issue with enocean, because I don’t have any enocen log entries after restart openhab service, the only on is

 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'enocean.things'

I’m not able to add a thing because openenocean is not available. It is also not possible to start/stop the bridge because there is no bridge.
From my point of view, the openenocean is not starting, because I can’t find some entries in the logfile.

Yes, looks like this is your problem.

Try to stop openhab service and start it again. Look at the log when openhab tries to start the bundle. There must be an error or warning about it.
Check your log for something like:


2021-06-28 21:46:48.103 [WARN ] [org.apache.felix.fileinstall ] - Error while starting bundle: file:/usr/share/openhab/addons/org.openhab.binding.openocean-3.1.0-SNAPSHOT.jar 

There is no entry about starting the .jar file. For me it looks like it is not starting. When I search for “error”, I can find only some SQL messages.
Are there any dependencies that OH is checking or not the addons folder?

Sorry, can’t help you with that…
When I start the openhab service I see some logs for my addons, that way I can identify why an addon is not starting.

@dirkdirk Ok, many thanks for your helpful information!
I verified permissions of the .jar file which have been wrong, Then I red the stuff about how to using addons, but it looks like it has to be placed just in the right place, which is correct in my case. Then I checked the console where I see that the feature openhab-addons is not installed, which I think is also ok:

openhab-addons                                    │ 3.1.0            │          │ Uninstalled │ openhab-addons-3.1.0     │ openHAB Add-ons Aggregator

But the .jar file will still not be executed.

Are you sure the addons isn’t active?
Please check it with:

bundle:list -s | grep openocean

Out of couriosity: what devices (rollershutter actuators) are you trying to control ?
Perhaps these are supported directly by the OOTB binding. This would also allow controlling them directly without going the route of “Classicdevice” at all …

It looks like, thats the output:

openhab> bundle:list -s | grep ocean
300 x Active x  80 x 3.1.0                 x org.openhab.binding.bluetooth.enoceanble

Most of the devices I want to control are Homematic HmIP-FBL Blindactors (but there are also HmIP-FSM for light control used). I’m using the homematic binding to control these devices.

Looks good to me.
Maybe you can add the bridge via the openocean gui?

I’m a little confused :thinking:. Why it looks good for you, I thought there should be bundle entry with “openocean”?
What do you mean exactly with openocean gui? Is there a second gui to the OH gui?
To add the bridge via gui is not possible, because there is no opencean-binding available, it looks like this when I click to add:

So why do you use a “classicdevice” ?
I guess your usecase is: use a realworld enocean rockerswitch/button to send commands via Homeatic to your blinds ?
If so, a “rockerswitch” item would the correct thing to use. It would just receive the enocean telegrams from your buttons and you can run rules on their trigger channels.

The “classicdevice” is meant to send out Enocean-telegrams to real Encocean-devices.

If I misunderstood you, can you explain the complete usecase ?