Daikin Airbase Binding

Hi All,

I’ve created a binding that supports the Daikin Airbase controller which is sold in Australia & New Zealand to support ducted air conditioning systems.

The API is subtlely different to the existing daikin controllers, so the easiest option was to create a new binding.

A test build is at http://smedley.id.au/tmp/org.openhab.binding.daikinairbase-2.5.0-SNAPSHOT.jar and I’ve created a pull request at https://github.com/openhab/openhab2-addons/pull/5777

Cheers,

Paul

1 Like

FYI - there is confirmation in https://forums.whirlpool.net.au/thread/3n45mp03?p=14#r278 that the binding works for other users as well.

thanks again Paul:
regarding the thing config for the original source, are the examples wrong on the original source, why is the IP address contained in the items?
things:
daikin:ac_unit:living_room_ac [ host=“192.168.0.5” ]
items
Switch DaikinACUnit_Power { channel=“daikin:ac_unit:living_room_ac:power” }
vs
Switch Daikin_Power “AC Daikin Power” { channel=“daikinairbase:ac_unit:192_168_0_6:power” }

I’ve updated README.md at https://github.com/psmedley/openhab2-addons/tree/master/bundles/org.openhab.binding.daikinairbase with some tweaks to item/thing/sitemap definition - I believe these are correct for the current code

No problem, it would have been good to have remove ip address, ie inherit name from thing definition, but only a minor request.

I’m thinking of using either the MAC address or SSID for the last part of the thing auto-definition, ie:
from http://192.168.x.x/skyfi/common/basic_info?lpw=

mac=D0C5D3A013A4 or ssid=DaikinAP70155 the ssid probably makes more sense…

1 Like

yep makes it unique and gets around syntax error I’m getting with 192_168_.1_123…

OK, http://smedley.id.au/tmp/org.openhab.binding.daikinairbase-2.5.0-SNAPSHOT.jar uses the controller’s ssid for the thing name

Brief status update, I’m now able to read the zones from the controller and set switches appropriately to on or off.

Now I need to add code to handle changes to the switches and sending the signal to the controller.

I managed to get zone switch setting to work. http://smedley.id.au/tmp/org.openhab.binding.daikinairbase-2.5.0-SNAPSHOT.jar contains the update

github not yet updated

Known issues:

  • no guarding against controlling more zones that your controller supports. eg Zones 5 - 8 will be available to add, even though the controller doesn’t support them. This should be harmless as either the call will fail (in the case of setting zones 5-8 on a 4 zone controller; or if you only have 5 zones, and try and set zone 6, the call will succeed, but do nothing.
  • no detection of common zone - there is no logic yet to stop you turning all zones off, which in the case where you don’t have a common zone, can damage your ducting. I can read the common zone flag from the controller, I just need to add code to count the zones to make sure there’s always one open if there is no common zone.

Paul,
Thanks for your work on this. I have installed the binding without any significant problems and will test it out for a few days and let you know of any issues.
There were a few warnings came up for Items as they were added. The same happens if they are linked to the channel through an items file.

2019-07-07 20:31:08.837 [WARN ] [l.handler.DaikinAirbaseAcUnitHandler] - Received command of wrong type for thing ‘daikinairbase:ac_unit:DaikinAP54843’ on channel power

I recall this has been an ongoing discussion with the original Daikin binding.

Hi Ant,

I’ve noticed that one too, but it hasn’t made it to the top of the list to look at yet. I’ll try investigate soon.

If you could post what’s in your events.log at the same/similar timestamp that would help too.

The warnings like ‘Received command of wrong type for thing ‘daikinairbase:ac_unit:DaikinAP54843’ on channel power’ seems to coincide with these events:
DaikinAirbaseACUnit192168110_Power changed from NULL to ON

Perhaps the initial NULL value causes the error?

Edit: Nope. a command ‘REFRESH’ is sent to each item at initialisation which the binding doesn’t know how to handle. Should be easy to workaround…

Edit2: http://smedley.id.au/tmp/org.openhab.binding.daikinairbase-2.5.0-SNAPSHOT.jar now masks this warning when a ‘REFRESH’ is issued

Hi Paul and all, I have a problem that whether I use the auto discovery or configure items and thing files, my airbase unit locks up and goes offline daily. I have to open it up to remove the power wire to reset it.
I know its openhab that is shutting it down. If I disable the unit in openhab is goes and goes without fault. As soon as it starts to get hit from openhab rules or item file refresh it locks up.
Anyone else seen this behavior?
James

Hi James,

I’m not seeing this at all. Are you running the latest version of the binding?

Is this a zoned or non zoned controller? If this has only started happening recently, is guess it’s something to do with the added code for zoning?

Enabling debug logging for the binding might help diagnose things.

One other thought - have you changed the refresh time at all? I’ve left mine at 60 seconds and we now don’t use the Daikin App at all. I can imagine that if multiple phones running the app were refreshing settings along with Openhab that maybe the internal web server on the Airbase can’t handle it?

I came across this when I was trying to reference a post I had made a while back, but I have mine setup via HTTP addon instead and during testing (after sniffing with Wireshark) I was polling the controller 4x a second without any troubles at all. I’ve now got mine set to every second (250ms was a bit of unneeded overkill :wink:) and it’s been running fine for a few months. My guess is there could be a query that’s not structured correctly that’s causing an overrun in the unit after a period of time. Can you fire up a Wireshark capture and see what it’s requesting?

Hi All,

I’ve spent the last few days merging the Airbase changes into the daikin binding. The first attempt at a merged binding is at http://smedley.id.au/tmp/org.openhab.binding.daikin-2.5.0-SNAPSHOT.jar

Changes:

  • Should support both ‘normal’ Daikin controllers used in Europe, as well as the Airbase in one binding
  • Binding currently allows 0.5 temperature increments on the setpoint on the Airbase, which are ignored. I haven’t figured out yet how to allow that for the Daikin controllers, but use 1.0 increments for the Airbase

Feedback appreciated. It should work as well as the daikinairbase binding used to, but this is more likely to be accepted into the Openhab2 codebase.

Cheers,

Paul

2 Likes

Hi all - the code for the Daikin Airbase is now merged into the Daikin binding in the Openhab repository. Starting from v2.5 Milestone 3, there will be no need to manually install the binding. Latest jar file, which is based on the latest code is at org.openhab.binding.daikin-2.5.0-SNAPSHOT.jar

Next step to create a channel/item for use with Homekit/Google Home.

Cheers,

Paul

Hi Paul, thanks for your work on this. Can you please post a link to the latest .jar file?
“org.openhab.binding.daikin-2.5.0-SNAPSHOT.jar” I cant find it. or is this it?
http://smedley.id.au/tmp/org.openhab.binding.daikin-2.5.0-SNAPSHOT.jar
Cheers