Mastering Universal Control: Integrating Broadlink RF/IR Remotes with Home Assistant

0
0
  • #Home_Assistant
  • #Broadlink
  • #RF
  • #IR
  • #Smart_Home
  • #Integration
  • #Automation
Represent Mastering Universal Control: Integrating Broadlink RF/IR Remotes with Home Assistant article
3m read

Introduction

Broadlink universal remotes (like RM4 Pro, RM4 Mini) are essential for integrating older, "dumb" Infrared (IR) and Radio Frequency (RF) controlled devices (TVs, ACs, fans, RF blinds) into your Home Assistant smart home. They bridge the gap between traditional remote controls and modern automation. This guide covers integrating Broadlink remotes, learning commands, and automating your space for ultimate convenience.

Prerequisites & Initial Setup

Prerequisites:

  • An operational Home Assistant instance.
  • A Broadlink RM device (RM4 Pro for IR/RF, RM4 Mini for IR).
  • The official Broadlink "BroadLink" or "Intelligent Home Center" (IHC) mobile app for initial network setup.
  • A stable 2.4GHz Wi-Fi network (Broadlink devices typically don't support 5GHz).

Initial Device Setup:

  1. Plug in your Broadlink device (rapidly flashing blue LED = pairing mode).
  2. Use the Broadlink app to connect the device to your 2.4GHz Wi-Fi network.
  3. Once connected, the LED will be solid blue.
  4. Best Practice: Assign a static IP address to your Broadlink device via your router's DHCP reservation for consistent Home Assistant connectivity.

Home Assistant Integration

Home Assistant often auto-discovers Broadlink devices. If not, manual configuration is simple.

Automatic Discovery

Check "Settings > Devices & Services > Integrations." If discovered, click "Configure."

Manual Configuration

Add to your configuration.yaml:

broadlink:
  - host: 192.168.1.XX # Replace with Broadlink's IP
    mac: AA:BB:CC:DD:EE:FF # Optional, but good practice
    type: rm4_pro # Or rm4_mini, etc.
    name: Living Room Remote

Restart Home Assistant. A new Broadlink device and remote entity (e.g., remote.living_room_remote) will appear.

Learning IR/RF Codes

This is where you teach your Broadlink device commands from your original remotes.

Using the broadlink.learn Service

Go to "Developer Tools > Services." Select broadlink.learn. For "Target," choose your Broadlink remote entity (e.g., remote.living_room_remote). Click "Call Service."

Your Broadlink's LED will flash purple/orange. Point your original remote and press the button. If successful, the LED stops flashing, and Home Assistant provides a notification with the learned code (e.g., JgBIAJ0...).

Troubleshooting Learning:

  • No code: Check remote battery, point directly at Broadlink, try closer.
  • RF Learning: For RF, try pressing button multiple times or holding for duration. Broadlink primarily supports fixed-code RF; rolling codes are generally not compatible.

Storing Learned Codes:

Store codes in a dedicated YAML file, e.g., remotes.yaml. Include it in configuration.yaml:

# configuration.yaml
remote: !include remotes.yaml

Then, in remotes.yaml, define your remote entity and commands:

# remotes.yaml
  - platform: broadlink
    name: Living Room TV
    entity_id: remote.living_room_remote # Link to Broadlink device
    commands:
      power_on: "JgBIAJ0..." # Your learned IR code
      volume_up: "JgBIAJ0..."
  - platform: broadlink
    name: Living Room Blinds
    entity_id: remote.living_room_remote # Can use same Broadlink
    commands:
      blinds_open: "JgBIBJ4..." # Your learned RF code
      blinds_close: "JgBIBJ4..."

Restart Home Assistant after modifying remotes.yaml.

Sending IR/RF Codes

Use the remote.send_command service to send your stored codes.

Using remote.send_command

In "Developer Tools > Services," select remote.send_command. Choose the specific remote entity you defined (e.g., remote.living_room_tv). Enter the command name (e.g., power_on) in the "Command" field.

Example service call:

service: remote.send_command
target:
  entity_id: remote.living_room_tv
data:
  command: power_on

Send multiple commands with delays for complex sequences:

service: remote.send_command
target:
  entity_id: remote.living_room_tv
data:
  command:
    - power_on
    - delay: 1
    - volume_up

Best Practices for Reliability

  • Static IP: Assign a static IP to your Broadlink device via router DHCP.
  • Organize Codes: Use dedicated YAML files and descriptive command names.
  • Test Thoroughly: Verify learned codes immediately after learning and after configuration changes.
  • Automate: Group commands into Home Assistant scripts or scenes.
  • Add Delays: Use delay in sequences for multi-step commands (e.g., TV power then input).
  • RF Considerations:
    • IR Line of Sight: Ensure clear line of sight for IR devices.
    • RF Range: Place Broadlink centrally for optimal RF coverage.
    • Fixed Codes: Broadlink is best with fixed-code RF devices; rolling codes are usually unsupported.
  • Backup: Regularly back up your Home Assistant configuration, including remotes.yaml.

Advanced Use Cases & Conclusion

With Broadlink, possibilities are vast:

  • Voice Control: Expose remote entities or scripts to Google Assistant/Alexa.
  • Conditional Automations: Trigger commands based on sensor states or time.
  • Dashboard Integration: Create Lovelace buttons for easy control.

Broadlink RF/IR remotes are a powerful, cost-effective way to integrate legacy devices into Home Assistant. By mastering code learning and command sending, you achieve universal control, automate "dumb" appliances, and build a truly unified smart home. With careful setup and best practices, your Broadlink integration will be a reliable cornerstone, extending your smart home's reach beyond modern protocols.

Avatar picture of NGC 224
Written by:

NGC 224

Author bio:

There are no comments yet
loading...