Tahoma Binding compatible with OH2

Thanks for the info, had no idea this is going to happen so soon.
So I’ve returned to the v2 version branch and I’ll be glad if we can test it…

https://www.dropbox.com/s/rkoyppxqaom1gee/org.openhab.binding.somfytahoma-2.5.0-SNAPSHOT.jar?dl=1

Thanks.
Ondrej

I’m happy to help testing. Just let me know what you need to see and I’ll get it sorted/started this weekend.

Just test the reliability, please. It should be working, but API change is always a bit risky.
Thanks :slight_smile:

Hello, I have copied the new version to the directory Addons. After I restarted the system, the addon in the Paperui under Configuration / Bindings is no longer displayed and things show an error. Version V1 continues to work without any problems.

OH2.4? Please check log file. I needed to install dependency google gson 2.8.5 jar.

Hi, sorry - I haven’t emphasized that for OH 2.4 you need either

  1. upgrade to OH2.5 first
  2. to manually install a newer gson jar
  3. edit the MANIFEST.MF file in META-INF dir in the provided jar, so the newer gson is not required (the code works with the bundled gson in OH 2.4 as well)
    change
    com.google.gson;version="[2.8,3)"
    to
    com.google.gson;version="[2.4,3)"

thanks
Ondrej

Hi, Step 3 works for me!

Thanks, please create an issue, so I can add support for the Camera thing.

Regarding the warning - type id switch has been replaced by system.power, I guess you need to restart OH2 and if it does not work out, clear the caches…

thanks
Ondrej

I’ve updated to the latest Somfy Tahoma 2.5.0 binding snapshot. @Ondrej_Pecta I used your 3rd method to get the binding to work on OH2.4 Stable.

So far all good, all blinds (roller shutters x 9) have initialised and are online but will await until my rules kick in to check if everything is behaving as expected.

Hello Ondrej,
I installed also the newest tahoma binding after the update of the TahomaBox.
The binding works for my rollershutters, roofwindowblinds, roofwindow and enocean windowhandle.
I wanted to ask, if it is possible to see the status of the rollershutters (and others) via the binding? (when i use the switch next to the windows or the remote control)

thanks for your effort and your answers in advance

regards
wu3mi

Hi,

sure, this should be working.
The Bridge thing has configuration param Status timeout, which defines the timeout for syncing the status. It forces all the things to send the current status.

Try lowering the value and see if it works. If not or not sure, just PM me the debug log of the binding (enable the debug first)
Thanks.
Ondrej

O.k., answering a tiny bit late, but the V2 binding works perfectly on my production system since you posted. Even with the API update on 26.11.2019.

I have only 8 rollershutter motors though, no exotic hardware.

Hi guys,

whats about the Dez. 3th Server change, my Bridge is offline, how its about yours?

regards

Tristan

1 Like

Same for me, I can’t use it anymore… I’m still on 2.4, what is the full procedure to get this working ?

1 Like

I’m on OH2.5-M5 and it stopped working for me around half an hour ago as well. I can still control the screens using the app, but I can’t login to www.tahomelink.com (although I’m 100% certain the username/password are correct). Resetting the password (confirmed working in the app on my phone) didn’t make a difference. Anything I can do to help analysis?

As mentioned earlier in this thread, not being able to login to tahomalink.com seems to be the culprit, see log below:

20:23:27.617 [DEBUG] [rnal.handler.SomfyTahomaBridgeHandler] - Getting Tahoma Updates...
20:23:27.624 [DEBUG] [rnal.handler.SomfyTahomaBridgeHandler] - Doing relogin
20:23:32.634 [TRACE] [rnal.handler.SomfyTahomaBridgeHandler] - Login response: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xml:lang="fr" xmlns="http://www.w3.org/1999/xhtml">
<head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>Overkiz - Error</title>
</head>
<body>
        <h2>Bad request</h2>
<i>Tue Dec 03 20:23:32 CET 2019</i><br/>

</body>
</html>

20:23:32.642 [DEBUG] [rnal.handler.SomfyTahomaBridgeHandler] - Received invalid data
com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was STRING at line 1 column 1 path $

My CONNEXOON bridge is still working without issue, CONNEXOON Window RTS app is also working. Checking my account at https://www.somfy.co.uk/ shows my bridge as connected.

My bridge is registered in the UK though so maybe something is down in other regions?

I’m on OH2.4 using the latest snapshot somfy binding.

Same here. My roller shutters stopped working over the day.
In my case I got it back working by doing the following steps:

  • Upgrading Openhab to the latest 2.5 snapshot (I was already using an older 2.5 snapshot)
  • Removing the Somfy-Tahoma Binding through the PaperUI
  • Downloading the latest snapshot of the binding from Post #324 to /usr/share/openhab2/addons/
  • Various Restarts of openhab during the process :slight_smile:

Mine stopped working around 14:05 GMT and hasn’t worked since (although I’ve only been using the binding for a couple of days & it has been quite flaky) , running 2.5.0M6.

I had debug logging turned on at the time, log is:

2019-12-03 14:05:59.949 [DEBUG] [very.SomfyTahomaItemDiscoveryService] - Detected a/an rollershutter - label: Study Blind oid: 93908e6d-ce5f-4310-9f3e-4b08b2adf106
2019-12-03 14:05:59.950 [DEBUG] [very.SomfyTahomaItemDiscoveryService] - url: rts://0403-3767-5704/16749934
2019-12-03 14:05:59.950 [DEBUG] [very.SomfyTahomaItemDiscoveryService] - Detected a/an screen - label: Cinema front blind oid: 2c0b782c-456b-4a47-bf6d-46582a1af543
2019-12-03 14:05:59.951 [DEBUG] [very.SomfyTahomaItemDiscoveryService] - url: rts://0403-3767-5704/16767836
2019-12-03 14:05:59.951 [DEBUG] [very.SomfyTahomaItemDiscoveryService] - Detected a/an screen - label: Cinema rear blind oid: a516791e-68fb-4832-a530-c732f06e941b
2019-12-03 14:05:59.952 [DEBUG] [very.SomfyTahomaItemDiscoveryService] - Detected a gateway with id: 0403-3767-5704
2019-12-03 14:06:11.262 [DEBUG] [nal.handler.SomfyTahomaBridgeHandler] - Getting Tahoma Updates...
2019-12-03 14:06:11.307 [DEBUG] [nal.handler.SomfyTahomaBridgeHandler] - Got total of 0 events
2019-12-03 14:07:01.144 [DEBUG] [nal.handler.SomfyTahomaBridgeHandler] - Refreshing Tahoma states...
2019-12-03 14:07:11.308 [DEBUG] [nal.handler.SomfyTahomaBridgeHandler] - Getting Tahoma Updates...
2019-12-03 14:07:11.355 [DEBUG] [nal.handler.SomfyTahomaBridgeHandler] - Got total of 3 events
2019-12-03 14:07:11.355 [DEBUG] [nal.handler.SomfyTahomaBridgeHandler] - Got event: GatewaySynchronizationStartedEvent
2019-12-03 14:07:11.355 [DEBUG] [nal.handler.SomfyTahomaBridgeHandler] - Got event: GatewaySynchronizationEndedEvent
2019-12-03 14:07:11.355 [DEBUG] [nal.handler.SomfyTahomaBridgeHandler] - Got event: RefreshAllDevicesStatesCompletedEvent
2019-12-03 14:07:12.355 [DEBUG] [nal.handler.SomfyTahomaBridgeHandler] - Updating all states
2019-12-03 14:08:11.355 [DEBUG] [nal.handler.SomfyTahomaBridgeHandler] - Getting Tahoma Updates...
2019-12-03 14:08:11.440 [ERROR] [nal.handler.SomfyTahomaBridgeHandler] - Received error code: 400
2019-12-03 14:08:11.441 [DEBUG] [nal.handler.SomfyTahomaBridgeHandler] - Received data: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xml:lang="fr" xmlns="http://www.w3.org/1999/xhtml">
<head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>Overkiz - Error</title>
</head>
<body>
        <h2>Bad request</h2>
<i>Tue Dec 03 15:08:11 CET 2019</i><br/>

</body>
</html>
 is not JSON
com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_ARRAY but was STRING at line 1 column 1 path $
        at com.google.gson.Gson.fromJson(Gson.java:900) ~[?:?]
        at com.google.gson.Gson.fromJson(Gson.java:853) ~[?:?]
        at com.google.gson.Gson.fromJson(Gson.java:802) ~[?:?]
        at com.google.gson.Gson.fromJson(Gson.java:774) ~[?:?]
        at org.openhab.binding.somfytahoma.internal.handler.SomfyTahomaBridgeHandler.getEvents(SomfyTahomaBridgeHandler.java:194) ~[?:?]
        at org.openhab.binding.somfytahoma.internal.handler.SomfyTahomaBridgeHandler.getTahomaUpdates(SomfyTahomaBridgeHandler.java:390) ~[?:?]
        at org.openhab.binding.somfytahoma.internal.handler.SomfyTahomaBridgeHandler.lambda$1(SomfyTahomaBridgeHandler.java:113) ~[?:?]
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:1.8.0_222]
        at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308) [?:1.8.0_222]
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180) [?:1.8.0_222]
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294) [?:1.8.0_222]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_222]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_222]
        at java.lang.Thread.run(Thread.java:748) [?:1.8.0_222]
Caused by: java.lang.IllegalStateException: Expected BEGIN_ARRAY but was STRING at line 1 column 1 path $
        at com.google.gson.stream.JsonReader.beginArray(JsonReader.java:350) ~[?:?]
        at com.google.gson.internal.bind.ArrayTypeAdapter.read(ArrayTypeAdapter.java:70) ~[?:?]
        at com.google.gson.Gson.fromJson(Gson.java:888) ~[?:?]
        ... 13 more```

Guys,

Somfy has switched off the old good v1 API, so we have to migrate the binding to v2.
I have created a PR containing the required changes. (https://github.com/openhab/openhab2-addons/pull/6500)

Hopefully it will be soon merged in 2.5 so we can catch the final OH 2.5 release.
Until this happens, please see post #324 and #329

Good luck,
Ondrej

4 Likes

Thanks, updating to the snapshot seems to have fixed the problem for now.
Next question: Following the readme, I have the following items configured:

Rollershutter Study_Blind "Study Blind" {channel="somfytahoma:rollershutter:c01604b4:93908e6d-ce5f-4310-9f3e-4b08b2adf106:control"}
Dimmer Study_Blind_D "Study Blind Dimmer" ["Lighting"] {channel="somfytahoma:rollershutter:c01604b4:93908e6d-ce5f-4310-9f3e-4b08b2adf106:control"}

The up/down/stop roller shutter control seems to work ok, but when I adjust the dimmer I get the following error in the logs:

2019-12-03 21:48:27.457 [ERROR] [nal.handler.SomfyTahomaBridgeHandler] - Received error code: 400
2019-12-03 21:48:27.458 [WARN ] [nal.handler.SomfyTahomaBridgeHandler] - Apply command response: {"errorCode":"UNSPECIFIED_ERROR","error":"Managed action group is invalid : No such command : setClosure on device rts://0403-3767-5704/16726236 (rts:RollerShutterRTSComponent)"}

Any ideas?