Rooted (locally accessible) Toon

Is there any way for me to get my hands on this binding, i can’t seem to find it anywhere?

Hi @DaanMeijer @daan_meijer

Do you have any plans to make this binding ‘normal’ available in OH3 ?

@Eric_Buizert I can send you the binding Jar if you want ? Send me a PM with your mail adres to send the binding to if you want

Thanks
Olaf

I’ve tried to add the codebase to the main OpenHAB repo a couple of times. Unfortunately, the process by which this should be done is something I haven’t quite mastered yet :sweat_smile: I’m currently trying again, to add it to the OH3 repo.

Here’s a download link for the most recently compiled version.

1 Like

Hi Daan,

Thank you for all your efforts. Ive upgraded from your 2.5.0 to the 2.5.12 version. Sadly i can no longer create a bridge (input the TOON’s IP adres into the binding). The screen stays blank. Also when i open the binding it no longer lists any supported things.

I didn’t backup my old copy, and the old download links are dead. Do you have a copy of an older version or could you maybe look into the error im facing.

Ive cleared cache and restarted OH to make sure that wasn’t a problem.

Hi Daan,

That would be great if you manage to get this binding in the OH 3.0 repository.

Thanks for your work.

1 Like

Thank you Daan for the latest version.
Hope you can get the job done for OH3. Would be great !!!

Thanks for the good work. Good luck!

1 Like

Dear Dries and Daan,

@Daan thank you for this brilliant addon it really helps making things easy. I’m using your latest build at the moment but facing the same problems as Dries. The binding loses connection to the Toon and values are not updated anymore. Especially when using the away or sleep command of Toon. After restarting your binding with bundle:restart org.openhab.binding.rootedtoon in OH console everything starts working again.

Furthermore I get this error in openhab log, it does not have any negative result on its working however. Maybe related to the connection drops?

2020-12-31 16:26:53.117 [WARN ] [ootedtoon.internal.client.ToonClient] - Error while parsing getDevices.json output

java.lang.NullPointerException: null

at org.openhab.binding.rootedtoon.internal.client.ToonClient.requestRealtimeUsageInfo(ToonClient.java:177) ~[?:?]

at org.openhab.binding.rootedtoon.internal.RootedToonHandler.updateRealtimeUsageInfo(RootedToonHandler.java:191) ~[?:?]

at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:1.8.0_252]

at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308) [?:1.8.0_252]

at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180) [?:1.8.0_252]

at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294) [?:1.8.0_252]

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

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

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

Can the connection drops be solved? I would like to help you if I can, maybe run some tests?

Keep up the good work Daan.

unfortunately the download link is dead for me :frowning:

Found an other way to solve this. Deinstalled the binding and I am using Nodered over http to communicate with Toon. This Toon binding is spamming my openhab log and at the end causing stability issues. At least Nodered is working for me instead of this binding with no support.

Thank you,

Hi @Syrisara

Can you describe how you get this working? I’m also looking for an alternative, i’ve the same problems as you and @dries_dokter

Can you or I PM you?

Start with the easy part, retrieving data from toon.
flow:
timestamp node > http request node (with url http://yourtoonip/happ_thermstat?action=getThermostatInfo) > json node > function node (to seperate/send your message to openhab) > openhab nodes to send info to openhab.

When you send the request toon will present you a json object with all burner info. (use a debug node)
Are you in to Nodered?

Retrieving energy info? Do the same however with url http://youtoonip/hdrv_zwave?action=getDevices.json
It will present you all energy devices/values. Extract the values you need or desire.

Sending burner commands to Toon, I’m working on that (did not have much time yet).
But as an example,
http://yourtoonip/happ_thermstat?action=changeSchemeState&state=2&temperatureState=0
will put your Toon in comfort mode.

Hope this helps a little,

Oeps, found this,

https://flows.nodered.org/flow/a4703e4a63992bbeb80f76219cddc5e4

Thanks! i don’t have much time but this looks promising

I did look into the node-red flow. It was a good way to get acquainted to node-red (always have been curious about it). But while I was looking into it, I realized that it would be possible to do the same thing using the HTTP binding, so I created a HTTP thing for Toon and now I am basically back where I started.
But this time it seems to work pretty well (and stable too).

If anyone is interested in the YAML (and the javascript) for this Thing, just let me know…

@dries_dokter

I’m very interested in your solution. If you want to share your solution that would be great. I think it’s easier to maintain than the node-red solution.

@landzaat Here you go:

For use with OH3:

  • Install HTTP binding
  • Install javascript transformation
  • Put .js files in transform folder
  • Create new HTTP thing
    use YAML in Code section (not sure if there might be another way to import it…)
    Make sure when using copy paste the union symbol: ∩ is still there
    Make sure to change your toon address :slight_smile:
    Also have a look at the update frequency (I have set it to 1 minute)

Please do not hesitate to comment if you think I could have done it more efficient.

@dries_dokter

Super !! Thanks
Let you know the result

@dries_dokter

Could it be that the javascript transformation needs to be JSONPARH Transformation ?
After setting it all op I had got the errors like below

2021-04-08 21:31:41.830 [WARN ] [.transform.SingleValueTransformation] - Transformation service JSONPATH for pattern $.currentInternalBoilerSetpoint not found!

After installing JSONPATH Transformation I did got correct info from the thermostat.

Oh I am sorry, yes it needs to be both: json path is needed to extract data from the messages. Js is needed because Toon provides temperature as 2000 so the JS divides that by 100 (and the other way around)

@landzaat Not sure at what moment it was messed up but I needed to change tim100.js, because the setpoint was no longer send. This is the update, download link has been updated too.

(function(i){
	return parseInt(parseFloat(i)*100);
})(input)