Binding for Sensibo Sky available

You are right that it wont get reviewed until I remove WIP. But still after that it will take quite a while before it is merged onto marster.

No problem and thanks for letting know that you are still active on this!

Hi seime!
Thank you for your effort. In the meantime, autumn is coming and our A/C units are taking a rest, therefore you have all the time for a good job, at least from my point of view (I am in the Northern Hemisphere)…
In any case, I confirm that I still have that error. Let me know if I can help you by doing some tests. Consider that on average I am pretty clumsy… :slightly_smiling_face:

Regards, Marco

Hi,
I am still getting an issue with 400 bad request, it is possibly that it will be something I have done, but in case others are getting this confusing error response exception error.

2019-09-28 10:17:54.483 [INFO ] [ternal.handler.SensiboAccountHandler] - Error setting ac state for ecfabc1dcc40

org.openhab.binding.sensibo.internal.SensiboCommunicationException: Error sending request to Sensibo server. Server responded with 400 and payload <html><head><title>400 InvalidState - Sensibo</title></head><body><h>400 InvalidState</h><p>parameter "acState" is invalid</p><body></html>

	at org.openhab.binding.sensibo.internal.handler.SensiboAccountHandler.sendRequest(SensiboAccountHandler.java:232) ~[284:org.openhab.binding.sensibo:2.5.0.201905190638]

	at org.openhab.binding.sensibo.internal.handler.SensiboAccountHandler.updateSensiboSkyAcState(SensiboAccountHandler.java:331) [284:org.openhab.binding.sensibo:2.5.0.201905190638]

	at org.openhab.binding.sensibo.internal.handler.SensiboSkyHandler.updateAcState(SensiboSkyHandler.java:87) [284:org.openhab.binding.sensibo:2.5.0.201905190638]

	at org.openhab.binding.sensibo.internal.handler.SensiboSkyHandler.handleCommand(SensiboSkyHandler.java:152) [284:org.openhab.binding.sensibo:2.5.0.201905190638]

	at org.openhab.binding.sensibo.internal.handler.SensiboSkyHandler.handleCommand(SensiboSkyHandler.java:81) [284:org.openhab.binding.sensibo:2.5.0.201905190638]

	at sun.reflect.GeneratedMethodAccessor8193.invoke(Unknown Source) ~[?:?]

	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]

	at java.lang.reflect.Method.invoke(Method.java:498) ~[?:?]

	at org.eclipse.smarthome.core.internal.common.AbstractInvocationHandler.invokeDirect(AbstractInvocationHandler.java:153) [103:org.eclipse.smarthome.core:0.10.0.oh240]

	at org.eclipse.smarthome.core.internal.common.InvocationHandlerSync.invoke(InvocationHandlerSync.java:59) [103:org.eclipse.smarthome.core:0.10.0.oh240]

	at com.sun.proxy.$Proxy145.handleCommand(Unknown Source) [284:org.openhab.binding.sensibo:2.5.0.201905190638]

	at org.eclipse.smarthome.core.thing.internal.profiles.ProfileCallbackImpl.handleCommand(ProfileCallbackImpl.java:75) [110:org.eclipse.smarthome.core.thing:0.10.0.oh240]

	at org.eclipse.smarthome.core.thing.internal.profiles.SystemDefaultProfile.onCommandFromItem(SystemDefaultProfile.java:49) [110:org.eclipse.smarthome.core.thing:0.10.0.oh240]

	at sun.reflect.GeneratedMethodAccessor640.invoke(Unknown Source) ~[?:?]

	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]

	at java.lang.reflect.Method.invoke(Method.java:498) ~[?:?]

	at org.eclipse.smarthome.core.internal.common.AbstractInvocationHandler.invokeDirect(AbstractInvocationHandler.java:153) [103:org.eclipse.smarthome.core:0.10.0.oh240]

	at org.eclipse.smarthome.core.internal.common.Invocation.call(Invocation.java:53) [103:org.eclipse.smarthome.core:0.10.0.oh240]

	at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]

	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?]

	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]

	at java.lang.Thread.run(Thread.java:748) [?:?]

==> /var/log/openhab2/events.log <==


I will advise what my investigation throws up.
Regards
Paul

so the error message ‘400 invalid state parameter acstate is invalid’ seems to be a catch all, I though it actually referred to the acstate as in on or off of the unit being controlled.
But in my case it is fired if I have been stupid and tried to set a item to an invalid state.
In this case I was trying to set the Fan item to ‘heat’ not a smart move :slight_smile:
I hope this helps others when trying to resolve issues.

Regards

Paul

I also have the binding installed and now that its starting to get hot down under found the same error as @Marco_Pascucci.

Have built some simple Node-Red nodes to get measurements and send commands. Might be an option for some.

1 Like

It is the opposite here way up north. Our ACs rests from May until September, then they start the heating season. In fact they probably use 98% of the energy heating and 2% cooling ;). So we call them heat pumps instead of air conditions

New release can be found here; https://github.com/seime/openhab2-addons/releases/tag/2.5.0.M3.sensibo.alpha4

@idkpmiller @kukulin let me know if it still fails, please provide log details
@rkrisi I’ve added the timer you requested :slight_smile:

2 Likes

Thank you, I will try it :slight_smile:

@seime So if it reports 0, that means that no timer is set? :slight_smile: And if you set it to 60 or less, it will clear the timer?

Dear seime,
thank you for your efforts! I tried your new binding, but I still have some trouble. The Sensibo API thing is now correctly recognized and it is online. My Sensibo Sky controllers are also recognized and included inside my Inbox, but when I try to move them inside my Things they are always in an “UNINITIALIZED - HANDLER_INITIALIZING_ERROR” status. Here is my log:

2019-10-06 18:10:38.047 [ERROR] [nal.common.AbstractInvocationHandler] - An error occurred while calling method 'ThingHandler.initialize()' on 'org.openhab.binding.sensibo.internal.handler.SensiboSkyHandler@131363c': null
java.lang.NullPointerException: null
	at org.openhab.binding.sensibo.internal.model.SensiboSky.getTargetTemperatures(SensiboSky.java:176) ~[?:?]
	at org.openhab.binding.sensibo.internal.handler.SensiboSkyHandler.addDynamicChannelsAndProperties(SensiboSkyHandler.java:235) ~[?:?]
	at org.openhab.binding.sensibo.internal.handler.SensiboSkyHandler.initialize(SensiboSkyHandler.java:204) ~[?:?]
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
	at java.lang.reflect.Method.invoke(Method.java:498) ~[?:?]
	at org.eclipse.smarthome.core.internal.common.AbstractInvocationHandler.invokeDirect(AbstractInvocationHandler.java:152) [133:org.openhab.core:2.5.0.201910060301]
	at org.eclipse.smarthome.core.internal.common.Invocation.call(Invocation.java:53) [133:org.openhab.core:2.5.0.201910060301]
	at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]
	at java.lang.Thread.run(Thread.java:748) [?:?]
2019-10-06 18:10:38.066 [ERROR] [core.thing.internal.ThingManagerImpl] - Exception occurred while initializing handler of thing 'sensibo:sensibosky:62d2870d:5cf821b48b53': null
java.lang.NullPointerException: null
	at org.openhab.binding.sensibo.internal.model.SensiboSky.getTargetTemperatures(SensiboSky.java:176) ~[?:?]
	at org.openhab.binding.sensibo.internal.handler.SensiboSkyHandler.addDynamicChannelsAndProperties(SensiboSkyHandler.java:235) ~[?:?]
	at org.openhab.binding.sensibo.internal.handler.SensiboSkyHandler.initialize(SensiboSkyHandler.java:204) ~[?:?]
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
	at java.lang.reflect.Method.invoke(Method.java:498) ~[?:?]
	at org.eclipse.smarthome.core.internal.common.AbstractInvocationHandler.invokeDirect(AbstractInvocationHandler.java:152) [133:org.openhab.core:2.5.0.201910060301]
	at org.eclipse.smarthome.core.internal.common.Invocation.call(Invocation.java:53) [133:org.openhab.core:2.5.0.201910060301]
	at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]
	at java.lang.Thread.run(Thread.java:748) [?:?]
2019-10-06 18:10:39.286 [INFO ] [thome.model.lsp.internal.ModelServer] - Started Language Server Protocol (LSP) service on port 5007
2019-10-06 18:10:39.408 [ERROR] [core.karaf.internal.FeatureInstaller] - Failed installing 'openhab-misc-restdocs'

Thank you again and let us know! :slight_smile:

All the best, Marco

Should be UNDEF when there is no timer. The data from the API is in seconds (until activation/shutdown/whatever), but when updating the timer it requires countdown in minutes.

@Marco_Pascucci please set log to DEBUG for this binding and provided the API calls from the log. Then I can debug more easily.

Regards, Arne

So the channel accepts minutes or seconds?

Channel works in seconds yes, but since the minimum timer you can set is 1 minute, you will have to provide a value in multiples of 60 seconds (or it will be rounded off).

Thanks!!

@seime I set the the log to DEBUG, but the result is very long and I am unable to include it in a private message. If you send me an email or another contact I can send it to you. What I can anticipate here is that after setting the log level to DEBUG using karaf I repeated all the process, and:

  • adding a new API as thing -> it was OK
  • scanning for my a/c units (three units in two different locations, - I do not think this issue ) -> it was OK
  • adding one unit as thing -> I got an error.

Please note that after that I get the error there is a repeating message, i.e. this one:

2019-10-08 06:42:55.250 [DEBUG] [ternal.handler.SensiboAccountHandler] - Error refreshing model
java.lang.NullPointerException: null
        at org.openhab.binding.sensibo.internal.model.SensiboSky.getTargetTemperatures(SensiboSky.java:176) ~[?:?]
        at org.openhab.binding.sensibo.internal.handler.SensiboSkyHandler.addDynamicChannelsAndProperties(SensiboSkyHandler.java:235) ~[?:?]
        at org.openhab.binding.sensibo.internal.handler.SensiboSkyHandler.handleCommand(SensiboSkyHandler.java:120) ~[?:?]
        at org.openhab.binding.sensibo.internal.handler.SensiboBaseThingHandler.updateState(SensiboBaseThingHandler.java:39) ~[?:?]
        at org.openhab.binding.sensibo.internal.handler.SensiboAccountHandler.updateThingStatuses(SensiboAccountHandler.java:254) ~[?:?]
        at org.openhab.binding.sensibo.internal.handler.SensiboAccountHandler.updateModelFromServerAndUpdateThingStatus(SensiboAccountHandler.java:235) ~[?:?]
        at org.openhab.binding.sensibo.internal.handler.SensiboAccountHandler.lambda$2(SensiboAccountHandler.java:162) ~[?:?]
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?]
        at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308) [?:?]
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180) [?:?]
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294) [?:?]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]
        at java.lang.Thread.run(Thread.java:748) [?:?]

All the best, Marco

New bugfix release https://github.com/seime/openhab2-addons/releases/tag/2.5.0.M3.sensibo.alpha5
Thanks for letting me testdrive your account @Marco_Pascucci, I caught a few other bugs as well :smiley:

@seime
Thank you for your efforts! Problems are apparently over at least from my point of view.

I am temporarily on trip and away from home, but I remotely accessed my system and after installing your new binding now my Sensibo a/c controllers are correctly included as things after a scan.

:+1:

Hi Seime, I’m sorry for late answer, did not test it until today.
All seems to work well after update.
Thank you very much for your help and effort you put in this binding.

HI guys,
thank you for this great binding. Did anyone try to set the temperature with this binding? Temperature is syncing but I am not able to set it using a setpoint…Using the latest release

Sitemap:

Setpoint item=Klimaanlage_WZ_Temperature label=“Ziel-Temperatur [%.0f ºC]” icon=“temperature” minValue=18 maxValue=26 step=1.0

Item:

Number Klimaanlage_WZ_Temperature “Klimaanlage Wohnzimmer Termperatur [%d °C]” { channel=“sensibo:sensibosky::*********:targetTemperature” }

Thank you for your help
Kind regards