Tahoma Binding compatible with OH2

Hi Michael,

regarding the exception, the Roller Shutter Uno definitely sends some weird value. Can you please try this version and re-add this problematic device?
It should print the value before parsing and catch the error, let’s see, what value it returns. (and you do not need to switch to debug/trace log)
https://www.dropbox.com/s/2cix4bphsyezxti/org.openhab.binding.somfytahoma-2.5.6-SNAPSHOT.jar?dl=1

Regarding the Velux roof windows. Better than completely changing the behavior for all roller shutters I suggest you to write a rule and send (100-%value%) to the item’s control channel. It will change the behaviour just for yourself :slight_smile:

Regards,
Ondrej

Hi Ondrej

Thank you for your fast reply.

Two questions:

  1. How do I install your special version of the binding? Till now, I only installed bindings with PaperUI.

  2. Regarding the Velux roof window: Sending (100-%value%) in the command probably will not change the percentage shown in the sitemap or does it? Eg. 100% will still represent “fully closed” in the sitemap, which is a bit annoying because it is different compared to the roller shutters. Would it be an idea / possible to have two control channels for each thing? One with the normal orientation 0-100 and one with the reverse orientation 100-0? So each user can choose for each thing with channel makes for that thing more sense.

Regards
Michael

no problem
add 1)

  • disable the bundled somfytahoma binding
  • copy this jar to the addons directory of your OH2 instalation

add 2)
please imagine two items:
ITEM1 is a dimmer item, which is not bound to any control channel and put in your sitemap (so it is visible)
ITEM2 is a dimmer item, which is bound to some control channel

then:
once you change the value of your dimmer ITEM1, it will send 100-%value% to the ITEM2 (rule 1)
once ITEM2 changes its value (in the background), it will update the value of ITEM1 to the 100-%value% (rule 2)

this should work :wink:
Regards.
Ondrej

Hi Ondrej

I did install your Snapshot version and re-added this problematic Uno roller shutter. Here is was is written in the log after moving the Roller Shutter Uno:
(The Uno is the one with “*-af57192ad917”)

Does this Log help to find the problem?
Strangely, even after this log with the same Exception “Value must be between 0 and 100” your snapshot binding continues working - e.g. OpenHab still receives updates for Tahoma items. Does that make sense to you? E.g is there a difference to the latest stable version 2.5.5?

Thanks for your idea with the two dimmer items for the Velux roof window and the rules. I will give it a try shortly.

Regards
Michael

Ps. Can I just return to the last stable version 2.5.5 by removing the jar from the addons directory and re-installing the somfythaoma binding with PaperUI? Or is there a way to just disable the extended log info from your Snapshot Version of the binding?

Update:
The Roller Shutter Uno seems only to show in Openhab / Sitemap set percentage-value, if the percentage was set with OpenHab. If the position change was made with TaHoma App or a one-way remote control, the percentage Position seems to be unchanged in Openhab. Also in the TaHoma-App it is not possible to see the set position, i.e. the Roller Shutter Uno (= Somfy LS40 + RS Slim Receiver io), seems not to send back it’s position after a movement. Maybe this is the reason for the Value outside “0 and 100” - independent of the set position, the log entry is always “Error while parsing Tahoma state! Value: 105.0 type: 1” or “Error while parsing Tahoma state! Value: 105 type: 1” (105.0 or 105)

2020-05-24 14:11:57.145 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 70.0, type: 2
2020-05-24 14:11:57.155 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 80.0, type: 2
==> /var/log/openhab2/events.log <==
2020-05-24 14:11:57.157 [me.event.ThingUpdatedEvent] - Thing 'somfytahoma:window:47176f84:0853cf40-c1bd-4524-ba43-a7cc7fcc17d6' has been updated.
==> /var/log/openhab2/openhab.log <==
2020-05-24 14:11:57.166 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 80.0, type: 2
==> /var/log/openhab2/events.log <==
2020-05-24 14:11:57.167 [me.event.ThingUpdatedEvent] - Thing 'somfytahoma:rollershutter:47176f84:8eeed002-b6db-40fc-8cb5-f1bb910e49df' has been updated.
==> /var/log/openhab2/openhab.log <==
2020-05-24 14:11:57.177 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 80.0, type: 2
==> /var/log/openhab2/events.log <==
2020-05-24 14:11:57.179 [me.event.ThingUpdatedEvent] - Thing 'somfytahoma:rollershutter:47176f84:ee0f5dd2-7a3e-4b4c-894e-dca326a8dc54' has been updated.
==> /var/log/openhab2/openhab.log <==
2020-05-24 14:11:57.189 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 80.0, type: 2
==> /var/log/openhab2/events.log <==
2020-05-24 14:11:57.190 [me.event.ThingUpdatedEvent] - Thing 'somfytahoma:rollershutter:47176f84:377ab1a3-a901-4414-9eec-8665ecb94c5f' has been updated.
==> /var/log/openhab2/openhab.log <==
2020-05-24 14:11:57.194 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 105, type: 1
2020-05-24 14:11:57.197 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - io://1226-5736-1116/13550888 Error while parsing Tahoma state! Value: 105 type: 1
java.lang.IllegalArgumentException: Value must be between 0 and 100
	at org.eclipse.smarthome.core.library.types.PercentType.validateValue(PercentType.java:57) ~[?:?]
	at org.eclipse.smarthome.core.library.types.PercentType.<init>(PercentType.java:42) ~[?:?]
	at org.openhab.binding.somfytahoma.internal.handler.SomfyTahomaBaseThingHandler.parseTahomaState(SomfyTahomaBaseThingHandler.java:208) ~[?:?]
	at org.openhab.binding.somfytahoma.internal.handler.SomfyTahomaBaseThingHandler.lambda$0(SomfyTahomaBaseThingHandler.java:339) ~[?:?]
	at java.util.HashMap.forEach(HashMap.java:1289) ~[?:1.8.0_252]
	at org.openhab.binding.somfytahoma.internal.handler.SomfyTahomaBaseThingHandler.updateThingChannels(SomfyTahomaBaseThingHandler.java:334) ~[?:?]
	at org.openhab.binding.somfytahoma.internal.handler.SomfyTahomaBaseThingHandler.updateThingChannels(SomfyTahomaBaseThingHandler.java:315) ~[?:?]
	at org.openhab.binding.somfytahoma.internal.handler.SomfyTahomaBridgeHandler.processStateChangedEvent(SomfyTahomaBridgeHandler.java:596) ~[?:?]
	at org.openhab.binding.somfytahoma.internal.handler.SomfyTahomaBridgeHandler.processEvent(SomfyTahomaBridgeHandler.java:482) ~[?:?]
	at org.openhab.binding.somfytahoma.internal.handler.SomfyTahomaBridgeHandler.getTahomaUpdates(SomfyTahomaBridgeHandler.java:468) ~[?:?]
	at org.openhab.binding.somfytahoma.internal.handler.SomfyTahomaBridgeHandler.lambda$1(SomfyTahomaBridgeHandler.java:140) ~[?:?]
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:1.8.0_252]
	at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308) [?:1.8.0_252]
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180) [?:1.8.0_252]
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294) [?:1.8.0_252]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_252]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_252]
	at java.lang.Thread.run(Thread.java:748) [?:1.8.0_252]
2020-05-24 14:11:57.333 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 80.0, type: 2
==> /var/log/openhab2/events.log <==
2020-05-24 14:11:57.335 [me.event.ThingUpdatedEvent] - Thing 'somfytahoma:rollershutter_uno:47176f84:17c84a81-6d13-4dde-83b0-af57192ad917' has been updated.
==> /var/log/openhab2/openhab.log <==
2020-05-24 14:11:57.341 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 48.0, type: 2
==> /var/log/openhab2/events.log <==
2020-05-24 14:11:57.342 [me.event.ThingUpdatedEvent] - Thing 'somfytahoma:rollershutter:47176f84:17bdc998-72a7-4ef8-bdc0-038e3593a87a' has been updated.
==> /var/log/openhab2/openhab.log <==
2020-05-24 14:11:57.349 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 66.0, type: 2
==> /var/log/openhab2/events.log <==
2020-05-24 14:11:57.350 [me.event.ThingUpdatedEvent] - Thing 'somfytahoma:rollershutter_uno:47176f84:57e6d404-06d1-4632-b1f9-89fde8541f92' has been updated.
==> /var/log/openhab2/openhab.log <==
2020-05-24 14:11:57.357 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 80.0, type: 2
==> /var/log/openhab2/events.log <==
2020-05-24 14:11:57.359 [me.event.ThingUpdatedEvent] - Thing 'somfytahoma:window:47176f84:cb8f60e8-f547-4c7e-9e93-c5f37cdc53b6' has been updated.
==> /var/log/openhab2/openhab.log <==
2020-05-24 14:11:57.365 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 82.0, type: 2
==> /var/log/openhab2/events.log <==
2020-05-24 14:11:57.366 [me.event.ThingUpdatedEvent] - Thing 'somfytahoma:rollershutter:47176f84:b370ee09-c7a5-42fc-b9af-ef22d43809fa' has been updated.
==> /var/log/openhab2/openhab.log <==
2020-05-24 14:11:57.367 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 16, type: 1
==> /var/log/openhab2/events.log <==
2020-05-24 14:11:57.377 [vent.ItemStateChangedEvent] - OG_Rollladen_Schlafen changed from 0 to 16
==> /var/log/openhab2/openhab.log <==
2020-05-24 14:11:57.377 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 82.0, type: 2
==> /var/log/openhab2/events.log <==
2020-05-24 14:11:57.379 [me.event.ThingUpdatedEvent] - Thing 'somfytahoma:rollershutter:47176f84:6fb92536-a104-47d7-856c-b3a4bbaedec8' has been updated.
==> /var/log/openhab2/openhab.log <==
2020-05-24 14:11:57.386 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 82.0, type: 2
==> /var/log/openhab2/events.log <==
2020-05-24 14:11:57.387 [me.event.ThingUpdatedEvent] - Thing 'somfytahoma:window:47176f84:287e0eac-503f-4c8b-bf7f-b60c0a6d5bed' has been updated.
==> /var/log/openhab2/openhab.log <==
2020-05-24 14:11:57.395 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 78.0, type: 2
==> /var/log/openhab2/events.log <==
2020-05-24 14:11:57.396 [me.event.ThingUpdatedEvent] - Thing 'somfytahoma:rollershutter:47176f84:2b612c2d-91a1-4cad-9f19-f9c3a366cca3' has been updated.
2020-05-24 14:11:57.485 [me.event.ThingUpdatedEvent] - Thing 'somfytahoma:window:47176f84:69fb94ca-36b9-4649-a365-fd2adf2b1264' has been updated.
==> /var/log/openhab2/openhab.log <==
2020-05-24 14:11:58.563 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 78.0, type: 2
2020-05-24 14:11:58.569 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 0.0, type: 1
2020-05-24 14:11:58.575 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 86.0, type: 2
2020-05-24 14:11:58.580 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 0.0, type: 1
2020-05-24 14:11:58.586 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 82.0, type: 2
2020-05-24 14:11:58.591 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 0.0, type: 1
2020-05-24 14:11:58.597 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 84.0, type: 2
2020-05-24 14:11:58.602 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 0.0, type: 1
2020-05-24 14:11:58.607 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 66.0, type: 2
2020-05-24 14:11:58.610 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 0.0, type: 1
2020-05-24 14:11:58.614 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 78.0, type: 2
2020-05-24 14:11:58.617 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 100.0, type: 1
2020-05-24 14:11:58.621 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 105.0, type: 1
2020-05-24 14:11:58.624 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - io://1226-5736-1116/13550888 Error while parsing Tahoma state! Value: 105.0 type: 1
java.lang.IllegalArgumentException: Value must be between 0 and 100
	at org.eclipse.smarthome.core.library.types.PercentType.validateValue(PercentType.java:57) ~[?:?]
	at org.eclipse.smarthome.core.library.types.PercentType.<init>(PercentType.java:42) ~[?:?]
	at org.openhab.binding.somfytahoma.internal.handler.SomfyTahomaBaseThingHandler.parseTahomaState(SomfyTahomaBaseThingHandler.java:208) ~[?:?]
	at org.openhab.binding.somfytahoma.internal.handler.SomfyTahomaBaseThingHandler.lambda$0(SomfyTahomaBaseThingHandler.java:339) ~[?:?]
	at java.util.HashMap.forEach(HashMap.java:1289) ~[?:1.8.0_252]
	at org.openhab.binding.somfytahoma.internal.handler.SomfyTahomaBaseThingHandler.updateThingChannels(SomfyTahomaBaseThingHandler.java:334) ~[?:?]
	at org.openhab.binding.somfytahoma.internal.handler.SomfyTahomaBaseThingHandler.updateThingChannels(SomfyTahomaBaseThingHandler.java:315) ~[?:?]
	at org.openhab.binding.somfytahoma.internal.handler.SomfyTahomaBridgeHandler.updateDevice(SomfyTahomaBridgeHandler.java:579) ~[?:?]
	at org.openhab.binding.somfytahoma.internal.handler.SomfyTahomaBridgeHandler.updateDevice(SomfyTahomaBridgeHandler.java:568) ~[?:?]
	at org.openhab.binding.somfytahoma.internal.handler.SomfyTahomaBridgeHandler.lambda$6(SomfyTahomaBridgeHandler.java:562) ~[?:?]
	at java.util.Arrays$ArrayList.forEach(Arrays.java:3880) ~[?:1.8.0_252]
	at org.openhab.binding.somfytahoma.internal.handler.SomfyTahomaBridgeHandler.updateAllStates(SomfyTahomaBridgeHandler.java:562) ~[?:?]
	at org.openhab.binding.somfytahoma.internal.handler.SomfyTahomaBridgeHandler.updateThings(SomfyTahomaBridgeHandler.java:507) ~[?:?]
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:1.8.0_252]
	at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:1.8.0_252]
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) [?:1.8.0_252]
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) [?:1.8.0_252]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_252]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_252]
	at java.lang.Thread.run(Thread.java:748) [?:1.8.0_252]
2020-05-24 14:11:58.636 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 80.0, type: 2
==> /var/log/openhab2/events.log <==
2020-05-24 14:11:58.645 [me.event.ThingUpdatedEvent] - Thing 'somfytahoma:rollershutter_uno:47176f84:17c84a81-6d13-4dde-83b0-af57192ad917' has been updated.
==> /var/log/openhab2/openhab.log <==
2020-05-24 14:11:58.645 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 100.0, type: 2
2020-05-24 14:11:58.647 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 0.0, type: 1
2020-05-24 14:11:58.651 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 82.0, type: 2
2020-05-24 14:11:58.653 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 86.0, type: 1
2020-05-24 14:11:58.657 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 70.0, type: 2
2020-05-24 14:11:58.660 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 100.0, type: 1
2020-05-24 14:11:58.664 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 0.0, type: 1
2020-05-24 14:11:58.667 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 48.0, type: 2
2020-05-24 14:11:58.669 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 80.0, type: 2
2020-05-24 14:11:58.672 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 0.0, type: 1
2020-05-24 14:11:58.676 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 80.0, type: 2
2020-05-24 14:11:58.679 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 0.0, type: 1
2020-05-24 14:11:58.682 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 80.0, type: 2
2020-05-24 14:11:58.685 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 100.0, type: 1
2020-05-24 14:11:58.689 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 100.0, type: 2
2020-05-24 14:11:58.691 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 0.0, type: 1
2020-05-24 14:11:58.695 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 82.0, type: 2
2020-05-24 14:11:58.698 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 16.0, type: 1
2020-05-24 14:11:58.786 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 86.0, type: 2
==> /var/log/openhab2/events.log <==
2020-05-24 14:11:58.787 [me.event.ThingUpdatedEvent] - Thing 'somfytahoma:rollershutter:47176f84:6fb92536-a104-47d7-856c-b3a4bbaedec8' has been updated.
==> /var/log/openhab2/openhab.log <==
2020-05-24 14:11:58.788 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 100.0, type: 1
2020-05-24 14:11:58.792 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 80.0, type: 2
2020-05-24 14:11:58.796 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 43.0, type: 1
2020-05-24 14:11:58.799 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 86.0, type: 2
2020-05-24 14:11:58.802 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 0.0, type: 1
2020-05-24 14:11:58.805 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 80.0, type: 2
2020-05-24 14:11:58.808 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 0.0, type: 1
2020-05-24 14:11:58.811 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 66.0, type: 2
2020-05-24 14:11:58.815 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 100.0, type: 1
2020-05-24 14:11:58.818 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 80.0, type: 2
2020-05-24 14:11:58.821 [INFO ] [.handler.SomfyTahomaBaseThingHandler] - Value to parse: 0.0, type: 1

Hi,

perfect! This is exactly what I was looking for.
It gets value of 105 (probably bug in the Tahoma cloud - it has a percentage type having value of 105) and tries to convert it to OH2 percentage type which results in exception.

Should I interpret the 105 as 100 (=closed)?
I can prepare a fix.
Of course you can delete the jar and re-enable the bundled version to get less info in the log.
Or if you wait a while, I can provide you with the stable version with normal logging…

Edit:
here is the fixed version, it should log normally and should be accepting even value of 105 for percent.
https://www.dropbox.com/s/2cix4bphsyezxti/org.openhab.binding.somfytahoma-2.5.6-SNAPSHOT.jar?dl=1
Regards
Ondrej

Hi Ondrej

Thank you for the quick fix.

Concerning your question (testing still with your snapshot version with the log info): I assume, that 105 does not mean closed but just “no known position anywhere between 0 and 100” because 105 seems to be the value independent of the position of the roller shutter between fully open and fully closed. Only when fully closed or fully open the value seems not to be 105 (no warning in the log but assumably 100 for fully closed and 0 for fully open.

Can you consider this in you official / final version?

I will try out your new snapshot and report here, if I find any problems.

Thank you for your quick fix and your help. Great work.

Regards
Michael

So if the values are 0, 100 or 105 and the value of 105 means unknown position, I would rather skip interpretting this value - so the channel does not get updated in this case.
Right?

Regards
Ondrej

Hi Ondrej

Well, your the expert of your Tahoma-Binding :wink:

From my point of view the following would make sense

  • change to 0 --> Update channel to 0
  • change to 100 --> Update channel to 100
  • change to 105 --> Update channel to let’s say 33 (partially open) (or any funny number between 0 and 100 :wink: ) - Well, after re-thinking, it is probably better to just accepting the value of 105 as percent but not changing / updating the channel. Otherwise I assume the value set in the dimmer item controlling the roller shutter would be overwritten right? Or how did you implement it in the snapshot version, I am currently using? That solution seems to just work fine :slight_smile:

Does that make sense to you?

I did install your fixed version accepting 105 for percent. Sofar working fine :slight_smile:

Coming back to the reverse channel for velux roof windows / somfy window:
Two extra rules and one extra dimmer item sounds like an approach but seems to be quite a trick / hack. And I assume, I have to be careful not to have and endless loop if both rules fire, if the other dimmer has changed. I assume, I would need also to check, if the value is different from the already set value before changing the items. Right?
Much nicer in my opinion, would be, if there would be a property in the binding to define the orientation (100 = closed or 100 = open) or two channels to choose from. For example:

  • Control channel 1: somfytahoma:window:…:control
  • Control channel 2: somfytahoma:window:…:_control_reverse_orientation

Any chance to convince you to put some effort into changing / expanding your binding?

Regards
Michael

Hi,

the current version just normalizes the value

  • if lower than 0 then 0
  • if greater than 100 then 100
    If this is working, I would stick with it, it is simple and generic.

You do not have to be afraid of loops…
Just use postUpdate instead of sendCommand and it only (visually) updates the value instead of sending a command.

If you are still willing to have this reverse control imlpemented in the binding, I might introduce a new config parametr which enables/disables this reverse control…
But it’ll take some time, it is dangerous and might bring problems to a lot of users…

Regards
Ondrej

Hi Ondrej

I like your current approach to just normalize the value. This just works perfect. So please keep this simple and generic approach.
Further testing showed the following interesting behavior:

  • When using a one-way remote control sending just up / down and stop the Roller Shutter Uno (= Somfy LS40 + RS Slim Receiver io) seems just to returns 0 (= fully open), 100 (= fully closed)
  • However, when using a two-way remote control (or OpenHab) sending a percentage value, the binding returns the correct percentage; even when sent with a two-way remote control, OpenHab receives the sent percentage value. Nice :wink:

Well, if I can choose, I would appreciate a config parameter for enable/disable the reverse control / orientation. I assume, that also other users with Velux roof windows would like this new feature (and maybe also other users with other windows and or motors). In my opinion, this would make your binding more flexible.
I understand that a new feature is always a risk - but I guess you would make the default for this new config parameter to be the current orientation of the control - so by default there should be no difference for other users. Right?
If you need a test user, I am happy to test such a new version whenever you have a test version ready with this reverse control. But no hurry, I can wait for this new future.

Thank you for your fast solution for that problem yesterday. I am more than happy, that it is working now fine again with this Roller Shutter Uno.

Regards
Michael

Hi Ondrej,

first of all, thanks a lot for your contribution with this great Binding. Very much appreciated. I’d started building up my OH2 few days ago, but sticking on my Somfy Silent Roller Shutters. I’m able to find both channels (Control / Control Silent) but for but the result is the same. Shutter is moving on normal speed.
Do you, or somebody else have any idea what could be the issue here?

Many thanks in advocate and all the best

Cheers
Felix

Good Morning.
I do not want to Hijack this topic, but since this seems to be an active Somfy / Tahoma topic i decided to ask my question here instead of creating a new topic.

Yesterday i installed the Tahoma binding to connect OH to my Somfy Conexoon (IO) Installation. This worked and Gateway and bridge appeared online. I was able to control a rollershutter i added for testing via OH. After creating severall things and items however, the binding stopped working. I have done the following:

  • Reinstalled binding.
  • Reinstalled binding & Clearing cache
  • Restarted OH
  • Restarted Connexoon
  • Tried credentials with SOmfy website.
  • Changed password several times.

The binding (gateway) however is no longer online.
The via PaperUI created GW reads:

Status: OFFLINE - COMMUNICATION_ERROR Authentication challenge
Setting log to debug reveals:

2020-06-05 11:29:35.388 [DEBUG] [nal.handler.SomfyTahomaBridgeHandler] - Refreshing Tahoma states...

2020-06-05 11:29:35.394 [DEBUG] [nal.handler.SomfyTahomaBridgeHandler] - Doing relogin

2020-06-05 11:29:35.399 [DEBUG] [nal.handler.SomfyTahomaBridgeHandler] - Skipping login due to too many requests

I am running the latest stable OH release and the binding that comes packed with it. (binding-somfytahoma - 2.5.5)
Any suggestion to what action i can take to resolve this issue is highly appreciated!

In addition to the above, i’ve been doing some testing.
My account succesfully logs in to https://www.somfy-connect.com/, yet this portal does a SSO login to https://www.tahomalink.com/ where i get a login failed error. I cant login to this portal. I can however reset my password thru the link on the tahoma page, yet new credentials dont work. I seem to be locked out of the tahomalink portal.
I do not own a tahoma box, connexoon only. Can any one using this binding confirm they can login to this portal that own a connexoon box?

Hi Felix,

please, can you try this version if it gets any better?
https://www.dropbox.com/s/2cix4bphsyezxti/org.openhab.binding.somfytahoma-2.5.6-SNAPSHOT.jar?dl=1

If not, I need a debug log from this binding…

Regards
Ondrej

Hi Ondrej,

many thanks for the fast reply. Very much appreciated.
Well, to this was also my first intension, therefore I’d tried this version before writing. So unfortunately it is the same for both Channels. The shutter is running on the same speed.
I also cannot see any error in log file or whatever. The command has been sent to the (various) channel and the shutter starts moving.
Can I share anything else? Please let me know.

Many thanks in advance and best regards

Felix

Hi Ondrej,

Im trying to get your awsome binding to work for my setup, but the binding wont let me log in to the tahoma cloud (to many requests, skipping login).
I;ve tried my credentials via https://tahomalink.com/enduser-mobile-web/enduserAPI/doc and everything works. I can retrieve the shutters and their status just fine. Turning on debugging only reveals the forementioned errors. Is there anything else i can do to debug / find the problem i am facing?

Fixed the problem. For future reference:

  • Uninstalled Tahoma binding
  • Rebooted OH
  • Cleared OH Cache
  • Rebooted OH
    -(re)Installed Tahoma binding.

“To many request error” was no longer bugging me and the binding succesfully logged in to the Tahoma cloud.

Hi Ondrej,

I can’t connect the Tahoma-bridge. The displayed error is: Status: OFFLINE - COMMUNICATION_ERROR Cannot get login cookie. I also uninstall the 2.5.2 binding and tried the 2.5.6., same error. I uninstalled the binding, stopped OH2, cleared the cache and tmp-files, restarted OH2, installed the 2.5.6 binding -> same error. I think the error occurred after an update of the Tahoma-station. Do you know a solution for that kind of problem?
Thanks for your support.

1 Like

After an update of the Tahoma-station still the same problem.
Someone any idea?

1 Like

Hey,
how to Clear the Cache of OpenHAB2?

I have the same problem as you. “Too many requests”

1 Like