New openHab2 EnOcean binding

Hi Jens (@bruxi ),

you have to click on “Show more”:

Best regards,
Alex

Hi Alex (@Casshern),

sorry for that, I never clicked on that. Thought it is a headline for the arrows under it :expressionless:
Now it works as expected. Thanks a lot.

Best regards,
Jens

Hi Jens (@bruxi),

no problem. I did not see it either the first time :grin:.

Best regards,
Alex

Hi all,
I’ve tried the new enocean binding and all my sensors (TEMP, HUM, CONTACT) work just fine.
Then I tried teaching-in my Permundo PSC234. Process works, thing is created and I can link the channel to an item. But I can’t switch it ON/OFF with the item.
But, when I switch it on/off manually (with button on the plug directly) I get the status change on the switch item.
Maybe someone has a hint!

Thanks in advance,
Christoph

Traces:
Teach-in:

2018-08-04 11:14:39.945 [INFO ] [very.OpenOceanDeviceDiscoveryService] - Stopping EnOcean discovery scan
2018-08-04 11:14:39.948 [INFO ] [very.OpenOceanDeviceDiscoveryService] - Starting EnOcean discovery and accepting teach in requests
2018-08-04 11:14:55.030 [DEBUG] [an.handler.OpenOceanBaseThingHandler] - polling channels
2018-08-04 11:15:10.290 [TRACE] [nal.transceiver.OpenOceanTransceiver] - Received Sync Byte
2018-08-04 11:15:10.392 [TRACE] [nal.transceiver.OpenOceanTransceiver] - Received header, data length 13 optional length 7 packet type 1
2018-08-04 11:15:10.819 [TRACE] [nal.transceiver.OpenOceanTransceiver] - publish event for: 019459D1
2018-08-04 11:15:10.820 [TRACE] [nal.transceiver.OpenOceanTransceiver] - D4A0FF33000901D2019459D10001FFFFFFFF5B00
2018-08-04 11:15:10.822 [INFO ] [nal.transceiver.OpenOceanTransceiver] - Received teach in message from 019459D1
2018-08-04 11:15:10.824 [DEBUG] [nal.transceiver.OpenOceanTransceiver] - new request arrived
2018-08-04 11:15:10.826 [TRACE] [nal.transceiver.OpenOceanTransceiver] - sending request
2018-08-04 11:15:10.827 [DEBUG] [nal.transceiver.OpenOceanTransceiver] - 55000D0701FDD491FF33000901D2FFEE39018001019459D1FF00A4
2018-08-04 11:15:10.836 [INFO ] [very.OpenOceanDeviceDiscoveryService] - Send teach in response for 019459D1
2018-08-04 11:15:10.838 [INFO ] [g.discovery.internal.PersistentInbox] - Added new thing 'openocean:measurementSwitch:cb903b36:019459D1' to inbox.
2018-08-04 11:15:10.850 [TRACE] [nal.transceiver.OpenOceanTransceiver] - Received Sync Byte
2018-08-04 11:15:10.951 [TRACE] [nal.transceiver.OpenOceanTransceiver] - Received header, data length 1 optional length 0 packet type 2
2018-08-04 11:15:10.992 [TRACE] [nal.transceiver.OpenOceanTransceiver] - publish response
2018-08-04 11:15:10.995 [TRACE] [nal.transceiver.OpenOceanTransceiver] - request without listener
2018-08-04 11:15:11.012 [TRACE] [nal.transceiver.OpenOceanTransceiver] - Received Sync Byte
2018-08-04 11:15:11.114 [TRACE] [nal.transceiver.OpenOceanTransceiver] - Received header, data length 13 optional length 7 packet type 1
2018-08-04 11:15:11.541 [TRACE] [nal.transceiver.OpenOceanTransceiver] - publish event for: FFEE3901
2018-08-04 11:15:11.543 [TRACE] [nal.transceiver.OpenOceanTransceiver] - D491FF33000901D2FFEE39018101019459D15000

ON - (with button on the plug)

2018-08-04 11:17:41.156 [TRACE] [nal.transceiver.OpenOceanTransceiver] - Received Sync Byte
2018-08-04 11:17:41.257 [TRACE] [nal.transceiver.OpenOceanTransceiver] - Received header, data length 9 optional length 7 packet type 1
2018-08-04 11:17:41.613 [TRACE] [nal.transceiver.OpenOceanTransceiver] - publish event for: 019459D1
2018-08-04 11:17:41.617 [TRACE] [nal.transceiver.OpenOceanTransceiver] - D20460E4019459D10001FFFFFFFF5900
2018-08-04 11:17:41.622 [DEBUG] [an.handler.OpenOceanBaseThingHandler] - ESP Packet D20460E4019459D100 for 019459D1 received
2018-08-04 11:17:44.195 [TRACE] [nal.transceiver.OpenOceanTransceiver] - Received Sync Byte
2018-08-04 11:17:44.300 [TRACE] [nal.transceiver.OpenOceanTransceiver] - Received header, data length 10 optional length 7 packet type 1
2018-08-04 11:17:44.663 [TRACE] [nal.transceiver.OpenOceanTransceiver] - publish event for: 019459D1
2018-08-04 11:17:44.664 [TRACE] [nal.transceiver.OpenOceanTransceiver] - A50000380C019459D10001FFFFFFFF5900
2018-08-04 11:17:44.666 [DEBUG] [an.handler.OpenOceanBaseThingHandler] - ESP Packet A50000380C019459D100 for 019459D1 received

OFF (with button on the plug)

2018-08-04 11:17:23.035 [TRACE] [nal.transceiver.OpenOceanTransceiver] - Received Sync Byte
2018-08-04 11:17:23.137 [TRACE] [nal.transceiver.OpenOceanTransceiver] - Received header, data length 10 optional length 7 packet type 1
2018-08-04 11:17:23.504 [TRACE] [nal.transceiver.OpenOceanTransceiver] - publish event for: 019459D1
2018-08-04 11:17:23.507 [TRACE] [nal.transceiver.OpenOceanTransceiver] - A50000000C019459D10001FFFFFFFF5B00
2018-08-04 11:17:23.511 [DEBUG] [an.handler.OpenOceanBaseThingHandler] - ESP Packet A50000000C019459D100 for 019459D1 received
2018-08-04 11:17:23.524 [TRACE] [nal.transceiver.OpenOceanTransceiver] - Received Sync Byte
2018-08-04 11:17:23.626 [TRACE] [nal.transceiver.OpenOceanTransceiver] - Received header, data length 9 optional length 7 packet type 1
2018-08-04 11:17:23.973 [TRACE] [nal.transceiver.OpenOceanTransceiver] - publish event for: 019459D1
2018-08-04 11:17:23.975 [TRACE] [nal.transceiver.OpenOceanTransceiver] - D2046080019459D10001FFFFFFFF5B00
2018-08-04 11:17:23.978 [DEBUG] [an.handler.OpenOceanBaseThingHandler] - ESP Packet D2046080019459D100 for 019459D1 received

ON - with openhab item

2018-08-04 11:19:15.808 [DEBUG] [nal.transceiver.OpenOceanTransceiver] - new request arrived
2018-08-04 11:19:15.811 [TRACE] [nal.transceiver.OpenOceanTransceiver] - sending request
2018-08-04 11:19:15.813 [DEBUG] [nal.transceiver.OpenOceanTransceiver] - 550009070156D2011E01FFEE39010001FFFFFFFFFF0074
2018-08-04 11:19:15.836 [TRACE] [nal.transceiver.OpenOceanTransceiver] - Received Sync Byte
2018-08-04 11:19:15.938 [TRACE] [nal.transceiver.OpenOceanTransceiver] - Received header, data length 1 optional length 0 packet type 2
2018-08-04 11:19:15.978 [TRACE] [nal.transceiver.OpenOceanTransceiver] - publish response
2018-08-04 11:19:15.979 [TRACE] [nal.transceiver.OpenOceanTransceiver] - request without listener
2018-08-04 11:19:16.000 [TRACE] [nal.transceiver.OpenOceanTransceiver] - Received Sync Byte
2018-08-04 11:19:16.100 [TRACE] [nal.transceiver.OpenOceanTransceiver] - Received header, data length 9 optional length 7 packet type 1
2018-08-04 11:19:16.445 [TRACE] [nal.transceiver.OpenOceanTransceiver] - publish event for: FFEE3901
2018-08-04 11:19:16.448 [TRACE] [nal.transceiver.OpenOceanTransceiver] - D2011E01FFEE39010101FFFFFFFF5200

HI @sepp99,

from your message log I can see that you have activated the repeaeter of your bridge FFEE3901. I do not know why but the teach in gets messed up when you have activated the repeater mode. I tried it by myself, own the same switch. With actived repeater the switch confirms the teach in (green led blinks 5 times). However I was not able to switch the thing afterwards. After deactivating the repeater everything works as expected.

Hope this helps.

Best regards
Daniel

Just a guess: The switch receives the orginal and the repeated teach in message within the 300ms teach in intervall and just remembers the last received one.

Hi @fruggy83,
thanks for the quick response. I’m a bit confused. You are writing “your bridge FFEE3901”. I have on bridge (USB 300) with BaseID FFEE3900 and two PSC234. One of them was indeed configured as a repeater. So I did factory reset both of them. When I teach-in the two plugs, the first one gets EnoceanId FFEE3901 and the second one FFEE3902.
I also tried linking the “openocean:bridge:cb903b36:repeater” channel to an item to control the repeating function of the USB stick.
Unfortunately, after having disabled all the repeating functions (as far as I see), I’m still not able to switch the plugs via the openhab items.

Best regards,
Christoph

Hi all,
I try to setup a generic thing for my NodOn roller shutter module SIN-2-RS-01. The module supports EEP: D2-05-00. The binding detected the module as generic thing. I use MAP as conversion mode and the content of the map file is:

ChannelId|EnoceanData(Hex)=OpenhabState|Value
genericRollershutter|FF000004=UpDownType|UP
ChannelId|OpenhabCommand=EnoceanData(Hex)
genericRollershutter|UP=00000001
genericRollershutter|DOWN=64000001
genericRollershutter|STOP=02

The incoming value FF000004 I’ve got from the logger. The outgoing values I tried to read out of the EEP description.

The roller shutter item is defined as follow:

Rollershutter Roller_Test1 "StoreTest1" <rollershutter> (gRoller) {channel="openocean:genericThing:0c8ab161:050EBBE2:genericRollershutter"}

If I press the physical up button attached to the up input of the module. OH receive and converts the message. The logger entries are:

2018-08-05 15:12:47.030 [TRACE] [nal.transceiver.OpenOceanTransceiver] - Received Sync Byte
2018-08-05 15:12:47.138 [TRACE] [nal.transceiver.OpenOceanTransceiver] - Received header, data length 10 optional length 7 packet type 1
2018-08-05 15:12:47.508 [TRACE] [nal.transceiver.OpenOceanTransceiver] - publish event for: 050EBBE2
2018-08-05 15:12:47.514 [TRACE] [nal.transceiver.OpenOceanTransceiver] - D2FF000004050EBBE20001FFFFFFFF3300
2018-08-05 15:12:47.519 [DEBUG] [an.handler.OpenOceanBaseThingHandler] - ESP Packet D2FF000004050EBBE200 for 050EBBE2 received

If I press the down button at Basic UI, I notice no reaction of the module. The logger entries are:

2018-08-05 15:07:43.081 [DEBUG] [nal.transceiver.OpenOceanTransceiver] - new request arrived
2018-08-05 15:07:43.090 [TRACE] [nal.transceiver.OpenOceanTransceiver] - sending request
2018-08-05 15:07:43.108 [DEBUG] [nal.transceiver.OpenOceanTransceiver] - 55000A0701EBA564000001FF97A9820001FFFFFFFFFF00D4
2018-08-05 15:07:43.126 [TRACE] [nal.transceiver.OpenOceanTransceiver] - Received Sync Byte
2018-08-05 15:07:43.228 [TRACE] [nal.transceiver.OpenOceanTransceiver] - Received header, data length 1 optional length 0 packet type 2
2018-08-05 15:07:43.269 [TRACE] [nal.transceiver.OpenOceanTransceiver] - publish response
2018-08-05 15:07:43.272 [TRACE] [nal.transceiver.OpenOceanTransceiver] - request without listener

Edit: The EEP: D2-05-00 us a VLD telegram. Could this be the root of my problems? Because the generic thing property “EEP for sending commands” supports “RPS” and “4BS” telegrams but no “VDL” telegram.

I am thankful for any help how to setup the outgoing channel.

Best regards Raphael

Hi @sepp99,

sorry my fault, I misinterpreted the messages. However these PSC234 switches have problems when message repeating comes into play.

During the teach in you receive the following message
D4 A0FF33000901D2 019459D1 0001FFFFFFFF5B00
D4 => Teach in request of you switch
A0FF33000901D2 => Teach in information
019459D1 => Enocean Id of you PSC234

The binding responded to this message with
55000D0701FD D491FF33000901D2 FFEE3901 8001 019459D1 FF00A4
55000D0701FD => Message header
D491FF33000901D2 => teach in response
FFEE3901 => openhab enocean id
80 01 => status info
019459D1 => id of message receiver, PCS234

And this message gets repeated (status 81 => message got 1 time repeated, last 4 bit)
D491FF33000901D2 FFEE3901 8101 019459D15000

As I told you, I had problems with the teach in when a repeater was activated. I will update the binding to suppress the repeating of teach in responses.

Best regards
Daniel

Hi @raphael,

you are absolutely right. The generic thing does not support VLD telegrams. I will try to implement the D2-05-00 EEP in the next days.

Best regards
Daniel

Hi Daniel (@fruggy83)

This sounds great for me. Let me know if you need more information.

Thanks in advance
Raphael

HI all,

as some of you already know I am trying to make this binding an official one. However before I do a PR for 2261 I wanted to clean up the code and do some last breaking changes*.

I implemented the following features for the current (and hopefully last) OpenOcean binding version:

  • Added a tcpbridge, so you can position your enocean receiver independent from your server and forward the enocean messages with ser2net to it. Running a dockerized openhab installation should also be easier now. Breaking changes:
    – current bridge renamed to serialbridge
    – changed event based message receiving to a polling mode, may result in higher cpu load, however I did not see that on my windows dev machine or raspberry pi
  • Added EEP D2-05 for rollershutters (@raphael). Breaking change: changed thing type eltakoFSB to rollershutter (also remember to update your item channel links)
  • Support auto discovery of USB300 dongles, many thanks to @bodiroga
  • Suppress repeating of UTE teach in response (@sepp99)
  • Generic things should be able to send VLD messages

It would be great if you could test these changes and leave a comment if something goes wrong.

Best regards
Daniel

*the very last breaking change will be the renaming of this binding openocean => enocean binding :cry:

Hi Daniel (@fruggy83)

Thanks a lot for implementing the EEP D2-05. I plan to test it tomorrow evening.

Best regards
Raphael

Hi Raphael (@raphael)

that sounds great. Thanks a lot for your support :+1:. Do not hesitate to ask me if you have any question with the transition to the new version of this binding.

Best regards
Daniel

Hi Daniel (@fruggy83),

just tried your new binding version. Unfortunately the repeating problem still exists. Here are the logs:

/_/                        2.3.0
                           Release Build   

Hit '<tab>' for a list of available commands
and '[cmd] --help' for help on a specific command.
Hit '<ctrl-d>' or type 'system:shutdown' or 'logout' to shutdown openHAB.

openhab> bundle:list | grep -i ocean
247 │ Active   │  80 │ 2.4.0.201808082033     │ OpenOcean Binding



TeachIn:
2018-08-09 17:45:45.191 [TRACE] [nal.transceiver.OpenOceanTransceiver] - Received Sync Byte
2018-08-09 17:45:45.207 [TRACE] [nal.transceiver.OpenOceanTransceiver] - Received header, data length 13 optional length 7 packet type 1
2018-08-09 17:45:45.214 [DEBUG] [nal.transceiver.OpenOceanTransceiver] - publish event for: 019459D1
2018-08-09 17:45:45.217 [DEBUG] [nal.transceiver.OpenOceanTransceiver] - D4A0FF33000901D2019459D10001FFFFFFFF5B00
2018-08-09 17:45:45.218 [INFO ] [nal.transceiver.OpenOceanTransceiver] - Received teach in message from 019459D1
2018-08-09 17:45:45.219 [DEBUG] [nal.transceiver.OpenOceanTransceiver] - new request arrived
2018-08-09 17:45:45.221 [TRACE] [nal.transceiver.OpenOceanTransceiver] - sending request
2018-08-09 17:45:45.222 [DEBUG] [nal.transceiver.OpenOceanTransceiver] - 55000D0701FDD491FF33000901D2FFEE39018F01019459D1FF0045
2018-08-09 17:45:45.230 [INFO ] [very.OpenOceanDeviceDiscoveryService] - Send teach in response for 019459D1
2018-08-09 17:45:45.233 [INFO ] [g.discovery.internal.PersistentInbox] - Added new thing 'openocean:measurementSwitch:FTWYOPB8:019459D1' to inbox.
2018-08-09 17:45:45.239 [TRACE] [nal.transceiver.OpenOceanTransceiver] - Received Sync Byte
2018-08-09 17:45:45.241 [TRACE] [nal.transceiver.OpenOceanTransceiver] - Received header, data length 1 optional length 0 packet type 2
2018-08-09 17:45:45.242 [TRACE] [nal.transceiver.OpenOceanTransceiver] - publish response
2018-08-09 17:45:45.244 [TRACE] [nal.transceiver.OpenOceanTransceiver] - request without listener
2018-08-09 17:45:54.394 [INFO ] [very.OpenOceanDeviceDiscoveryService] - Stopping EnOcean discovery scan

Another thing is that, sometimes when I restart OpenHab, it takes a long time for the EnOcean things to come online. What speeds things up is to let the binding search for new devices…

2018-08-09 17:36:53.957 [INFO ] [ansceiver.OpenOceanSerialTransceiver] - Transceiver shutdown
2018-08-09 17:36:53.976 [INFO ] [ansceiver.OpenOceanSerialTransceiver] - OpenOceanSerialTransceiver initialized
2018-08-09 17:37:54.007 [INFO ] [ansceiver.OpenOceanSerialTransceiver] - Transceiver shutdown
2018-08-09 17:37:54.027 [INFO ] [ansceiver.OpenOceanSerialTransceiver] - OpenOceanSerialTransceiver initialized
2018-08-09 17:38:54.037 [INFO ] [ansceiver.OpenOceanSerialTransceiver] - Transceiver shutdown
2018-08-09 17:38:54.055 [INFO ] [ansceiver.OpenOceanSerialTransceiver] - OpenOceanSerialTransceiver initialized
2018-08-09 17:39:54.068 [DEBUG] [ansceiver.OpenOceanSerialTransceiver] - shutting down transceiver
2018-08-09 17:39:54.069 [DEBUG] [nal.transceiver.OpenOceanTransceiver] - Interrupt rx Thread
2018-08-09 17:39:54.069 [DEBUG] [ansceiver.OpenOceanSerialTransceiver] - Closing serial output stream
2018-08-09 17:39:54.070 [DEBUG] [ansceiver.OpenOceanSerialTransceiver] - Closeing serial input stream
2018-08-09 17:39:54.071 [DEBUG] [ansceiver.OpenOceanSerialTransceiver] - Closing serial port
2018-08-09 17:39:54.154 [INFO ] [ansceiver.OpenOceanSerialTransceiver] - Transceiver shutdown
2018-08-09 17:39:54.166 [INFO ] [ansceiver.OpenOceanSerialTransceiver] - OpenOceanSerialTransceiver initialized
2018-08-09 17:39:54.168 [DEBUG] [ocean.handler.OpenOceanBridgeHandler] - request base id

And a last question: Is it possible to define bridge and things entirely in .things files?

Thanks for your great work on this Binding!
Regards,
Christoph

Hi Christoph (@sepp99),

I can see from you log that the teach in response is no longer repeated. With this setup I was able to do a teach in. So I am slowly running out od idees what is going wrong with with you switches. If you have not already done it, could you do me a favor and try the following. Do a factory reset with both switches (hold touch sensor 9 seconds and wait for the green led flashing). Afterwards power on just one switch and unplug the other. Do the teach in.

Thanks a lot for the hint with the startup. I have changed a lot basic stuff in this version (connection to serial port and waiting for incoming messages). So there could something got broken. I will analyse that.

Is it possible to define bridge and things entirely in .things files?

Yes for sure. As I frequently update my system I would go mad if I had to setup my whole actuators and sensors again and again. Here is a short example of my .thing file


Bridge openocean:serialbridge:gtwy "OpenOcean Gateway" [ port="/dev/ttyAMA0" ] {
	// Lights
	// outside
	Thing centralCommand FFF24081 "Hauseingang_Licht" @ "Aussen" [ senderIdOffset=1, sendingEEPId="A5_38_08_01", receivingEEPId="F6_00_00", broadcastMessages=true, suppressRepeating=false ]
	
	// dimmer
	Thing centralCommand FFF24099 "Wohnzimmer_Dimmer" @ "Wohnzimmer" [ senderIdOffset=25, sendingEEPId="A5_38_08_02", receivingEEPId="A5_38_08_02", broadcastMessages=true, suppressRepeating=false ]

	// rolllershutters
	Thing rollershutter FFF2409A "Gast_Rollo" @ "Gast" [ senderIdOffset=26, sendingEEPId="A5_3F_7F_EltakoFSB", receivingEEPId="A5_3F_7F_EltakoFSB", broadcastMessages=true, suppressRepeating=false ] {Channels: Type rollershutter:rollershutter [shutTime=25]}
	
	// Room panels
	Thing roomOperatingPanel 018DFC43 "Gast_Panel" @ "Gast" [ receivingEEPId="A5_10_06" ]
	
	// other stuff
	Thing rockerSwitch FEFDAF7C "Bad_Schalter_Licht" @ "Bad" [ receivingEEPId="F6_02_01" ]
	Thing mechanicalHandle 01A71C3B "HWR_MechanicalHandle" @ "HWR" [ receivingEEPId="F6_10_00" ]	
}

Best regards
Daniel

Hi Daniel (@fruggy83)

Auto detection of the serial bridge and the rollershutter worked with the new version of the binding. For testing the rollershutter I used the following items:

Rollershutter Roller_Test1 "StoreTest1" <rollershutter> (gRoller) {channel="openocean:rollershutter:A60149NF:050EBBE2:rollershutter"}
String Roller_Status1 "StoreTest1 Status [%s]" (gRoller) {channel="openocean:rollershutter:A60149NF:050EBBE2:receivingState"}

Sending the up, down and stop command worked. The log entries for the up command are:

2018-08-09 21:40:07.785 [DEBUG] [nal.transceiver.OpenOceanTransceiver] - new request arrived
2018-08-09 21:40:07.792 [TRACE] [nal.transceiver.OpenOceanTransceiver] - sending request
2018-08-09 21:40:07.799 [DEBUG] [nal.transceiver.OpenOceanTransceiver] - 55000A0701EBD200000001FF97A9810001050EBBE2FF00AA
2018-08-09 21:40:07.817 [TRACE] [nal.transceiver.OpenOceanTransceiver] - Received Sync Byte
2018-08-09 21:40:07.821 [TRACE] [nal.transceiver.OpenOceanTransceiver] - Received header, data length 1 optional length 0 packet type 2
2018-08-09 21:40:07.825 [TRACE] [nal.transceiver.OpenOceanTransceiver] - publish response
2018-08-09 21:40:07.828 [TRACE] [nal.transceiver.OpenOceanTransceiver] - request without listener
2018-08-09 21:40:07.945 [TRACE] [nal.transceiver.OpenOceanTransceiver] - Received Sync Byte
2018-08-09 21:40:07.949 [TRACE] [nal.transceiver.OpenOceanTransceiver] - Received header, data length 10 optional length 7 packet type 1
2018-08-09 21:40:07.956 [DEBUG] [nal.transceiver.OpenOceanTransceiver] - publish event for: 050EBBE2
2018-08-09 21:40:07.960 [DEBUG] [nal.transceiver.OpenOceanTransceiver] - D2FF000004050EBBE20001FFFFFFFF3700
2018-08-09 21:40:07.964 [DEBUG] [an.handler.OpenOceanBaseThingHandler] - ESP Packet D2FF000004050EBBE200 for 050EBBE2 received

I was able to interpret the command telegram:

55000A0701EBD200000001FF97A9810001050EBBE2FF00AA

And this telegram seems to be the status response from the rollershutter:

D2FF000004050EBBE20001FFFFFFFF3700

So far I wasn’t able to receive any valid status information. The status item itself never changed its initial value.

Best regards
Raphael

Hallo Raphael (@raphael)

Auto detection of the serial bridge and the rollershutter worked with the new version of the binding. […]
Sending the up, down and stop command worked.

That are very good news. Thanks a lot for your testing. :+1:

So far I wasn’t able to receive any valid status information. The status item itself never changed its initial value.

I am not quite sure if I understand you correctly: Do you mean your item Roller_Test1 does not get updated when you press your physical button of your rollershutter? Or do you mean that only your Roller_Status1 item does not get updated? Could you please tell me the initial value of this item? Is it “-”?

Best regards
Daniel

Hi Daniel (@fruggy83)

Thanks belong to you for your great effort and support. So testing is the minimum I can do.

The rollershutter sends the CMD4

D2FF000004050EBBE20001FFFFFFFF3700
  • As a replay to CMD3. This means polling seems to work too.
  • After receiving a command from OH.
  • After releasing a physical button connected to the rollershutter.

But the received CMD4 seems to have no effect to the items “Roller_Test1” and “Roller_Status1”. The item “Roller_Status1” is initialized with “-”.

Which behavior of the status item would you expect?

Maybe the content of the CMD4 is the problem. For me it looks like that an unknown position will be returned.

Best regards
Raphael

Hello Daniel (@fruggy83),

first of all I have to shout out a very loud THANK YOU for your effort you put in building this enocean binding. I am very pleased to see that now there is a robust and working solution for enocean. More than a year ago, I tried to integrate some enocean devices into OpenHAB, but gave up due to the poor enocean support. Now this is the second try :slight_smile:

So I installed your binding on august the 7th, two days later (august the 9th, 21:00h) you build another version of your binding. You mentioned a change in polling behavior, here is the cpu load on my system for your reference:

So I integrated 4 NodOn STPH-2-1-05 temperature- & humidity sensors. This works. Now I am trying to connect a Permundo PSC132 measurementswitch, but I get some difficulties. I try to connect them by device discovery, but later on my plan is to use config files.

With device discovery I am able to find the switch, add the “thing” and connect the items:


The switch in openHAB reflects the state of the “real” switch and changes its state when I press the physical button. But the measurements for current power and total usage do not show up:
image
Also, the other way does not work: if I change the state in OpenHAB, the physical switch does not switch. Here are the steps I have done:

Started device discovery, hold config button at the switch for 3 seconds. New device was found, LED at switch flashes green.

23:01:50.691 [INFO ] [overy.OpenOceanDeviceDiscoveryService] - Starting EnOcean discovery and accepting teach in requests
23:02:07.097 [TRACE] [rnal.transceiver.OpenOceanTransceiver] - Received Sync Byte
23:02:07.099 [TRACE] [rnal.transceiver.OpenOceanTransceiver] - Received header, data length 13 optional length 7 packet type 1
23:02:07.106 [DEBUG] [rnal.transceiver.OpenOceanTransceiver] - publish event for: 019500F6
23:02:07.108 [DEBUG] [rnal.transceiver.OpenOceanTransceiver] - D4A0FF33000901D2019500F60001FFFFFFFF4400
23:02:07.110 [INFO ] [rnal.transceiver.OpenOceanTransceiver] - Received teach in message from 019500F6
23:02:07.110 [DEBUG] [rnal.transceiver.OpenOceanTransceiver] - new request arrived
23:02:07.111 [TRACE] [rnal.transceiver.OpenOceanTransceiver] - sending request
23:02:07.111 [DEBUG] [rnal.transceiver.OpenOceanTransceiver] - 55000D0701FDD491FF33000901D2FF9B08818F01019500F6FF006D
23:02:07.116 [INFO ] [overy.OpenOceanDeviceDiscoveryService] - Send teach in response for 019500F6
23:02:07.117 [INFO ] [ig.discovery.internal.PersistentInbox] - Added new thing 'openocean:measurementSwitch:usb300:019500F6' to inbox.
23:02:07.117 [INFO ] [smarthome.event.InboxAddedEvent      ] - Discovery Result with UID 'openocean:measurementSwitch:usb300:019500F6' has been added.
23:02:07.129 [TRACE] [rnal.transceiver.OpenOceanTransceiver] - Received Sync Byte
23:02:07.129 [TRACE] [rnal.transceiver.OpenOceanTransceiver] - Received header, data length 1 optional length 0 packet type 2
23:02:07.129 [TRACE] [rnal.transceiver.OpenOceanTransceiver] - publish response
23:02:07.130 [TRACE] [rnal.transceiver.OpenOceanTransceiver] - request without listener
23:02:50.691 [INFO ] [overy.OpenOceanDeviceDiscoveryService] - Stopping EnOcean discovery scan

Add discovered thing with EEP D2-01-09. Connect chanels. Press button on switch:

23:10:44.775 [TRACE] [rnal.transceiver.OpenOceanTransceiver] - Received Sync Byte
23:10:44.777 [TRACE] [rnal.transceiver.OpenOceanTransceiver] - Received header, data length 7 optional length 7 packet type 1
23:10:44.780 [DEBUG] [rnal.transceiver.OpenOceanTransceiver] - publish event for: 019500F6
23:10:44.781 [DEBUG] [rnal.transceiver.OpenOceanTransceiver] - F610019500F63001FFFFFFFF4000
23:10:44.783 [DEBUG] [ean.handler.OpenOceanBaseThingHandler] - ESP Packet F610019500F630 for 019500F6 received
23:10:45.334 [TRACE] [rnal.transceiver.OpenOceanTransceiver] - Received Sync Byte
23:10:45.337 [TRACE] [rnal.transceiver.OpenOceanTransceiver] - Received header, data length 9 optional length 7 packet type 1
23:10:45.339 [DEBUG] [rnal.transceiver.OpenOceanTransceiver] - publish event for: 019500F6
23:10:45.339 [DEBUG] [rnal.transceiver.OpenOceanTransceiver] - D20460E4019500F60001FFFFFFFF3D00
23:10:45.339 [DEBUG] [ean.handler.OpenOceanBaseThingHandler] - ESP Packet D20460E4019500F600 for 019500F6 received
23:10:45.341 [INFO ] [smarthome.event.ItemStateChangedEvent] - PermundoSwitch_switch changed from OFF to ON

Several telegrams are received on OpenHAB, but do not get processed:

23:10:49.780 [TRACE] [rnal.transceiver.OpenOceanTransceiver] - Received Sync Byte
23:10:49.783 [TRACE] [rnal.transceiver.OpenOceanTransceiver] - Received header, data length 10 optional length 7 packet type 1
23:10:49.786 [DEBUG] [rnal.transceiver.OpenOceanTransceiver] - publish event for: 019500F6
23:10:49.786 [DEBUG] [rnal.transceiver.OpenOceanTransceiver] - A50000190C019500F60001FFFFFFFF4000
23:10:49.786 [DEBUG] [ean.handler.OpenOceanBaseThingHandler] - ESP Packet A50000190C019500F600 for 019500F6 received
23:10:52.787 [TRACE] [rnal.transceiver.OpenOceanTransceiver] - Received Sync Byte
23:10:52.789 [TRACE] [rnal.transceiver.OpenOceanTransceiver] - Received header, data length 10 optional length 7 packet type 1
23:10:52.792 [DEBUG] [rnal.transceiver.OpenOceanTransceiver] - publish event for: 019500F6
23:10:52.792 [DEBUG] [rnal.transceiver.OpenOceanTransceiver] - A500001F0C019500F60001FFFFFFFF4000
23:10:52.792 [DEBUG] [ean.handler.OpenOceanBaseThingHandler] - ESP Packet A500001F0C019500F600 for 019500F6 received
23:10:55.794 [TRACE] [rnal.transceiver.OpenOceanTransceiver] - Received Sync Byte
23:10:55.796 [TRACE] [rnal.transceiver.OpenOceanTransceiver] - Received header, data length 10 optional length 7 packet type 1
23:10:55.803 [DEBUG] [rnal.transceiver.OpenOceanTransceiver] - publish event for: 019500F6
23:10:55.804 [DEBUG] [rnal.transceiver.OpenOceanTransceiver] - A50000200C019500F60001FFFFFFFF4000
23:10:55.806 [DEBUG] [ean.handler.OpenOceanBaseThingHandler] - ESP Packet A50000200C019500F600 for 019500F6 received

I change the state of the switch in OpenHAB, but the real switch does not change:

23:16:57.552 [INFO ] [smarthome.event.ItemCommandEvent     ] - Item 'PermundoSwitch_switch' received command ON
23:16:57.553 [DEBUG] [rnal.transceiver.OpenOceanTransceiver] - new request arrived
23:16:57.554 [TRACE] [rnal.transceiver.OpenOceanTransceiver] - sending request
23:16:57.555 [INFO ] [smarthome.event.ItemStateChangedEvent] - PermundoSwitch_switch changed from OFF to ON
23:16:57.555 [DEBUG] [rnal.transceiver.OpenOceanTransceiver] - 550009070156D2011E01FF9B08810001FFFFFFFFFF0031
23:16:57.570 [TRACE] [rnal.transceiver.OpenOceanTransceiver] - Received Sync Byte
23:16:57.570 [TRACE] [rnal.transceiver.OpenOceanTransceiver] - Received header, data length 1 optional length 0 packet type 2
23:16:57.571 [TRACE] [rnal.transceiver.OpenOceanTransceiver] - publish response
23:16:57.571 [TRACE] [rnal.transceiver.OpenOceanTransceiver] - request without listener

Puh, long post :slight_smile:
Do you see where the problem is? Thank you very much!

Best regards
Dominik

Hi Raphael (@raphael),

sorry I did not read your rollershutter messages in detail. As you said, the following message (removed all the header and status stuff) FF000004 means that your rollershutter cannot determine the position. FF is the position value in percent. The first bit can be ignored, so we have 7F => 127 => position unknown. So I do not change the status of Roller_Test1 at all. I do not know why these NodOn thing do not send the position. Do you have to do some sort of calibration?

However this does not explain why your Roller_Status1 item does not get updated. I would expect something like “Rssi 55, repeated 0”. Could you do me a favor and look into your log when the thing poll its status next time? Thank a lot in advance.

Best regards
Daniel