@caitken-com/node-red-contrib-daikin-api 1.2.0

Daikin Control API

npm install @caitken-com/node-red-contrib-daikin-api

JSON to Daikin Wifi controller/adaptor

Controls Daikin air-conditioner wifi controller/adaptor via Node Red. Tested with BRP15B61.

daikin-server (config node)

Mode Description
IP Address: {string} Local IP of your Daikin Wifi adaptor. Eg: 192.168.1.123
Auto mode {int} ID of Auto mode. Eg: 0
Fan mode {int} ID of Fan mode. Eg: 3
Heat mode {int} ID of Heating mode. Eg: 1
Cool mode {int} ID of Cooling mode. Eg: 2
Dry mode {int} ID of Drying mode. Eg: 6
Dehumidifier mode {int} ID of Dehumidifier mode. Eg: 3

Each aircon-unit maybe be setup with different IDs for the various modes. Here's some documentation on possible values, although my IDs don't match those docs, which is why I've made it user configurable.

daikin-api node (command node)

On initial deploy the node will automatically sync with the wifi controller. But won't know the correct mode(s) till you set the IDs within the config node.

Commands:

General use only requires these two commands: getControlInfo setControlInfo

Get control info:

Use this to fetch the status from the wifi controller. After the initial automatic sync you'll need to do this command periodically to keep the node / your flows in sync with the wifi controller.

{
	"cmd": "getControlInfo"
}

The above payload will return something similar to this:

{"Power":false,"Mode":"Heat","TargetTemperature":22,"FanRate":"Low","FanDirection":"Disabled"}

Set control info:

Use this to send commands (set values) to the wifi controller. At least one of the following must be set: Power, Mode, TargetTemperature, FanRate, FanDirection

{
	"cmd": "setControlInfo",
	"Power": true,
	"Mode": "Heat",
	"TargetTemperature": 22,
	"FanRate": "Low",
	"FanDirection": "Off"
}
Param Type Description
Power {bool} true/false
Mode {string} Auto/Heat/Cool/Dry/Dehumidifier/Fan (!)
TargetTemperature {int} 0-100 degrees celsius
FanRate {string} Auto/Silence/Low/1/2/3/4/5/Auto low/Auto mid/Auto high (!)
FanDirection {string} Off/Vertical/Horizontal/3D (!)

(!) Not all values are available on every system.

Get sensor info:

Fetches temperature sensor info.

{
	"cmd": "getSensorInfo"
}

The above payload will return something similar to this:

{"OutsideTemperature":"Disabled","InsideTemperature":16}

On my unit InsideTemperature is measuring from a sensor within the roof space where the machine is. And OutsideTemperature is disabled. So not useful to determine indoor/outdoor temperatures, at least on my unit.

Get zone setting

Fetches zone names, and ON/OFF status

{
	"cmd": "getZoneSetting"
}

The above payload will return something similar to this:

{"Zones": [0:"-",1:"-",2:"-",3:"-",4:"-",5:"-",6:"-",7:"-"],"On":[0:false,1:false,2:false,3:false,4:false,5:false,6:false,7:false]}

Get config

Syncs with wifi controller, then returns all cached values of this node in human/pretty values

{
	"cmd": "getConfig"
}

The above payload will return something similar to this:

{"Power":true,"Mode":"Cool","TargetTemperature":22,"FanRate":"Low","FanDirection":"Disabled","OutsideTemperature":"Disabled","InsideTemperature":22,"ZoneNames":["-","-","-","-","-","-","-","-"],"ZoneStates":[false,false,false,false,false,false,false,false],"EnableZones":false,"EnableLinearZones":false,"EnableSetZones":true,"EnableCommonZone":false,"EnableAutoMode":false,"EnableDryMode":true,"EnableQuickTimer":true,"EnableFanRate":true,"EnableFanRateAuto":false,"EnableFanDirection":false,"EnableSpecialMode":false,"EnableCh":false,"EnableHolidayMode":false,"EnableCent":false,"EnableFilterSign":true,"EnableTemperatureSetting":true,"EnablePatrol":false,"EnableAirSide":false,"SpecialMode":"Disabled","Model":"NOTSUPPORT","Type":"aircon","Version":"1.2.1","Revision":23,"Name":"DaikinAP88703","ID":"Disabled","Errors":false,"Location":"Disabled","CountryCode":"au","Method":"home only","SSID":"DaikinAP88703","Mac":"DC:F5:05:F0:26:21","Port":30050,"AdapterKind":3,"AdaptorMode":"run","LED":true,"AcLED":true,"ErrorType":0,"ErrorCode":0,"HolidayMode":"Disabled","Operate":2,"LowPowerFlag":0,"SyncTime":0,"NoticeIpInt":0,"NoticeSyncInt":0,"BkAuto":2,"Dt1":22,"Dt2":22,"FanSteps":2,"FanDirection1":"Disabled","FanAirSide":"Disabled","AirSide1":"Disabled","AirSide2":"Disabled","FanAuto":"Disabled","Auto1":"Disabled","Auto2":"Disabled","FanDirection2":"Disabled","FilterSign":false,"Cent":"Disabled","NumRemotes":2,"Humidity":0,"TargetHumidity":7,"CoolTemperatureMin":16,"CoolTemperatureMax":32,"HeatTemperatureMin":16,"HeatTemperatureMax":32,"SpecialModeKind":"Disabled","AdvancedMode":"N/A"}

Get raw config

Syncs with wifi controller, then returns all cached values of this in raw json

{"ret":"OK","pow":"1","mode":"2","operate":"2","bk_auto":"2","stemp":"22","dt1":"22","dt2":"22","f_rate":"1","dfr1":"1","dfr2":"1","f_airside":"0","airside1":"0","airside2":"0","f_auto":"0","auto1":"0","auto2":"0","f_dir":"0","dfd1":"0","dfd2":"0","filter_sign_info":"0","cent":"0","en_cent":"0","remo":"2","err":"0","model":"NOTSUPPORT","type":"aircon","humd":"0","s_humd":"7","en_zone":"0","en_linear_zone":"0","en_filter_sign":"1","acled":"1","land":"0","elec":"0","temp":"1","m_dtct":"0","ac_dst":"au","dmnd":"0","en_temp_setting":"1","en_frate":"1","en_fdir":"0","en_rtemp_a":"0","en_spmode":"0","en_ipw_sep":"0","en_scdltmr":"0","en_mompow":"0","en_patrol":"0","en_airside":"0","en_quick_timer":"1","en_auto":"0","en_dry":"1","en_common_zone":"0","cool_l":"16","cool_h":"32","heat_l":"16","heat_h":"32","frate_steps":"2","en_frate_auto":"0","reg":"au","dst":"1","ver":"1_2_1","rev":"23","location":"0","name":"DaikinAP88703","icon":"0","method":"home only","port":"30050","id":"","pw":"","lpw_flag":"0","adp_kind":"3","led":"1","en_setzone":"1","mac":"DCF505F02621","adp_mode":"run","ssid":"DaikinAP88703","err_type":"0","err_code":"0","en_ch":"1","holiday":"0","en_hol":"0","sync_time":"0","htemp":"22","otemp":"-","zone_name":["-","-","-","-","-","-","-","-"],"zone_onoff":["0","0","0","0","0","0","0","0"]}

Get raw:

Get or set raw values on the wifi controller, using json. Useful for debugging your Mode IDs for the config node.

If anyone has a unit with vents controllable via the wifi controller, or other values that need setting/getting. I'd like to work with you in updating this package, by opening an Issue on github!

Endpoint Description
basic_info Provides Daikin account information (security issue!), software version, mac address and generic info
get_remote_method Provides information about polling system
set_remote_method Set information on the polling system (reduce remote time update ??)
get_model_info Provides model information
set_control_info Main endpoint to set status parameters (control almost all)
get_control_info Main endpoint to request all current status parameters
get_sensor_info Provides information on sensors (temperatures, humidity, power consumption)
get_timer Provides information on timer
set_timer Set timer
get_price Provides information about cost of running?
set_price Set value/s about cost of running?
get_target ?
set_target ?
get_week_power Provides weekly and today runtime information (in mn)
get_year_power Provides yearly runtime information
get_program Get schedule information
set_program Set schedule
get_scdltimer Provides information about on/off weekly timer
set_scdltimer Set on/off weekly timer
get_notify ?
set_notify ?
set_regioncode Set region code
set_led Set LED but doesn't work?
reboot Reboot the Wifi controller
get_zone_setting Provides zone names, and ON/OFF status
set_zone_setting Set zone names, and ON/OFF status
{
	"cmd": "getRaw",
	"endpoint": "get_control_info",
	"data": null
}

The above payload will return something similar to what's shown below. Use this documentation to determine their meaning:

{"ret":"OK","pow":"0","mode":"1","operate":"1","bk_auto":"2","stemp":"22","dt1":"22","dt2":"22","f_rate":"1","dfr1":"1","dfr2":"1","f_airside":"0","airside1":"0","airside2":"0","f_auto":"0","auto1":"0","auto2":"0","f_dir":"0","dfd1":"0","dfd2":"0","filter_sign_info":"0","cent":"0","en_cent":"0","remo":"2"}

Node Info

Version: 1.2.0
Updated 2 months, 1 week ago
License: MIT
Rating: not yet rated

Categories

Actions

Downloads

36 in the last week

Nodes

  • daikin-server
  • daikin-api

Keywords

  • daikin
  • AC
  • HVAC
  • air
  • conditioner
  • BRP15B61
  • node-red

Maintainers