Binding “SmartHome/J Viessmann Binding” - looses connection

Hi @rogrun,

unfortunately, the binding seems to loose connection after some kind of communication error. As I looked on my values today, I had to see, that no values where updated. I got the last update yesterday at 18:26:40.
image

In the log I’ve found the following lines:

2022-11-06 19:44:16.174 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Your request could not be performed as there was a problem with external service
2022-11-06 20:56:47.884 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: DEVICE_COMMUNICATION_ERROR
2022-11-06 22:35:42.920 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: DEVICE_COMMUNICATION_ERROR
2022-11-07 03:17:28.076 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: DEVICE_COMMUNICATION_ERROR
2022-11-07 03:20:48.091 [INFO ] [.viessmann.internal.api.ViessmannApi] - API IOException: Unable to execute GET: java.util.concurrent.TimeoutException: DNS timeout 15000 ms
2022-11-07 03:44:02.537 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Internal server error
2022-11-07 04:44:57.279 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Internal server error
2022-11-07 04:47:50.605 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Internal server error
2022-11-07 04:50:44.095 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Internal server error
2022-11-07 04:53:37.525 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Internal server error
2022-11-07 04:56:31.000 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Internal server error
2022-11-07 04:59:24.417 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Internal server error
2022-11-07 05:02:17.845 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Internal server error
2022-11-07 05:05:11.282 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Internal server error
2022-11-07 05:08:04.718 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Internal server error
2022-11-07 05:10:58.118 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Internal server error
2022-11-07 05:13:51.509 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Internal server error
2022-11-07 05:16:44.975 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Internal server error
2022-11-07 05:19:38.391 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Internal server error
2022-11-07 05:22:31.785 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Internal server error
2022-11-07 05:25:25.166 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Internal server error
2022-11-07 05:28:18.641 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Internal server error
2022-11-07 05:31:12.036 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Internal server error
2022-11-07 05:34:05.411 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Internal server error
2022-11-07 05:45:41.259 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Internal server error
2022-11-07 05:48:34.657 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Internal server error
2022-11-07 05:51:28.971 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Internal server error
2022-11-07 05:54:22.439 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Internal server error
2022-11-07 05:57:15.902 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Internal server error
2022-11-07 06:00:09.348 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Internal server error
2022-11-07 06:03:03.231 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Internal server error
2022-11-07 06:05:58.915 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Internal server error
2022-11-07 06:08:53.609 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Internal server error
2022-11-07 06:11:47.425 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Internal server error
2022-11-07 06:15:00.426 [INFO ] [.viessmann.internal.api.ViessmannApi] - API IOException: Unable to execute GET: java.util.concurrent.TimeoutException: Total timeout 20000 ms elapsed
2022-11-07 06:17:53.822 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Internal server error
2022-11-07 06:20:47.043 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Your request could not be performed as there was a problem with external service
2022-11-07 06:23:45.014 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Internal server error
2022-11-07 06:26:38.222 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Your request could not be performed as there was a problem with external service
2022-11-07 06:29:31.450 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Your request could not be performed as there was a problem with external service
2022-11-07 06:32:24.811 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Your request could not be performed as there was a problem with external service
2022-11-07 06:35:18.093 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Your request could not be performed as there was a problem with external service
2022-11-07 06:38:11.691 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Internal server error
2022-11-07 06:41:09.789 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Internal server error
2022-11-07 06:44:06.718 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Your request could not be performed as there was a problem with external service
2022-11-07 13:17:32.075 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Your request could not be performed as there was a problem with external service
2022-11-07 14:01:20.541 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: DEVICE_COMMUNICATION_ERROR
2022-11-07 18:32:22.832 [WARN ] [ernal.handler.ViessmannBridgeHandler] - Parsing Viessmann response fails: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was STRING at line 1 column 1 path $
2022-11-07 18:38:21.863 [WARN ] [ernal.handler.ViessmannBridgeHandler] - Parsing Viessmann response fails: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was STRING at line 1 column 1 path $
2022-11-07 18:44:24.033 [WARN ] [ernal.handler.ViessmannBridgeHandler] - Parsing Viessmann response fails: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was STRING at line 1 column 1 path $
2022-11-07 18:47:28.239 [WARN ] [ernal.handler.ViessmannBridgeHandler] - Parsing Viessmann response fails: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was STRING at line 1 column 1 path $
2022-11-07 18:50:21.565 [WARN ] [ernal.handler.ViessmannBridgeHandler] - Parsing Viessmann response fails: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was NUMBER at line 1 column 4 path $
2022-11-07 18:53:18.656 [WARN ] [ernal.handler.ViessmannBridgeHandler] - Parsing Viessmann response fails: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was STRING at line 1 column 1 path $
2022-11-07 18:56:12.447 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Endpoint /iot/v1/equipment/installations/*****/gateways/********************/devices/0/features/ does not match any existing route
2022-11-07 18:59:20.295 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Endpoint /iot/v1/equipment/installations/*****/gateways/********************/devices/0/features/ does not match any existing route
2022-11-07 19:02:24.459 [WARN ] [ernal.handler.ViessmannBridgeHandler] - Parsing Viessmann response fails: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was STRING at line 1 column 1 path $
2022-11-07 19:05:37.460 [INFO ] [.viessmann.internal.api.ViessmannApi] - API IOException: Unable to execute GET: java.util.concurrent.TimeoutException: Total timeout 20000 ms elapsed
2022-11-07 19:08:34.346 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Endpoint /iot/v1/equipment/installations/*****/gateways/********************/devices/0/features/ does not match any existing route
        at org.smarthomej.binding.viessmann.internal.handler.ViessmannBridgeHandler.getAllFeaturesByDeviceId(ViessmannBridgeHandler.java:232) ~[?:?]
        at org.smarthomej.binding.viessmann.internal.handler.ViessmannBridgeHandler.pollingFeatures(ViessmannBridgeHandler.java:221) ~[?:?]
        at org.smarthomej.binding.viessmann.internal.handler.ViessmannBridgeHandler.lambda$0(ViessmannBridgeHandler.java:249) ~[?:?]

After restart of the binding everthing is working fine again.

openhab> bundle:restart 286

I have installed your last snapshot version.

Do you have any idea what’s going on?

Thanks! Martin

Hi Martin,

I’m still in the analysis. Can you please send me the complete log at this point?

In my log I have the same errors, only that after 21:43 everything worked again without any problems and I didn’t have the error mentioned above.

I can’t explain how you got the error.

Please show me your version with: bundle:list | grep -i viessmann

Best, Ronny

Hi.

Viessmann carried out major maintenance yesterday. Even the APP required a new installation of the user data. By 11:00 p.m. it was fine again. I don’t think the binding can do that.

Greetings

1 Like

Oh, sorry. I have filtered to much :smile:

2022-11-07 19:08:34.346 [WARN ] [.viessmann.internal.api.ViessmannApi] - ViError: Endpoint /iot/v1/equipment/installations/*****/gateways/********************/devices/0/features/ does not match any existing route
2022-11-07 19:11:42.486 [WARN ] [mmon.WrappedScheduledExecutorService] - Scheduled runnable ended with an exception: 
java.lang.NullPointerException: null
        at org.smarthomej.binding.viessmann.internal.handler.ViessmannBridgeHandler.getAllFeaturesByDeviceId(ViessmannBridgeHandler.java:232) ~[?:?]
        at org.smarthomej.binding.viessmann.internal.handler.ViessmannBridgeHandler.pollingFeatures(ViessmannBridgeHandler.java:221) ~[?:?]
        at org.smarthomej.binding.viessmann.internal.handler.ViessmannBridgeHandler.lambda$0(ViessmannBridgeHandler.java:249) ~[?:?]
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) ~[?:?]
        at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305) ~[?:?]
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305) ~[?:?]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?]
        at java.lang.Thread.run(Thread.java:829) [?:?]

bundle:list | grep -i viessmann

openhab> bundle:list | grep -i viessmann
286 │ Active │  80 │ 3.2.15.202209041557    │ SmartHome/J Add-ons :: Bundles :: Viessmann Binding

Thanks! Martin

Hi @Agio,

After restart the bundle it works again without any intervention. Neither I had to reinstall the APP.

Martin

Excuse me.
I didn’t make myself clear there. During the “server work” at Viessmann, there was probably quite a bit of chaos. (see Viessmann Community). I meant that the Viessmann APP only wanted to run through the user data again during this time. This also worked again in the morning without any problems.
Greetings

I’ll take a look at it in the next few days and fix the error. It can happen from time to time that Viessmann has a disturbance again.

In the next release it will be fixed.

@J-N-K When will you release the next release?

My plan was this weekend. But if you need a day or two more, we can shift it a bit.

I’ll try to fix it by the weekend. If not, it would be nice to postpone it for a few days.

Hi @rogrun,

I would like to ask, if you have found time to implement a solution for this bug yet?

Best regards,

Martin

Hi @MartinT ,

yes, it will be fixed by SmartHome/J Release 3.2.15
With this PR #413
The changelog can be found here:
https://github.com/smarthomej/addons/releases/tag/v3.2.15

Please remove the JAR file and install the binding using the UI described here:
https://github.com/smarthomej/addons#installation–usage

Best regards, Ronny

Hi @rogrun,

thank you very much! I really appriciate your work!

Best regards,

Martin