Thank you (and for all the great work have put into this). I look forward to the set point fix!
Would there be a workaround to the scheduling that can be easily put into a sitemap? - I am hoping to be totally self-suffient with this, being able to control the system in-house with no reliance in their app or the ‘cloud’
I’ve just pushed a fix for the setpoint issue. The build is running on jenkins now, and I’ll try and update the link in the PR to point to the new version when it finishes (it has to target 2.5.0 now, so the old link will stop working).
I’ve also updated the readme with some better examples of .items and .things files.
Currently, you can send back the edited JSON to the same channel. I managed to get it working via a rule that fired when I pressed a button (like a heating “scene”). Unfortunately, my RaspberryPI broke, and I didn’t take a copy of the rules/sitemap I used
This will probably help get you started if you wanted to use a “scene based” schedule:
Just use sendCommand(“json”) to send json to the room channel on the draytonwiser binding.
It’ll probably need some trial and error, and might end up with you accidentally wiping your current schedules though.
It’s not a full blown schedule configuration, but it my case I had it set up for things like “Working from home” → turned the heating up in the office during the working day, otherwise turn the heating off, “Have Guests” → altered the schedule of the spare room which would otherwise be kept cool etc.
I am working on this just now making up my own timeclocks, all going well for the trv’s etc however I am trying to set up a similar schedule arrangement for the hot water side but I can’t see a item in the binding for hot water masterschedule. Is there one available but hidden?
I have installed this binding and set everything up through Paper UI.
After I added my Heat Huh three were three “Things” that came up on my Inbox.
Controller
Living Room
Living Room - Thermostat.
I added all them and I have linked channels to items and everything is working although the Controller is show a communication error.
Status: OFFLINE - COMMUNICATION_ERROR java.lang.NumberFormatException: Expected an int but was 3397440534 at line 1 column 444 path $.DhcpStatus.LeaseStartTime
and when I use the Away Mode Active channel to toggle the away mode it does change on the Heat Hub but I get the following error in my log file.
2019-01-28 19:51:23.174 [ERROR] [nal.common.AbstractInvocationHandler] - An error occurred while calling method 'ThingHandler.handleCommand()' on 'org.openhab.binding.draytonwiser.handler.ControllerHandler@4332be': java.lang.NumberFormatException: Expected an int but was 3397440534 at line 1 column 444 path $.DhcpStatus.LeaseStartTime
com.google.gson.JsonSyntaxException: java.lang.NumberFormatException: Expected an int but was 3397440534 at line 1 column 444 path $.DhcpStatus.LeaseStartTime
at com.google.gson.internal.bind.TypeAdapters$7.read(TypeAdapters.java:245) ~[21:com.google.gson:2.7.0.v20170129-0911]
at com.google.gson.internal.bind.TypeAdapters$7.read(TypeAdapters.java:235) ~[21:com.google.gson:2.7.0.v20170129-0911]
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.read(ReflectiveTypeAdapterFactory.java:129) ~[21:com.google.gson:2.7.0.v20170129-0911]
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:220) ~[21:com.google.gson:2.7.0.v20170129-0911]
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.read(ReflectiveTypeAdapterFactory.java:129) ~[21:com.google.gson:2.7.0.v20170129-0911]
at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:220) ~[21:com.google.gson:2.7.0.v20170129-0911]
at com.google.gson.Gson.fromJson(Gson.java:887) ~[21:com.google.gson:2.7.0.v20170129-0911]
at com.google.gson.Gson.fromJson(Gson.java:852) ~[21:com.google.gson:2.7.0.v20170129-0911]
at com.google.gson.Gson.fromJson(Gson.java:801) ~[21:com.google.gson:2.7.0.v20170129-0911]
at com.google.gson.Gson.fromJson(Gson.java:773) ~[21:com.google.gson:2.7.0.v20170129-0911]
at org.openhab.binding.draytonwiser.handler.HeatHubHandler.getStation(HeatHubHandler.java:316) ~[?:?]
at org.openhab.binding.draytonwiser.handler.ControllerHandler.updateControllerData(ControllerHandler.java:133) ~[?:?]
at org.openhab.binding.draytonwiser.handler.ControllerHandler.setAwayMode(ControllerHandler.java:238) ~[?:?]
at org.openhab.binding.draytonwiser.handler.ControllerHandler.handleCommand(ControllerHandler.java:74) ~[?:?]
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:153) [102:org.eclipse.smarthome.core:0.10.0.oh240]
at org.eclipse.smarthome.core.internal.common.InvocationHandlerSync.invoke(InvocationHandlerSync.java:59) [102:org.eclipse.smarthome.core:0.10.0.oh240]
at com.sun.proxy.$Proxy140.handleCommand(Unknown Source) [209:org.openhab.binding.draytonwiser:2.5.0.201901032156]
at org.eclipse.smarthome.core.thing.internal.profiles.ProfileCallbackImpl.handleCommand(ProfileCallbackImpl.java:75) [109:org.eclipse.smarthome.core.thing:0.10.0.oh240]
at org.eclipse.smarthome.core.thing.internal.profiles.SystemDefaultProfile.onCommandFromItem(SystemDefaultProfile.java:49) [109:org.eclipse.smarthome.core.thing:0.10.0.oh240]
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:153) [102:org.eclipse.smarthome.core:0.10.0.oh240]
at org.eclipse.smarthome.core.internal.common.Invocation.call(Invocation.java:53) [102: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) [?:?]
Caused by: java.lang.NumberFormatException: Expected an int but was 3397440534 at line 1 column 444 path $.DhcpStatus.LeaseStartTime
at com.google.gson.stream.JsonReader.nextInt(JsonReader.java:1164) ~[?:?]
at com.google.gson.internal.bind.TypeAdapters$7.read(TypeAdapters.java:243) ~[?:?]
... 32 more
Any ideas on what could be causing this?
I am not overly worried at the moment as it is working but just causing errors in the log.
I’m trying to pull as much data from the heat hub as I can, and the dhcp lease is one of those properties. However it seems that I’m using the wrong data type in my data structure, (int instead of long most likely), so it is throwing a parsing exception.
This won’t affect the binding as this property isn’t exposed or used anywhere, but I’ll get it fixed regardless.
I set everything up through Paper UI and it is working great but everything else I have setup through thing files.
Can somebody please give me an example or point me to any documentation on how to setup the Hub, Controller, Room and Thermostat as I just cant seem to get it working at all.
Thanks Andrew, is there any plans to add it in the future? - It would be handy during the summer months as I have a working timeclock solution managing the heating side quite well which would transfer across to the hot water.
Hi, I bought a Drayton Wiser system when I saw this binding was working, thanks for the effort.
In general it all works well and recently I let Openhab automate the away status with phone presence, works but I found a small issue.
When the binding sets the away status it also resets the away temp to 16 degrees, well for us that’s warmer than we have in the daytime for some rooms when we are home!
Is there somewhere I can change the away temp in the binding or change it so it keeps the away temp set in the Wiser app?
I’m running 2.4 still because the update to 2.5 broke something, I can go update if this is a fixed issue but I didn’t see anything about it in the github commits.
Yeah this is a hang-over from when the controller didn’t store the away mode setpoint itself and relied on the binding (and the mobile app) sending the setpoint every time you turned away mode on.
A firmware update fixed this, and the value you set in the mobile app is now persisted, but I haven’t updated the binding to reflect this change (yet)