Philio PSR04 Smart Color Button (Z-Wave)

I would remove the respond_to_basic - this might cause a problem, and certainly doesn’t make any sense. Otherwise you should check the debug logs.

That’s how I started. To create some logs I switched back to this config (Binding Version 1.9.0.201701130210):

Number	PSR04_Number	"PSR04 Pos [%d]"			{zwave="33:command=BASIC"}
Number	PSR04_Scene	"PSR04 CentralScene [%d]"		{zwave="33:command=CENTRAL_SCENE"}

I first longpress the button, then turn it, then longpress it again. Longpress sends the CentralScene, Turning sends the Basic Set.

2017-01-16 20:34:22.687 [DEBUG] [ApplicationCommandMessageClass:41  ]- NODE 33: Application Command Request (ALIVE:PING)
2017-01-16 20:34:22.688 [DEBUG] [ApplicationCommandMessageClass:146 ]- NODE 33: Incoming command class CENTRAL_SCENE (0x5b)
2017-01-16 20:34:22.688 [DEBUG] [.ZWaveCentralSceneCommandClass:77  ]- NODE 33: Received central scene command (v1)
2017-01-16 20:34:22.689 [DEBUG] [.ZWaveCentralSceneCommandClass:84  ]- NODE 33: Received scene 1 ; key 2
2017-01-16 20:34:22.689 [DEBUG] [b.z.i.protocol.ZWaveController:668 ]- NODE 33: Notifying event listeners: ZWaveCommandClassValueEvent
2017-01-16 20:34:22.691 [DEBUG] [.z.internal.ZWaveActiveBinding:472 ]- NODE 33: Got a value event from Z-Wave network, endpoint = 0, command class = CENTRAL_SCENE, value = {key=2, scene=1}
2017-01-16 20:34:22.705 [DEBUG] [ApplicationCommandMessageClass:41  ]- NODE 33: Application Command Request (ALIVE:PING)
2017-01-16 20:34:22.706 [DEBUG] [ApplicationCommandMessageClass:146 ]- NODE 33: Incoming command class BASIC (0x20)
2017-01-16 20:34:22.709 [DEBUG] [z.i.p.c.ZWaveBasicCommandClass:73  ]- NODE 33: Received Basic Request
2017-01-16 20:34:22.714 [DEBUG] [z.i.p.c.ZWaveBasicCommandClass:77  ]- NODE 33: Basic Set sent to the controller will be processed as Basic Report
2017-01-16 20:34:22.715 [DEBUG] [z.i.p.c.ZWaveBasicCommandClass:106 ]- NODE 33: Basic report, value = 0x00
2017-01-16 20:34:22.716 [DEBUG] [b.z.i.protocol.ZWaveController:668 ]- NODE 33: Notifying event listeners: ZWaveCommandClassValueEvent
2017-01-16 20:34:22.719 [DEBUG] [.z.internal.ZWaveActiveBinding:472 ]- NODE 33: Got a value event from Z-Wave network, endpoint = 0, command class = BASIC, value = 0
2017-01-16 20:34:23.096 [DEBUG] [ApplicationCommandMessageClass:41  ]- NODE 33: Application Command Request (ALIVE:PING)
2017-01-16 20:34:23.097 [DEBUG] [ApplicationCommandMessageClass:146 ]- NODE 33: Incoming command class CENTRAL_SCENE (0x5b)
2017-01-16 20:34:23.098 [DEBUG] [.ZWaveCentralSceneCommandClass:77  ]- NODE 33: Received central scene command (v1)
2017-01-16 20:34:23.099 [DEBUG] [.ZWaveCentralSceneCommandClass:84  ]- NODE 33: Received scene 1 ; key 1
2017-01-16 20:34:23.099 [DEBUG] [b.z.i.protocol.ZWaveController:668 ]- NODE 33: Notifying event listeners: ZWaveCommandClassValueEvent
2017-01-16 20:34:23.101 [DEBUG] [.z.internal.ZWaveActiveBinding:472 ]- NODE 33: Got a value event from Z-Wave network, endpoint = 0, command class = CENTRAL_SCENE, value = {key=1, scene=1}
2017-01-16 20:34:33.840 [DEBUG] [ApplicationCommandMessageClass:41  ]- NODE 33: Application Command Request (ALIVE:PING)
2017-01-16 20:34:33.841 [DEBUG] [ApplicationCommandMessageClass:146 ]- NODE 33: Incoming command class CENTRAL_SCENE (0x5b)
2017-01-16 20:34:33.842 [DEBUG] [.ZWaveCentralSceneCommandClass:77  ]- NODE 33: Received central scene command (v1)
2017-01-16 20:34:33.843 [DEBUG] [.ZWaveCentralSceneCommandClass:84  ]- NODE 33: Received scene 1 ; key 0
2017-01-16 20:34:33.845 [DEBUG] [b.z.i.protocol.ZWaveController:668 ]- NODE 33: Notifying event listeners: ZWaveCommandClassValueEvent
2017-01-16 20:34:33.846 [DEBUG] [.z.internal.ZWaveActiveBinding:472 ]- NODE 33: Got a value event from Z-Wave network, endpoint = 0, command class = CENTRAL_SCENE, value = {key=0, scene=1}
2017-01-16 20:34:33.858 [DEBUG] [ApplicationCommandMessageClass:41  ]- NODE 33: Application Command Request (ALIVE:PING)
2017-01-16 20:34:33.859 [DEBUG] [ApplicationCommandMessageClass:146 ]- NODE 33: Incoming command class BASIC (0x20)
2017-01-16 20:34:33.860 [DEBUG] [z.i.p.c.ZWaveBasicCommandClass:73  ]- NODE 33: Received Basic Request
2017-01-16 20:34:33.861 [DEBUG] [z.i.p.c.ZWaveBasicCommandClass:77  ]- NODE 33: Basic Set sent to the controller will be processed as Basic Report
2017-01-16 20:34:33.862 [DEBUG] [z.i.p.c.ZWaveBasicCommandClass:106 ]- NODE 33: Basic report, value = 0x34
2017-01-16 20:34:33.863 [DEBUG] [b.z.i.protocol.ZWaveController:668 ]- NODE 33: Notifying event listeners: ZWaveCommandClassValueEvent
2017-01-16 20:34:33.865 [DEBUG] [.z.internal.ZWaveActiveBinding:472 ]- NODE 33: Got a value event from Z-Wave network, endpoint = 0, command class = BASIC, value = 52
2017-01-16 20:34:38.975 [DEBUG] [ApplicationCommandMessageClass:41  ]- NODE 33: Application Command Request (ALIVE:PING)
2017-01-16 20:34:38.976 [DEBUG] [ApplicationCommandMessageClass:146 ]- NODE 33: Incoming command class BASIC (0x20)
2017-01-16 20:34:38.977 [DEBUG] [z.i.p.c.ZWaveBasicCommandClass:73  ]- NODE 33: Received Basic Request
2017-01-16 20:34:38.978 [DEBUG] [z.i.p.c.ZWaveBasicCommandClass:77  ]- NODE 33: Basic Set sent to the controller will be processed as Basic Report
2017-01-16 20:34:38.979 [DEBUG] [z.i.p.c.ZWaveBasicCommandClass:106 ]- NODE 33: Basic report, value = 0x08
2017-01-16 20:34:38.980 [DEBUG] [b.z.i.protocol.ZWaveController:668 ]- NODE 33: Notifying event listeners: ZWaveCommandClassValueEvent
2017-01-16 20:34:38.982 [DEBUG] [.z.internal.ZWaveActiveBinding:472 ]- NODE 33: Got a value event from Z-Wave network, endpoint = 0, command class = BASIC, value = 8
2017-01-16 20:34:43.073 [DEBUG] [ApplicationCommandMessageClass:41  ]- NODE 33: Application Command Request (ALIVE:PING)
2017-01-16 20:34:43.075 [DEBUG] [ApplicationCommandMessageClass:146 ]- NODE 33: Incoming command class BASIC (0x20)
2017-01-16 20:34:43.076 [DEBUG] [z.i.p.c.ZWaveBasicCommandClass:73  ]- NODE 33: Received Basic Request
2017-01-16 20:34:43.077 [DEBUG] [z.i.p.c.ZWaveBasicCommandClass:77  ]- NODE 33: Basic Set sent to the controller will be processed as Basic Report
2017-01-16 20:34:43.078 [DEBUG] [z.i.p.c.ZWaveBasicCommandClass:106 ]- NODE 33: Basic report, value = 0x50
2017-01-16 20:34:43.079 [DEBUG] [b.z.i.protocol.ZWaveController:668 ]- NODE 33: Notifying event listeners: ZWaveCommandClassValueEvent
2017-01-16 20:34:43.080 [DEBUG] [.z.internal.ZWaveActiveBinding:472 ]- NODE 33: Got a value event from Z-Wave network, endpoint = 0, command class = BASIC, value = 80
2017-01-16 20:34:49.333 [DEBUG] [ApplicationCommandMessageClass:41  ]- NODE 33: Application Command Request (ALIVE:PING)
2017-01-16 20:34:49.334 [DEBUG] [ApplicationCommandMessageClass:146 ]- NODE 33: Incoming command class CENTRAL_SCENE (0x5b)
2017-01-16 20:34:49.336 [DEBUG] [.ZWaveCentralSceneCommandClass:77  ]- NODE 33: Received central scene command (v1)
2017-01-16 20:34:49.337 [DEBUG] [.ZWaveCentralSceneCommandClass:84  ]- NODE 33: Received scene 1 ; key 2
2017-01-16 20:34:49.337 [DEBUG] [b.z.i.protocol.ZWaveController:668 ]- NODE 33: Notifying event listeners: ZWaveCommandClassValueEvent
2017-01-16 20:34:49.339 [DEBUG] [.z.internal.ZWaveActiveBinding:472 ]- NODE 33: Got a value event from Z-Wave network, endpoint = 0, command class = CENTRAL_SCENE, value = {key=2, scene=1}
2017-01-16 20:34:49.351 [DEBUG] [ApplicationCommandMessageClass:41  ]- NODE 33: Application Command Request (ALIVE:PING)
2017-01-16 20:34:49.352 [DEBUG] [ApplicationCommandMessageClass:146 ]- NODE 33: Incoming command class BASIC (0x20)
2017-01-16 20:34:49.353 [DEBUG] [z.i.p.c.ZWaveBasicCommandClass:73  ]- NODE 33: Received Basic Request
2017-01-16 20:34:49.354 [DEBUG] [z.i.p.c.ZWaveBasicCommandClass:77  ]- NODE 33: Basic Set sent to the controller will be processed as Basic Report
2017-01-16 20:34:49.355 [DEBUG] [z.i.p.c.ZWaveBasicCommandClass:106 ]- NODE 33: Basic report, value = 0x00
2017-01-16 20:34:49.357 [DEBUG] [b.z.i.protocol.ZWaveController:668 ]- NODE 33: Notifying event listeners: ZWaveCommandClassValueEvent
2017-01-16 20:34:49.360 [DEBUG] [.z.internal.ZWaveActiveBinding:472 ]- NODE 33: Got a value event from Z-Wave network, endpoint = 0, command class = BASIC, value = 0
2017-01-16 20:34:49.539 [DEBUG] [ApplicationCommandMessageClass:41  ]- NODE 33: Application Command Request (ALIVE:PING)
2017-01-16 20:34:49.541 [DEBUG] [ApplicationCommandMessageClass:146 ]- NODE 33: Incoming command class CENTRAL_SCENE (0x5b)
2017-01-16 20:34:49.542 [DEBUG] [.ZWaveCentralSceneCommandClass:77  ]- NODE 33: Received central scene command (v1)
2017-01-16 20:34:49.543 [DEBUG] [.ZWaveCentralSceneCommandClass:84  ]- NODE 33: Received scene 1 ; key 1
2017-01-16 20:34:49.544 [DEBUG] [b.z.i.protocol.ZWaveController:668 ]- NODE 33: Notifying event listeners: ZWaveCommandClassValueEvent
2017-01-16 20:34:49.546 [DEBUG] [.z.internal.ZWaveActiveBinding:472 ]- NODE 33: Got a value event from Z-Wave network, endpoint = 0, command class = CENTRAL_SCENE, value = {key=1, scene=1}

Unforunately only the central scene causes an item update:

2017-01-16 20:34:22 - PSR04_Scene state updated to 1
2017-01-16 20:34:23 - PSR04_Scene state updated to 1
2017-01-16 20:34:33 - PSR04_Scene state updated to 1
2017-01-16 20:34:49 - PSR04_Scene state updated to 1
2017-01-16 20:34:49 - PSR04_Scene state updated to 1

As you can see my item seems to be defined correctly, because it shows up in the log:

2017-01-16 20:34:33.865 [DEBUG] [.z.internal.ZWaveActiveBinding:472 ]- NODE 33: Got a value event from Z-Wave network, endpoint = 0, command class = BASIC, value = 52

Unfortunately it does not cause an Update. What shall I do?

@chris:
Can I provide you any further information so you can give me a hint where to look?

Sorry - I’m not sure. It looks like it’s working as best as I can tell from the log. If it hadn’t processed the message you would have seen a log entry “No item bound for event” and I don’t see this.[quote=“Spaceman_Spiff, post:14, topic:19760”]
As you can see my item seems to be defined correctly, because it shows up in the log:
[/quote]

I don’t think this means that the item is dfined correctly - this is a low level message saying that we recieved an event from the zwave network (ie we received the packet) - it doesn’t mean the item is correct or it’s been processed. The absense of the “no item bound” though probably does mean it’s ok, but I don’t know why you aren’t seeing any update. Looking through the code, it’s almost impossible that it hasn’t been processed - if I follow the code through, any error should either result in the “no item bound” error, or, an error saying “no converter found” - or - it should update the value.

The log you’ve provided appears to be filtered by the NODE 33 - the “no converter found” error does not have this on the log, so I would check the log again…

Yes - you are completely right. the log was filtered by NODE 33.
I checked the logs and there it is:

`2017-01-23 18:07:34.450 [DEBUG] [WaveController$ZWaveSendThread:1430]- NODE 32: Response processed for callback id 126 after 35ms/4354ms.
2017-01-23 18:07:36.641 [DEBUG] [eController$ZWaveReceiveThread:1601]- Receive Message = 01 09 00 04 00 21 03 20 01 3C CD 
2017-01-23 18:07:36.642 [DEBUG] [eController$ZWaveReceiveThread:1517]- Receive queue ADD: Length=1
2017-01-23 18:07:36.642 [DEBUG] [b.z.i.protocol.ZWaveController:1244]- Receive queue TAKE: Length=0
2017-01-23 18:07:36.643 [DEBUG] [o.b.z.i.protocol.SerialMessage:255 ]- Assembled message buffer = 01 09 00 04 00 21 03 20 01 3C CD 
2017-01-23 18:07:36.643 [DEBUG] [b.z.i.protocol.ZWaveController:1245]- Process Message = 01 09 00 04 00 21 03 20 01 3C CD 
2017-01-23 18:07:36.644 [DEBUG] [b.z.i.protocol.ZWaveController:200 ]- Message: class = ApplicationCommandHandler (0x04), type = Request (0x00), payload = 00 21 03 20 01 3C , callbackid = 0
2017-01-23 18:07:36.644 [DEBUG] [ApplicationCommandMessageClass:41  ]- NODE 33: Application Command Request (ALIVE:DONE)
2017-01-23 18:07:36.645 [DEBUG] [ApplicationCommandMessageClass:146 ]- NODE 33: Incoming command class BASIC (0x20)
2017-01-23 18:07:36.645 [DEBUG] [z.i.p.c.ZWaveBasicCommandClass:73  ]- NODE 33: Received Basic Request
2017-01-23 18:07:36.645 [DEBUG] [z.i.p.c.ZWaveBasicCommandClass:77  ]- NODE 33: Basic Set sent to the controller will be processed as Basic Report
2017-01-23 18:07:36.645 [DEBUG] [z.i.p.c.ZWaveBasicCommandClass:106 ]- NODE 33: Basic report, value = 0x3C
2017-01-23 18:07:36.646 [DEBUG] [b.z.i.protocol.ZWaveController:668 ]- NODE 33: Notifying event listeners: ZWaveCommandClassValueEvent
2017-01-23 18:07:36.646 [DEBUG] [.z.internal.ZWaveActiveBinding:455 ]- ZwaveIncomingEvent
2017-01-23 18:07:36.646 [DEBUG] [.z.internal.ZWaveActiveBinding:472 ]- NODE 33: Got a value event from Z-Wave network, endpoint = 0, command class = BASIC, value = 60
2017-01-23 18:07:36.647 [WARN ] [.o.b.z.i.c.ZWaveBasicConverter:90  ]- No converter found for item = PSR04_Number, node = 33 endpoint = 0, ignoring event

It says No converter found for item = PSR04_Number, node = 33 endpoint = 0, ignoring event.
How can I define a converter?

You can’t. The converters are defined in the binding. There is a converter defined for integer to number type so I’m not sure why it’s not picked up as it should be the same as the dimmer converters…

That was my guess, too.
I defined another item:

Number	PSR04_Number	"PSR04 Pos [%d]"		{zwave="33:command=BASIC"}
Dimmer	PSR04_Dimmer	"PSR04 Pos [%d]"		{zwave="33:command=BASIC"}

and guess what:

2017-01-24 17:44:38 - PSR04_Dimmer state updated to 79
2017-01-24 17:44:44 - PSR04_Dimmer state updated to 51

You seem to have implemented the converter for the Dimmer, but not for the Number.

Hi chris.
Could you please add the missing channels for oh2?
Do you need any information?
thx!

I think the only missing channel is on the BASIC command class which I’ve just added. I’ll do a datbase update tonight so let me know if that’s ok…

Chris

sure! I will check an come back to you.
Thanks a lot!
Martin

How can I manage to upgrade to this new xml version?
I have tried reinitialise option in habmin --> no success
I have tried to delete and to add thing again --> no success

thx
Martin

You’ll need to be running the snapshot version of OH, and then uninstall and reinstall the binding in PaperUI/HABmin.

I didn’t update it last night though as I had other things to look at - will do it tonight.

Hi Chris!

I have tested new channel:
ON/OFF function tested successfully, but unfortunately the dimming value does not work as expected.
If I dimm via the wheel, associated value doesn’t change. -->NOK
If I switch the button to OFF dimming value is set to 0 --> OK
If I switch the button to ON dimming value is set to 100 --> OK

So I have started debug logging with following results:
17:30:42.724 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 5: Got a value event from Z-Wave network, endpoint = 0, command class = BASIC, value = 56
17:31:25.908 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 5: Got a value event from Z-Wave network, endpoint = 0, command class = BASIC, value = 42
17:31:31.420 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 5: Got a value event from Z-Wave network, endpoint = 0, command class = BASIC, value = 32

So the button seems to work correct, cause dimming value has been changed.
please find complete logs here:

log_change_dimmer.xml (12.1 KB)

May I have to change my items?
Switch PSR04_Switch “Switch” (gZwave) {channel=“zwave:device:121a7888:node5:switch_dimmer”}
Dimmer PSR04_Dimm “Dimmer” (gZwave) {channel=“zwave:device:121a7888:node5:switch_dimmer”}

Thx
Martin

I’ve concluded this device is a bit rubbish:

  • the beep is indeed annoying, as is the one second delay
  • the concept of functions changing as the device is rotated is confusing and counter-intuitive
  • the device seems to flash occasionally at random intervals (annoying when it’s in a bedroom)
  • the battery life is short

the Fibaro Button devices seem much better…

I can understand your decision. I also wouldn’t by this button again.
But maybe we can find a way to integrate it successfully into oh2 and write a little documentation for other users.
If the dimming value would work, it fulfills my requirements at the moment.
Nothing more and nothing less.

sure - I was just venting!

Hi @martschu and all, I have the same dimmer and I am also able to use it only as on/off switch.
I was wondering if you had any progress with the dimmer function.
Cheers

Hi!

Unfortunatelly not!
I’m using only the on/off function at the moment.

BR
Martin

Hi,
same here, only works as on/off. The strange thing is that I enabled debug and when I put the PSR in dimmer mode I can read all the discrete values from 0 to 100 whilst from the rest API it either takes 0 or 100.

I am quite new to openHAB and I don’t understand where is the missing connection. Is it a binding issue? A database issue? Or some parameter that we can configure at runtime?
May be @chris can clarify this.

Cheers

PSR04 is still not working as dimmer in OH2, it only works as on off. Might it be that in the below code “binding::OnOffType" has to be replaced with "binding::PercentType” ?

<channels>
      <channel id="switch_dimmer" typeId="switch_dimmer">
        <label>Dimmer</label>
        <properties>
          <property name="binding:*:OnOffType">BASIC</property>
        </properties>
      </channel>

As far as I understood I am not bale to do this change on my local installation but it has to be done centrally as the database in embedded in the binding.
Cheers