Request to add Advantage Air

For heating/cooling related questions in Domoticz

Moderator: leecollings

Post Reply
kinghuzi
Posts: 18
Joined: Tuesday 10 November 2015 11:47
Target OS: -
Domoticz version:
Contact:

Request to add Advantage Air

Post by kinghuzi »

Hi Team Domoticz.

Advantage air is an Australian based company that supplies hardware for smart control of ducted airconditioning systems with individual zone temperature control and temperature sensors in all zones.

The data from the device is gathered and controlled via a API based on JSON I believe. http://XX.XX.XX.XX:2025/getSystemData gives a dump of current configuration including set temperature and reported temperatures from sensors and looks like this.

Code: Select all

{"aircons":{"ac1":{"info":{"setTemp":22.0,"state":"on","uid":"0004a302fbd6","unitType":25,"cbType":0,"activationCodeStatus":"codeEnabled","airconErrorCode":"","cbFWRevMajor":6,"cbFWRevMinor":16,"constant1":5,"constant2":6,"constant3":0,"countDownToOff":0,"countDownToOn":0,"fan":"high","filterCleanStatus":0,"freshAirStatus":"none","mode":"heat","myZone":0,"name":"AC??","noOfConstants":2,"noOfZones":9,"rfSysID":9,"order":0},"zones":{"z01":{"error":0,"maxDamper":100,"measuredTemp":22.1,"minDamper":0,"motion":0,"motionConfig":0,"name":"MASTER","number":1,"rssi":52,"setTemp":18.0,"state":"close","type":1,"value":5},"z02":{"error":0,"maxDamper":100,"measuredTemp":23.3,"minDamper":0,"motion":0,"motionConfig":0,"name":"BED 2","number":2,"rssi":56,"setTemp":16.0,"state":"close","type":1,"value":5},"z03":{"error":0,"maxDamper":100,"measuredTemp":23.4,"minDamper":0,"motion":0,"motionConfig":0,"name":"BED 3","number":3,"rssi":60,"setTemp":16.0,"state":"close","type":1,"value":5},"z04":{"error":0,"maxDamper":100,"measuredTemp":23.1,"minDamper":0,"motion":0,"motionConfig":0,"name":"MISHA OFFICE","number":4,"rssi":64,"setTemp":24.0,"state":"close","type":1,"value":90},"z05":{"error":0,"maxDamper":100,"measuredTemp":21.9,"minDamper":0,"motion":0,"motionConfig":0,"name":"DINING","number":5,"rssi":38,"setTemp":22.0,"state":"open","type":1,"value":35},"z06":{"error":0,"maxDamper":100,"measuredTemp":0.0,"minDamper":0,"motion":0,"motionConfig":0,"name":"LOBBY","number":6,"rssi":0,"setTemp":24.0,"state":"open","type":0,"value":100},"z07":{"error":0,"maxDamper":100,"measuredTemp":22.6,"minDamper":0,"motion":0,"motionConfig":0,"name":"LIVING","number":7,"rssi":47,"setTemp":22.0,"state":"open","type":1,"value":5},"z08":{"error":0,"maxDamper":100,"measuredTemp":23.1,"minDamper":0,"motion":0,"motionConfig":0,"name":"OFFICE","number":8,"rssi":48,"setTemp":22.0,"state":"open","type":1,"value":5},"z09":{"error":0,"maxDamper":100,"measuredTemp":22.2,"minDamper":0,"motion":0,"motionConfig":0,"name":"MEDIA","number":9,"rssi":50,"setTemp":22.0,"state":"open","type":1,"value":5}}}},"snapshots":{},"system":{"dealerPhoneNumber":"0478511133","hasAircons":true,"hasLights":false,"needsUpdate":false,"logoPIN":"1234","mid":"0004a302fbd6","myAppRev":"12.206","name":"MyPlace","noOfAircons":1,"noOfSnapshots":0,"rid":"87NUFuTEsbYR8c60VDtkm7eGPvv2","sysType":"MyAir5"}}
Control can be achieved with a combination of JSON commands as below:

Sending a command to a single aircon

Tip: The following commands can be tested using any standard browser.
The set command uses a subset of the JSON structure from the getSystem command. However each command can only target one aircon unit. If you have multiple aircons you will have to send one command message per aircon.

Example aircon unit commands:

To set the first aircon (ac1) state on or off use the following:

http://10.0.0.10:2025/setAircon?json={" ... state":"on"}}}
http://10.0.0.10:2025/setAircon?json={" ... tate":"off"}}}

To set the second aircon (ac2) mode to heating (heat) use the following:

http://10.0.0.10:2025/setAircon?json={" ... ode":"heat"}}}

You can also combine messages, so to set aircon ac1 to state=on and mode=cool

http://10.0.0.10:2025/setAircon?json={" ... ode":"cool"}}}

Example zone commands:

To set the first aircon (ac1), second zone (z2) state to open.

http://10.0.0.10:2025/setAircon?json={a ... ate":"open"}}}}

To set the third aircon (ac3), tenth zone (z10) value to 80%.

http://10.0.0.10:2025/setAircon?json={a ... "value":80}}}}


Example aircon unit and zone commands:

For a combination of settings you can use the one command

http://10.0.0.10:2025/setAircon?json={a ... "value":80}}}}}

Please can a device be created for Domoticz that can read set and detected temperatures with Zone names and control be achieved.
kinghuzi
Posts: 18
Joined: Tuesday 10 November 2015 11:47
Target OS: -
Domoticz version:
Contact:

Re: Request to add Advantage Air

Post by kinghuzi »

Any input guys ?
mivo
Posts: 80
Joined: Friday 21 April 2017 8:58
Target OS: Raspberry Pi / ODroid
Domoticz version: beta
Location: Czechia
Contact:

Re: Request to add Advantage Air

Post by mivo »

Hi,

looks clear and not hard to implement by scripting (Python or LUA) or Python plugin (available in beta versions). So not need to implement in Domoticz code from my point of view.
My toys:
Raspberry Pi 3 + UPS PIco HV3.0 A Stack
Minibian (Raspbian Jessie) + Domoticz beta
RFLink 433 Gateway, 1wire DS18B20 temp sensors (GPIO)
RaZberry module + 2x Comet Z-Wave + Z-wave socket
---
Plugins: WeMo Switch, UPS PIco HV3.0A on GitHub
kinghuzi
Posts: 18
Joined: Tuesday 10 November 2015 11:47
Target OS: -
Domoticz version:
Contact:

Re: Request to add Advantage Air

Post by kinghuzi »

Would some lua/python wiz be able to whip a script. I am not an IT professional.
mivo
Posts: 80
Joined: Friday 21 April 2017 8:58
Target OS: Raspberry Pi / ODroid
Domoticz version: beta
Location: Czechia
Contact:

Re: Request to add Advantage Air

Post by mivo »

It is question, how to easy develop and debug script/plugin without real device... Is there publicly available any JSON / API documentation ?
My toys:
Raspberry Pi 3 + UPS PIco HV3.0 A Stack
Minibian (Raspbian Jessie) + Domoticz beta
RFLink 433 Gateway, 1wire DS18B20 temp sensors (GPIO)
RaZberry module + 2x Comet Z-Wave + Z-wave socket
---
Plugins: WeMo Switch, UPS PIco HV3.0A on GitHub
kinghuzi
Posts: 18
Joined: Tuesday 10 November 2015 11:47
Target OS: -
Domoticz version:
Contact:

Re: Request to add Advantage Air

Post by kinghuzi »

This is the API documentation for the MyPlace system by Advantage Air, this allows third parties to connect and control the airconditiong functions of a MyPlace system within a simple home network.

The Wall Mounted Touch Screen must have the latest versions of the following apps - AAConfig, AAService and MyPlace from the Google Play Store.

Terminology:

Aircon - one air conditioning unit and associated zones.
Zone - on a ducted aircon a zone is a vent or multiple vents to which the airflow is controlled via a motor.
System - a system is a collection of air conditioners - currently we support up to 4 aircons.
Wall Mounted Touch Screen - the wired android tablet on the wall that controls the system.


1) Connectivity

The Wall Mounted Touch Screen needs to be connected and have a reliable WiFi connection to the router.

We suggest that the router is connected to the internet to allow Google Play Store updates.


2) Discovery

We do not provide a method for discovering the IP address of the Wall Mounted Touch Screen. For the rest of the document we will use 10.0.0.10 as the Wall Mounted Touch Screen IP address.

We suggest that you configure the router to provide the Wall Mounted Touch Screen with a "static" IP address.


3) Read aircon data

Tip: The following commands can be tested using any standard browser.
To get the system data as a single JSON file - use a http GET command on port 2025.
http://10.0.0.10:2025/getSystemData

Here is a heavily edited response to show the relevant data:

{
"aircons": {
"ac1": {
"info": {
"constant1":1, - Readonly - Constant zone 1 - the system will decide if this zone needs to be automatically opened to protect the ductwork (0 - disabled)
"constant2":2, - Readonly - Constant zone 2 - the system will decide if this zone needs to be automatically opened to protect the ductwork (0 - disabled)
"constant3":0, - Readonly - Constant zone 3 - the system will decide if this zone needs to be automatically opened to protect the ductwork (0 - disabled)
"countDownToOff": 0, - Number of minutes before the aircon unit switches off (0 - disabled)
"countDownToOn": 0, - Number of minutes before the aircon unit switches on (0 - disabled)
"fan": "high", - Fan speed - can be "low", "medium" or "high". Note some aircon units also support "auto".
"freshAirStatus": "none", - Fresh Air status - can be set to "on" or "off". Note: not many aircon units have this fitted.
"mode": "heat", - Mode - can be "heat", "cool" or "fan". Note some aircon units support "dry".
"myZone": 0, - MyZone settings - can be set to any zone that has a temperature sensor (0 - disabled)
"name": "AirconHome", - Name of aircon - max 12 displayed characters
"setTemp": 24.0, - Set temperature of the aircon unit - this will show the MyZone set temperature if a MyZone is set.
"state": "on" - Aircon unit state - whether the unit is "on" or "off".
},
"zones": {
"z01": {
"name": "FREEGGVFUX", - Name of zone - max 12 displayed characters
"setTemp": 25.0, - Set temperature of the zone - only valid when Zone type > 0.
"state": "open", - State of the zone - can be "open" or "close". Note: that the
"type": 0, - Readonly - Zone type - 0 means percentage (use value to change), any other number means it's temperature control, use setTemp.
"value": 20 - Percentage value of zone - only valid when Zone type = 0.
}
}
}
},
"system":{
"name":"MyPlaceSystem", - Name of system - max 12 displayed characters
"needsUpdate":false, - If true, you need to prompt user to update the apps on the Wall Mounted Touch Screen
"noOfAircons":1 - Number of aircon units - this can be 0-4.
}
}

4) Sending a command to a single aircon

Tip: The following commands can be tested using any standard browser.
The set command uses a subset of the JSON structure from the getSystem command. However each command can only target one aircon unit. If you have multiple aircons you will have to send one command message per aircon.

Example aircon unit commands:

To set the first aircon (ac1) state on or off use the following:

http://10.0.0.10:2025/setAircon?json={" ... state":"on"}}}
http://10.0.0.10:2025/setAircon?json={" ... tate":"off"}}}
To set the second aircon (ac2) mode to heating (heat) use the following:

http://10.0.0.10:2025/setAircon?json={" ... ode":"heat"}}}
You can also combine messages, so to set aircon ac1 to state=on and mode=cool

http://10.0.0.10:2025/setAircon?json={" ... ode":"cool"}}}
Example zone commands:

To set the first aircon (ac1), second zone (z2) state to open.

http://10.0.0.10:2025/setAircon?json={a ... ate":"open"}}}}
To set the third aircon (ac3), tenth zone (z10) value to 80%.

http://10.0.0.10:2025/setAircon?json={a ... "value":80}}}}
To set the second aircon (ac2), eighth zone (z8) value to 24 degrees.

http://10.0.0.10:2025/setAircon?json={a ... etTemp":24}}}}


Example aircon unit and zone commands:

For a combination of settings you can use the one command

http://10.0.0.10:2025/setAircon?json={a ... "value":80}}}}}
kinghuzi
Posts: 18
Joined: Tuesday 10 November 2015 11:47
Target OS: -
Domoticz version:
Contact:

Re: Request to add Advantage Air

Post by kinghuzi »

That's the full API document.. hoping some one can assist.
mivo
Posts: 80
Joined: Friday 21 April 2017 8:58
Target OS: Raspberry Pi / ODroid
Domoticz version: beta
Location: Czechia
Contact:

Re: Request to add Advantage Air

Post by mivo »

Hi,

just try to parse JSON data from your firs post in Python, no problem. I see some global system info (type, version, etc.) and then data of air condition unit (ac1) and 9 subsidiary zones (z01-09).

Based on your experience with "Advantage Air" usage and Domoticz usage:

- what kind of data to show as sensors in Domoticz ?
- what kind of control of AC or Zones do you expect ?
- there is limited possibility, how to present data / sensors "structured" (rooms, floorplan...). Edit: Do you have any idea how to present data and controls ? - for example: for every zone measured temp etc.
My toys:
Raspberry Pi 3 + UPS PIco HV3.0 A Stack
Minibian (Raspbian Jessie) + Domoticz beta
RFLink 433 Gateway, 1wire DS18B20 temp sensors (GPIO)
RaZberry module + 2x Comet Z-Wave + Z-wave socket
---
Plugins: WeMo Switch, UPS PIco HV3.0A on GitHub
kinghuzi
Posts: 18
Joined: Tuesday 10 November 2015 11:47
Target OS: -
Domoticz version:
Contact:

Re: Request to add Advantage Air

Post by kinghuzi »

The data shown on Domoticz should include:

1. Current monitored temperature
2. Current set temperature per Zone and as a whole or percentage airflow in case particular zone does not have a temp sensor and their individual set temperature.
3. Active Zone (This is the zone that the system uses as a set point for max (heating) or min (cooling temperature to achieve) (This is a feature of Advantage air so that you are not handicapped by the return intake temperature which is normal for most systems)
4. Cool, Heat, Fan mode
5. Fan speed - Low, medium, High, Auto
6. Main aircon system ON or OFF
7. Constant Zones (These are zones that are always open).
8. Main aircon temperature setpoint


The http://192.168.1.16:2025/getSystemData dump gives all of the above data.

{"aircons":{"ac1":{"info":{"setTemp":16.0 REFERS TO POINT 8,"state":"off","uid":"0004a302fbd6","unitType":25,"cbType":0,"activationCodeStatus":"codeEnabled","airconErrorCode":"","cbFWRevMajor":6,"cbFWRevMinor":16,"constant1":6,"constant2":5 REFERS TO POINT 8,"constant3":0,"countDownToOff":0,"countDownToOn":0,"fan":"high" REFER TO POINT 5,"filterCleanStatus":0,"freshAirStatus":"none","mode":"heat" REFER TO POINT 4,"myZone":7 REFER TO POINT 3,"name":"AC??","noOfConstants":2,"noOfZones":9,"rfSysID":9,"order":0},"zones":{"z01":{"error":0,"maxDamper":100,"measuredTemp":22.1,"minDamper":0,"motion":0,"motionConfig":0,"name":"MASTER","number":1,"rssi":43,"setTemp":26.0,"state":"close","type":1,"value":100},"z02":{"error":0,"maxDamper":100,"measuredTemp":25.6,"minDamper":0,"motion":0,"motionConfig":0,"name":"BED 2","number":2,"rssi":55,"setTemp":21.0,"state":"close","type":1,"value":5},"z03":{"error":0,"maxDamper":100,"measuredTemp":25.0,"minDamper":0,"motion":0,"motionConfig":0,"name":"BED 3","number":3,"rssi":49,"setTemp":21.0,"state":"close","type":1,"value":5},"z04":{"error":0,"maxDamper":100,"measuredTemp":23.6,"minDamper":0,"motion":0,"motionConfig":0,"name":"MISHA OFFICE","number":4,"rssi":47,"setTemp":22.0,"state":"close","type":1,"value":5},"z05":{"error":0,"maxDamper":100,"measuredTemp":22.0,"minDamper":0,"motion":0,"motionConfig":0,"name":"DINING","number":5,"rssi":42,"setTemp":22.0,"state":"close","type":1,"value":5},"z06":{"error":0,"maxDamper":100,"measuredTemp":0.0,"minDamper":0,"motion":0,"motionConfig":0,"name":"LOBBY","number":6,"rssi":0,"setTemp":24.0,"state":"open","type":0,"value":60},"z07":{"error":0,"maxDamper":100,"measuredTemp":21.9,"minDamper":0,"motion":0,"motionConfig":0,"name":"LIVING","number":7,"rssi":48,"setTemp":26.0,"state":"open","type":1,"value":100},"z08":{"error":0,"maxDamper":100,"measuredTemp":21.7,"minDamper":0,"motion":0,"motionConfig":0,"name":"MEDIA","number":8,"rssi":47,"setTemp":24.0,"state":"close","type":1,"value":100},"z09":{"error":0,"maxDamper":100,"measuredTemp":21.4,"minDamper":0,"motion":0,"motionConfig":0,"name":"HUS OFFICE","number":9,"rssi":48,"setTemp":24.0,"state":"open","type":1,"value":100}}}},"snapshots":{"p1":{"name":"23C Downst","enabled":true,"snapshotId":"p1","activeDays":0,"startTime":1020,"stopTime":1140,"summary":"Aircon - on, mode - heat, fan - high, 23C\nZones on: z6 z7 z8 z9"}},"system":{"dealerPhoneNumber":"0478511133","hasAircons":true,"hasLights":false,"needsUpdate":false,"logoPIN":"1234","mid":"0004a302fbd6","myAppRev":"12.206","name":"MyPlace","noOfAircons":1,"noOfSnapshots":1,"rid":"87NUFuTEsbYR8c60VDtkm7eGPvv2","sysType":"MyAir5"}}
mivo
Posts: 80
Joined: Friday 21 April 2017 8:58
Target OS: Raspberry Pi / ODroid
Domoticz version: beta
Location: Czechia
Contact:

Re: Request to add Advantage Air

Post by mivo »

Hi,

just created Python script for parsing and printing AC and Zones data. It should get data directly from URL (specified at beginning of script). Please try to start it on your system and check returned data.

https://gist.github.com/milanvo/4af85d7 ... 930192d957
My toys:
Raspberry Pi 3 + UPS PIco HV3.0 A Stack
Minibian (Raspbian Jessie) + Domoticz beta
RFLink 433 Gateway, 1wire DS18B20 temp sensors (GPIO)
RaZberry module + 2x Comet Z-Wave + Z-wave socket
---
Plugins: WeMo Switch, UPS PIco HV3.0A on GitHub
kinghuzi
Posts: 18
Joined: Tuesday 10 November 2015 11:47
Target OS: -
Domoticz version:
Contact:

Re: Request to add Advantage Air

Post by kinghuzi »

Waiting for damn.pythom to be reactivated on the betas to try this
mivo
Posts: 80
Joined: Friday 21 April 2017 8:58
Target OS: Raspberry Pi / ODroid
Domoticz version: beta
Location: Czechia
Contact:

Re: Request to add Advantage Air

Post by mivo »

Hi,

you need not wait - it is not yet Python plugin. You can run it from command line.
My toys:
Raspberry Pi 3 + UPS PIco HV3.0 A Stack
Minibian (Raspbian Jessie) + Domoticz beta
RFLink 433 Gateway, 1wire DS18B20 temp sensors (GPIO)
RaZberry module + 2x Comet Z-Wave + Z-wave socket
---
Plugins: WeMo Switch, UPS PIco HV3.0A on GitHub
Post Reply

Who is online

Users browsing this forum: No registered users and 0 guests