lprhodes / homebridge-broadlink-rm

Broadlink RM Mini and Pro plugin for homebridge: https://github.com/nfarina/homebridge
Apache License 2.0
573 stars 285 forks source link

ideas for A/C json #73

Closed kapps7 closed 7 years ago

kapps7 commented 7 years ago

Hey guys, I am looking at using this specifically for the Daikin a/c. Not exactly sure how I want to configure these...perhaps just a simple method to set temp for cooling and heating. Interested in what examples people have used in their json....

Thanks for ideas.

lprhodes commented 7 years ago

I personally use the following:

{
  "name": "Air Conditioner",
  "type": "air-conditioner",
  "minTemperature": 16,
  "autoHeatTemperature": 21,
  "autoCoolTemperature": 28,
  "autoMinimumDuration": 300,
  "data": {
    "off": "2600640160000..."
    "temperature30": {
      "pseudo-mode": "heat",
      "data": "2600640160000..."
    },
    "temperature16": {
      "pseudo-mode": "cool",
      "data": "2600680110000"
    }
  }
}
kapps7 commented 7 years ago

Luke thanks for this. To replicate this functionality from what I understand is that I need to scan the hex codes for 3 functions.

  1. Autocool 2. Autoheat & 3. Off

Do I need to use the broad link app at all or should I be able to find the appropriate buttons directly on the a/c remote. Thanks (hardly ever need the a/c unit in Sydney ;) )

Edit: After referring to your notes regarding replacing autcool mode, are they simply the direct scans for a temperature setting to 30 C on heat, 16 C on cool, and Off.

kapps7 commented 7 years ago

So I have made some progress. This is my json

"platform":"BroadlinkRM", "name":"Broadlink RM", "host":"10.0.1.20", "accessories":[ { "name": "Air Conditioner", "type": "air-conditioner", "minTemperature": 10, "defaultHeatTemperature": 26, "defaultCoolTemperature": 18, "autoMinimumDuration": 300, "data": { "off": "260050020a12......", "temperature27": { "pseudo-mode": "heat", "data": "260050020e......." }, "temperature20": { "pseudo-mode": "cool", "data": "260050020......" } } } ] },

  1. But I am getting the following error when I request an arbitrary temp (21) even though I have setup the defaults.
  2. Secondly, don't quite understand when I am setting a temperature, how do I know whether to set it as cool/heat or auto.

Potential Air Conditioner sendTemperature (21) setCharacteristicValue err Error: Air Conditioner You need to set the defaultHeatTemperature and defaultCoolTemperature or provide a hex code for the given mode/temperature: ({ "temperature21": { "data": "HEXCODE", "pseudo-mode" : "auto/heat/cool" } }) or at the very least, the default mode/temperature ({ "temperature18": { "data": "HEXCODE", "pseudo-mode" : "auto/heat/cool" } }) at AirConAccessory.sendTemperature (/usr/local/lib/node_modules/homebridge-broadlink-rm/accessories/aircon.js:222:15) at AirConAccessory.setTargetTemperature (/usr/local/lib/node_modules/homebridge-broadlink-rm/accessories/aircon.js:375:10) at AirConAccessory.setCharacteristicValue (/usr/local/lib/node_modules/homebridge-broadlink-rm/accessories/accessory.js:113:15) at emitMany (events.js:127:13) at Characteristic.TargetTemperature.emit (events.js:204:7) at Characteristic.TargetTemperature.Characteristic.setValue (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Characteristic.js:164:10) at Bridge. (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Accessory.js:756:22) at Array.forEach (native) at Bridge.Accessory._handleSetCharacteristics (/usr/local/lib/node_modules/homebridge/node_modules/hap-nodejs/lib/Accessory.js:701:8) at emitMany (events.js:127:13) at HAPServer.emit (events.js:204:7)

kapps7 commented 7 years ago

I think there is enough coverage here https://github.com/lprhodes/homebridge-broadlink-rm/issues/27 to resolve my stuff. Thanks

rickdhoy commented 4 years ago

Hi Kapps7

Just wondering if you ever solved this. I also have a daikin airconditioner I am trying to get working by I keep getting errors.

Would you have time to give me some pointers if you did in deed get this working ?

Thanks Rick

my JSON working json config below.

{ "bridge": { "name": "Homebridge D28F", "username": "0E:8A:DE:39:D2:8F", "port": 51783, "pin": "351-54-941" }, "accessories": [ { "accessory": "DelaySwitch", "name": "Delay Switch Gym", "disableSensor": false, "delay": 600000 } ], "platforms": [ { "name": "Config", "port": 8581, "platform": "config", "sudo": true, "log": { "method": "native", "path": "/var/lib/homebridge/homebridge.log" }, "sessionTimeout": 28800 }, { "name": "Hue", "anyOn": true, "heartrate": 2, "hosts": [ "192.168.1.45" ], "users": { "ECB5FAFFFE0245E7": "FPYxb9S5ewcTijAFFnsxjHyfe0k2Kbl9jDPtKIMo" }, "lights": true, "nativeHomeKitLights": true, "nativeHomeKitSensors": false, "nupnp": true, "resource": true, "sensors": true, "wallSwitch": false, "platform": "Hue" }, { { "bridge": { "name": "Homebridge D28F", "username": "0E:8A:DE:39:D2:8F", "port": 51783, "pin": "351-54-941" }, "accessories": [ { "accessory": "DelaySwitch", "name": "Delay Switch Gym", "disableSensor": false, "delay": 600000 } ], "platforms": [ { "name": "Config", "port": 8581, "platform": "config", "sudo": true, "log": { "method": "native", "path": "/var/lib/homebridge/homebridge.log" }, "sessionTimeout": 28800 }, { "name": "Hue", "anyOn": true, "heartrate": 2, "hosts": [ "192.168.1.45" ], "users": { "ECB5FAFFFE0245E7": "FPYxb9S5ewcTijAFFnsxjHyfe0k2Kbl9jDPtKIMo" }, "lights": true, "nativeHomeKitLights": true, "nativeHomeKitSensors": false, "nupnp": true, "resource": true, "sensors": true, "wallSwitch": false, "platform": "Hue" }, { "platform":"BroadlinkRM", "name":"Broadlink RM", "accessories":[ { "name": "Air Conditioner", "type": "air-conditioner", "replaceAutoMode": "cool", "defaultCoolTemperature": 18, "pseudoDeviceTemperature": 21, "minTemperature": 15, "maxTemperature": 24,
"data": { "off": "2600160...", "temperature16": { "pseudo-mode": "cool", "data": "2600160..." }, "temperature17": { "pseudo-mode": "cool", "data": "2600160..." }, "temperature18": { "pseudo-mode": "cool", "data": "2600160..." }, "temperature19": { "pseudo-mode": "cool", "data": "2600160..." }, "temperature20": { "pseudo-mode": "cool", "data": "2600160..." }, "temperature21": { "pseudo-mode": "cool", "data": "2600160..." }, "temperature22": { "pseudo-mode": "cool", "data": "2600160..." }, "temperature23": { "pseudo-mode": "cool", "data": "2600160..." }, "temperature24": { "pseudo-mode": "cool", "data": "2600160..." } ] }