Millheat Binding not working ? - Zoneoffset

Running OH 2.5.10 and just bought a Millheat electric heater which I look forward to include in my OH-setup using the Millheat binding.

However, I cannot seem to get the basic “thing” for the API installed - in the log, i just get this:

2020-12-13 19:10:40.940 [me.event.ThingUpdatedEvent] - Thing 'millheat:account:1765d4893e3' has been updated.
==> /var/log/openhab2/openhab.log <==
2020-12-13 19:10:41.149 [WARN ] [mmon.WrappedScheduledExecutorService] - Scheduled runnable ended with an exception: 
java.time.DateTimeException: Invalid ID for ZoneOffset, non numeric characters found: +1:00
	at java.time.ZoneOffset.parseNumber(ZoneOffset.java:269) ~[?:1.8.0_275]
	at java.time.ZoneOffset.of(ZoneOffset.java:221) ~[?:1.8.0_275]
	at org.openhab.binding.millheat.internal.model.Home.<init>(Home.java:62) ~[?:?]
	at org.openhab.binding.millheat.internal.handler.MillheatAccountHandler.refreshModel(MillheatAccountHandler.java:267) ~[?:?]
	at org.openhab.binding.millheat.internal.handler.MillheatAccountHandler.lambda$0(MillheatAccountHandler.java:183) ~[?:?]
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) ~[?:1.8.0_275]
	at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[?:1.8.0_275]
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) ~[?:1.8.0_275]
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) ~[?:1.8.0_275]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_275]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_275]
	at java.lang.Thread.run(Thread.java:748) [?:1.8.0_275]

Any ideas ?

In karaf console check the value of the variable timezone:

env |grep timezone

Does it contain a valid timezone ?

It says;

  __  _____    ____
  ____  ____  ___  ____  / / / /   |  / __ )
 / __ \/ __ \/ _ \/ __ \/ /_/ / /| | / __  |
/ /_/ / /_/ /  __/ / / / __  / ___ |/ /_/ /
\____/ .___/\___/_/ /_/_/ /_/_/  |_/_____/
/_/                        2.5.10
       Release Build

Hit '<tab>' for a list of available commands
and '[cmd] --help' for help on a specific command.
Hit '<ctrl-d>' or type 'system:shutdown' or 'logout' to shutdown openHAB.

openhab> env |grep timezone
String          user.timezone   Europe/Copenhagen
openhab>

After deleting my millheat profile and setting up a new one, using a different email, I managed to get the bridge in Openhab ONLINE. However, after setting up a heater on my profile, it stops working and the heater never comes online in openhab.

My theory is, that the timezone issue I wrote about earlier has to do with where the “house” in Millheat is registered. It seems, that when connecting the heater it uses location info on the iPhone to register the timezone the house+heater exist in. In my case, that is GMT +1.

Can anyone replicate this error in Millheat ? - or assure me that they have this working in a GMT +1 (i.e. Berlin/Copenhagen/Oslo) setup ?

So, I have now been trying a bit more on this - and tried to set up a basic API-connection from a “clean install” OH 2.5.11 - and even the 3.0.0RC2 (looks nice by the way) - but all trials gives the same result: The connection from OH to the Millheat API is refused (see error code dump from logfile earlier in this conversation).

I would REALLY love to have this binding up and running, but believe it cannot be on my side and must be a change in the Millheat API not yet supported by the OH bindings ?

PLEASE - if anyone has this up and running in the current OpenHab version, please say so !

2 Likes

Running into the same issue on openHAB 3.2.0 a year after you. Really disappointed as I specifically bought this heater because of the available Millheat binding…

More info here: [SOLVED] Millheat Wifi Electric heater openhab binding - #54 by Jacob