Broadlink IR Climate Component

You can actually change the state using an api call so it is “supported”, in a way.

Mind to share how to do that?

It’s in the link about 4 posts above. I can change it with the web gui , but haven’t figured out how to write that into an api call in an automation yet. (I’m waiting for an expert to help).

I’m no expert, but I will install the open/close sensor soon and try to figure it out… Even if it’s not integrated into the custom component, it is still useful to have separately.

I got started on this the command is gonna be something like this:

(I shortened the attributes list to make the example code smaller).

Configuration.yaml

rest_command:
  set_climate_state_idle:
    method: POST
    url: 'https://xxxxxx.duckdns.org:8123/api/states/climate.panasonic_aircon'
    password: 'xxxxxx'
    content_type: application/json
    payload: '{
    "state": "idle",
    "attributes": {
        "fan_mode": "auto",
        "operation_mode": "idle"
        }
    }'

Automation.yaml

- alias: set climate state to idle when aircon turns off
  trigger:
    - platform: state
      entity_id: binary_sensor.door_window_sensor_158d0001f38b1f
      from: 'on'
      to: 'off'
  condition:
    - condition: template
      value_template: "{{ not is_state('climate.panasonic_aircon', 'idle') }}"     
  action:
    - service: rest_command.set_climate_state_idle

unfortunately there are some syntax errors in the rest_command, and I haven’t figured it out.

@masterkenobi - you can use this as it works.

OK i managed to use the door sensor to ‘update’ the broadlink climate control. I had to make an extra mode called ‘on’ in the configuration.yaml and the panasonic_ir_code.ini. The ini file for the IR codes had to have a lot of dummy entries for the new operation mode. Note this setup uses ‘off’ rather than ‘idle’.

This is obviously not the ideal way to do this, so if anyone can figure out how to update the climate entity state and attributes without actually calling the climate service, then this would be ideal (see above post, on how far i got trying to figure it out). If you can use the restful api call then you don’t have to add the dummy codes to the ini file. I tried to get some help here as well - Help with home assistant api call

What it does:

  1. If your airconditioner is turned on using the original remote (regardless of whether it is cool or hot or fan mode), then the climate control will change to ‘on’.
  2. If your airconditioner is turned to off using the original remote, then the climate control will change to ‘off’

Configration.yaml

climate:
  - platform: broadlink
    name: Panasonic Aircon
    host: 192.168.178.81
    mac: '34:EA:34:58:AA:65'
    ircodes_ini: 'broadlink_media_codes/panasonic_CS-RE_GKE.ini'
    min_temp: 16
    max_temp: 30
    target_temp: 20
    temp_sensor: sensor.temperature_158d0001f52edb
    default_operation: idle
    default_fan_mode: mid
    customize:
      operations:
        - 'off'
        - cool
        - heat
        - 'on'
      fan_modes:
        - low
        - mid
        - high
        - auto 

Automation.yaml

- alias: 'Update AC to off if turned off on the remote control'
  trigger:
    - platform: state
      entity_id: binary_sensor.door_window_sensor_158d0001fd55d5
      from: 'on'
      to: 'off'
      for:
        seconds: 1
  condition:
    - condition: template
      value_template: "{{ not is_state('climate.panasonic_aircon', 'off') }}"     
  action:
    service: climate.set_operation_mode
    entity_id: climate.panasonic_aircon
    data:
      operation_mode: 'off'
      
- alias: 'Update AC to on if turned on with the remote control'
  trigger:
    - platform: state
      entity_id: binary_sensor.door_window_sensor_158d0001fd55d5
      from: 'off'
      to: 'on'
      for:
        seconds: 1
  condition:
    - condition: template
      value_template: "{{ is_state('climate.panasonic_aircon', 'off') }}"     
  action:
    service: climate.set_operation_mode
    entity_id: climate.panasonic_aircon
    data:
      operation_mode: 'on'

panasonic_ircodes.ini with dummy entries : https://pastebin.com/fL5jNULw
the hack wont work unless you add the dummy entries, otherwise you can’t set it to ‘on’ mode.

hi, can you share the .ini file of the haier air conditioner? thank you so much

hello, explain to me the steps to have all this on hass.io? thank you

@Vassilis,
Is there any way to get current state/status of devices attached to broadlink?
Please guide if theres any way,
Thanks in adv.

No, there is no way. If you read it, this thread above suggested to attach a wireless door/window sensor to the AC unit to know when it’s off or on. But temperature, there is no way.

This is a custom component. Read this to install it:

https://www.home-assistant.io/developers/component_loading/

I have it under HASSio, no issues.

I’ve put in a pull request to add the Carrier RG56V/BGEF. I think this also works with some Midea and Toshiba variants.

image

Searching Hitachi ac codes

Ive managed to get this set up with my Fujitsu split cycle, and Google Assistant can see it. Can people please share what voice commands should now work over Google Home to control this?

Thanks!

Hi everyone!!!
Can it use this with Google Home??
Can I command via GH to control the temp, fan, mode …

Thanks!

it seems the component is broken with the last update to 0.67.0

Yep. Seems broken for me too…

Hi. I’m planning to fix it today.

3 Likes

Just update to 0.67 and it works fine.
Could you provide an error log?

Not initializing climate.broadlink because could not install requirement https://github.com/balloob/python-broadlink/archive/3580ff2eaccd267846f14246d6ede6e30671f7c6.zip#broadlink==0.5.1
2018-04-14 23:07:03 ERROR (MainThread) [homeassistant.setup] Unable to prepare setup for platform climate.broadlink: Could not install all requirements.