Broadlink RM Mini IR learning

Hi all,

I have the Broadlink RM Mini 3 which is getting detecting fine by HA, however I’ve been unable to get any IR codes I put into my yaml configuration to actually work.

When starting HA:

2018-04-29 10:38:27 ERROR (MainThread) [homeassistant.components.switch] Error while setting up platform broadlink
Traceback (most recent call last):
  File "/usr/local/lib/python3.5/dist-packages/homeassistant/helpers/entity_platform.py", line 82, in async_setup
    SLOW_SETUP_MAX_WAIT, loop=hass.loop)
  File "/usr/lib/python3.5/asyncio/tasks.py", line 400, in wait_for
    return fut.result()
  File "/usr/lib/python3.5/asyncio/futures.py", line 293, in result
    raise self._exception
  File "/usr/lib/python3.5/concurrent/futures/thread.py", line 55, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/local/lib/python3.5/dist-packages/homeassistant/components/switch/broadlink.py", line 158, in setup_platform
    device_config.get(CONF_COMMAND_OFF)
  File "/usr/local/lib/python3.5/dist-packages/homeassistant/components/switch/broadlink.py", line 194, in __init__
    self._command_off = b64decode(command_off) if command_off else None
  File "/usr/lib/python3.5/base64.py", line 88, in b64decode
    return binascii.a2b_base64(s)
binascii.Error: Incorrect padding
2018-04-29 10:38:27 INFO (MainThread) [homeassistant.core] Bus:Handling <Event system_log_event[L]: exception=Traceback (most recent call last):
  File "/usr/local/lib/python3.5/dist-packages/homeassistant/helpers/entity_platform.py", line 82, in async_setup
    SLOW_SETUP_MAX_WAIT, loop=hass.loop)
  File "/usr/lib/python3.5/asyncio/tasks.py", line 400, in wait_for
    return fut.result()
  File "/usr/lib/python3.5/asyncio/futures.py", line 293, in result
    raise self._exception
  File "/usr/lib/python3.5/concurrent/futures/thread.py", line 55, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/local/lib/python3.5/dist-packages/homeassistant/components/switch/broadlink.py", line 158, in setup_platform
    device_config.get(CONF_COMMAND_OFF)
  File "/usr/local/lib/python3.5/dist-packages/homeassistant/components/switch/broadlink.py", line 194, in __init__
    self._command_off = b64decode(command_off) if command_off else None
  File "/usr/lib/python3.5/base64.py", line 88, in b64decode
    return binascii.a2b_base64(s)
binascii.Error: Incorrect padding
, message=Error while setting up platform broadlink, source=components/switch/broadlink.py, level=ERROR, timestamp=1524998307.006397>

My Broadlink config in configuration.yaml:

switch:
  - platform: broadlink
    host: 192.168.1.58
    mac: '34:EA:....'
    friendly_name: "RM3 mini"
    type: rm_mini
    update_interval: 60
    switches:
      ac_daikin:
        command_on:  "JgBQAhANDw0PDRANEAsQAANCdDgQKRANDw0PDRApEA0QDA8NEA0QKRANDyoPKg8NECkQKRAqDyoQKRANEAwPKw8MEA0QDQ8MEA0QDQ8NDw0QDQ8NECkQDBApEA0QDQ8NDyoPKw8MEA0QDQ8MEA0QDQ8MEA0QDQ8NDw0QDQ8NEAwQDQ8NECkQKg8qEAwPKw8MECoPKhAABHp0OBApEA0QDQ8MECoPDRANEAwPDRApEA0QKRAqDw0PKg8rDyoPKg8qDw0QDRApEA0PDBANEA0PDQ8NEA0PDQ8NEA0PDRApEAwQDQ8NEA0PKg8NEA0PDRApECoPDBANECkQDRApEA0PKg8qDw0QDQ8NDw0QKRANDyoQKRANECkQDBApEAAEe3Q3ECoPDRANEAwPKw8MEA0QDQ8MECoPDRApECoPDRAqDyoQKRApECoPDBANECkQDQ8NDw0QDQ8NEAwQDQ8NEA0PDQ8NEA0QDA8NEA0QDA8NEA0PDQ8NEA0PKhANDwwQKRANEA0QKRApECkQDQ8qDw0QDQ8NEAwQDQ8NEA0PDQ8NEA0PDQ8NEA0QDA8qECkQDQ8NEA0PDQ8NEA0QDA8NEA0QDA8NEA0QDA8NEA0PDRAMEA0PDRAqDyoQDA8NEA0PDRAMEA0PDRANDw0PDRAqDyoQDBAMEA0PDRAMEA0PDRANDw0PDRANEAwPDRANEA0ODRANECkQDQ8MEA0QDQ8MECoPKhAMEA0QDQ8MEA0QDQ8MEA0QDQ8NDw0QDQ8NEAwQDQ8NECkQKg8qECkQKRAMECkQKRAADQUAAAAAAAAAAA=="
        command_off: "JgBQAhANDw0PDRANEAsQAANCdDgQKRANDwwQDRApEA0QDA8NEA0QKRANDyoPKg8NECkQKRAqDyoQKRANDw0PKw4NEA0QDQ8MEA0QDQ8NDw0QDBANECkQDBApEA0QDQ8NDyoPKw4NEA0QDQ8MEA0QDQ8MEA0QDQ8NDw0QDBANEAwQDBANECkQKRAqDw0PKw4NECoPKhAABHp0OBApEA0QDQ8MECoPDRANEAsQDRApEA0QKRAqDw0PKg8rDyoPKg8qDw0QDQ8qEA0PDBANEAwQDQ8NEAwQDQ8NEAwQDRApEAwQDQ8NEA0PKg8NEAwQKg8qECkQDRALECoQDBAqDw0QKg8qDw0PDRANDw0PKg8rDyoPKg8NECkQDRApEAAEe3Q3ECoPDRAMDw4PKhAMDw4ODg8NDysPDRApECoQCxAqECkQKRApECoQDBANECkQDA8ODg4PDg4ODw0QDQ8MDw4PDg8NDg4PDg8NEAwPDg8NDw4ODg8NDw4OKw8NEAwPKw8NEAwQKRApECoPDRAqDw0QDQ4ODg4PDg8MDw4PDg8NDg4PDg8NDg4PDg8qECkQDQ8MDw4PDg8NDg4PDg8NDw0PDg8NDw4ODg8NDw4ODg4ODw4PDQ4rDyoQDQ8NDw4ODg8NDw4PDQ4ODw4PDQ4sDisPDQ8NDw4PDQ4ODw4PDQ4ODw4PDQ4ODw4PDQ8NDw4PDQ8ODisPDQ8ODg4PDQ8ODisPKhANDwwPDg8ODg4ODg8ODg4PDQ8NDw4PDg4NDw4PDg8MDysPKhApECkQKg8NECkQKg8ADQUAAAAAAAAAAA=="
  - platform: broadlink
    host: 192.168.1.32
    mac: '34:EA...'
    friendly_name: "Matt's Desk Light"
    type: sp3
    update_interval: 60
  - platform: broadlink
    host: 192.168.1.26
    mac: '34:EA....'
    type: sp3
    friendly_name: "Matt's Bed Lamp"
    update_interval: 60
  - platform: broadlink
    host: 192.168.1.25
    mac: '34:e..... '
    type: sp3
    friendly_name: "Plug#3"
    update_interval: 60

Those IR codes are exactly what I get from the HA logs:

2018-04-29 10:37:07 INFO (MainThread) [homeassistant.core] Bus:Handling <Event call_service[L]: service_call_id=1975829520-10, service_data=, domain=switch, service=broadlink_learn_command_192_168_1_58>
2018-04-29 10:37:07 INFO (MainThread) [homeassistant.components.switch.broadlink] Press the key you want Home Assistant to learn
2018-04-29 10:37:11 INFO (MainThread) [homeassistant.components.switch.broadlink] Received packet is: JgBQAhANDw0PDRANEAsQAANCdDgQKRANDwwQDRApEA0QDA8NEA0QKRANDyoPKg8NECkQKRAqDyoQKRANDw0PKw4NEA0QDQ8MEA0QDQ8NDw0QDBANECkQDBApEA0QDQ8NDyoPKw4NEA0QDQ8MEA0QDQ8MEA0QDQ8NDw0QDBANEAwQDBANECkQKRAqDw0PKw4NECoPKhAABHp0OBApEA0QDQ8MECoPDRANEAsQDRApEA0QKRAqDw0PKg8rDyoPKg8qDw0QDQ8qEA0PDBANEAwQDQ8NEAwQDQ8NEAwQDRApEAwQDQ8NEA0PKg8NEAwQKg8qECkQDRALECoQDBAqDw0QKg8qDw0PDRANDw0PKg8rDyoPKg8NECkQDRApEAAEe3Q3ECoPDRAMDw4PKhAMDw4ODg8NDysPDRApECoQCxAqECkQKRApECoQDBANECkQDA8ODg4PDg4ODw0QDQ8MDw4PDg8NDg4PDg8NEAwPDg8NDw4ODg8NDw4OKw8NEAwPKw8NEAwQKRApECoPDRAqDw0QDQ4ODg4PDg8MDw4PDg8NDg4PDg8NDg4PDg8qECkQDQ8MDw4PDg8NDg4PDg8NDw0PDg8NDw4ODg8NDw4ODg4ODw4PDQ4rDyoQDQ8NDw4ODg8NDw4PDQ4ODw4PDQ4sDisPDQ8NDw4PDQ4ODw4PDQ4ODw4PDQ4ODw4PDQ8NDw4PDQ8ODisPDQ8ODg4PDQ8ODisPKhANDwwPDg8ODg4ODg8ODg4PDQ8NDw4PDg4NDw4PDg8MDysPKhApECkQKg8NECkQKg8ADQUAAAAAAAAAAA==
2018-04-29 10:37:11 INFO (MainThread) [homeassistant.core] Bus:Handling <Event service_executed[L]: service_call_id=1975829520-10>
2018-04-29 10:37:11 INFO (MainThread) [homeassistant.core] Bus:Handling <Event call_service[L]: service_call_id=1975829520-11, service_data=message=Received packet is: JgBQAhANDw0PDRANEAsQAANCdDgQKRANDwwQDRApEA0QDA8NEA0QKRANDyoPKg8NECkQKRAqDyoQKRANDw0PKw4NEA0QDQ8MEA0QDQ8NDw0QDBANECkQDBApEA0QDQ8NDyoPKw4NEA0QDQ8MEA0QDQ8MEA0QDQ8NDw0QDBANEAwQDBANECkQKRAqDw0PKw4NECoPKhAABHp0OBApEA0QDQ8MECoPDRANEAsQDRApEA0QKRAqDw0PKg8rDyoPKg8qDw0QDQ8qEA0PDBANEAwQDQ8NEAwQDQ8NEAwQDRApEAwQDQ8NEA0PKg8NEAwQKg8qECkQDRALECoQDBAqDw0QKg8qDw0PDRANDw0PKg8rDyoPKg8NECkQDRApEAAEe3Q3ECoPDRAMDw4PKhAMDw4ODg8NDysPDRApECoQCxAqECkQKRApECoQDBANECkQDA8ODg4PDg4ODw0QDQ8MDw4PDg8NDg4PDg8NEAwPDg8NDw4ODg8NDw4OKw8NEAwPKw8NEAwQKRApECoPDRAqDw0QDQ4ODg4PDg8MDw4PDg8NDg4PDg8NDg4PDg8qECkQDQ8MDw4PDg8NDg4PDg8NDw0PDg8NDw4ODg8NDw4ODg4ODw4PDQ4rDyoQDQ8NDw4ODg8NDw4PDQ4ODw4PDQ4sDisPDQ8NDw4PDQ4ODw4PDQ4ODw4PDQ4ODw4PDQ8NDw4PDQ8ODisPDQ8ODg4PDQ8ODisPKhANDwwPDg8ODg4ODg8ODg4PDQ8NDw4PDg4NDw4PDg8MDysPKhApECkQKg8NECkQKg8ADQUAAAAAAAAAAA==, title=Broadlink switch, domain=persistent_notification, service=create>
2018-04-29 10:37:11 INFO (MainThread) [homeassistant.core] Bus:Handling <Event state_changed[L]: entity_id=persistent_notification.notification_2, old_state=None, new_state=<state persistent_notification.notification_2=notifying; message=Received packet is: JgBQAhANDw0PDRANEAsQAANCdDgQKRANDwwQDRApEA0QDA8NEA0QKRANDyoPKg8NECkQKRAqDyoQKRANDw0PKw4NEA0QDQ8MEA0QDQ8NDw0QDBANECkQDBApEA0QDQ8NDyoPKw4NEA0QDQ8MEA0QDQ8MEA0QDQ8NDw0QDBANEAwQDBANECkQKRAqDw0PKw4NECoPKhAABHp0OBApEA0QDQ8MECoPDRANEAsQDRApEA0QKRAqDw0PKg8rDyoPKg8qDw0QDQ8qEA0PDBANEAwQDQ8NEAwQDQ8NEAwQDRApEAwQDQ8NEA0PKg8NEAwQKg8qECkQDRALECoQDBAqDw0QKg8qDw0PDRANDw0PKg8rDyoPKg8NECkQDRApEAAEe3Q3ECoPDRAMDw4PKhAMDw4ODg8NDysPDRApECoQCxAqECkQKRApECoQDBANECkQDA8ODg4PDg4ODw0QDQ8MDw4PDg8NDg4PDg8NEAwPDg8NDw4ODg8NDw4OKw8NEAwPKw8NEAwQKRApECoPDRAqDw0QDQ4ODg4PDg8MDw4PDg8NDg4PDg8NDg4PDg8qECkQDQ8MDw4PDg8NDg4PDg8NDw0PDg8NDw4ODg8NDw4ODg4ODw4PDQ4rDyoQDQ8NDw4ODg8NDw4PDQ4ODw4PDQ4sDisPDQ8NDw4PDQ4ODw4PDQ4ODw4PDQ4ODw4PDQ8NDw4PDQ8ODisPDQ8ODg4PDQ8ODisPKhANDwwPDg8ODg4ODg8ODg4PDQ8NDw4PDg4NDw4PDg8MDysPKhApECkQKg8NECkQKg8ADQUAAAAAAAAAAA==, title=Broadlink switch @ 2018-04-29T22:37:11.226517+12:00>>
2018-04-29 10:37:11 INFO (MainThread) [homeassistant.core] Bus:Handling <Event service_executed[L]: service_call_id=1975829520-11>

And I’m learning by calling the service here:

image

Any thoughts on why I can’t get this to work?

Thanks!

Matt

the length of the code should be a multiple of 4 use = at the end to make it up

Thanks, but those codes above already have == on the end making them a length of 808 each…

Or am I doing something stupid?

Edit: Hmm ok I don’t know what I’ve done but I’ve possibly solved my problem…

Perhaps after trying to relearn the IR codes and re-adding the codes into HA may have helped. I’ve also upgraded my HA from 0.66 to 0.68.1 which may have also helped.

Strangely my aircon is now responding to the commands being sent, but not actually turning off or on…Next problem to solve. :-/

How did you get the Infrared Code? Via the app?