Control your Broadlink AC unit through Homebridge.
If you find this plugin helpful, consider supporting its development:
See CHANGELOG.md for release notes.
- Auto-discovery: Automatically finds and adds all AUX AC units in your account
- Cloud-based control: Works with any AUX AC unit that's connected to the AUX Cloud service
- Real-time updates: A supervised websocket connection to the AUX/BroadLink relay delivers device state pushes and carries commands for near-instant control, with automatic HTTP fallback
- Full HomeKit integration: Control power, temperature, mode, fan speed, and swing
- Device management: Hide specific devices using device IDs or friendly names
- Automatic reconnection: Handles session expiry and network issues
- Node.js 18.0.0 or later
- Homebridge 1.6.0 or later
- An AUX AC unit connected to the AUX Cloud service
- AUX Cloud account (AC Freedom app account)
npm install -g homebridge-broadlink-cloud-acOr install through the Homebridge UI.
Recommended: Use the platform configuration to automatically discover all your AUX Cloud devices:
{
"platform": "AuxCloudPlatform",
"name": "AUX Cloud",
"email": "your@email.com",
"password": "your_password",
"region": "eu"
}The package ships a discovery helper that lists every device in your account with its endpoint ID:
# from a source checkout
node discover-devices.js your@email.com your_password eu
# or from an installed plugin directory
node node_modules/homebridge-broadlink-cloud-ac/discover-devices.js your@email.com your_password euYou can also read the endpoint IDs from the Homebridge startup logs, where every discovered device is logged with its name and endpoint ID.
| Option | Type | Required | Default | Description |
|---|---|---|---|---|
name |
string | Yes | "AUX Cloud" | Name for the platform |
email |
string | Yes | - | Your AUX Cloud account email |
password |
string | Yes | - | Your AUX Cloud account password |
region |
string | No | "eu" | Your AUX Cloud region ("eu", "usa", or "cn") |
hiddenDevices |
string[] | No | [] | List of device IDs to hide from HomeKit |
discoveryInterval |
number | No | 0 | Re-discovery interval in minutes (0 = disabled) |
All devices in the account are discovered automatically; there is no autoDiscover toggle.
Manual per-accessory configuration ("accessory": "AirCondionerAccessory") is not supported —
this plugin registers a platform only.
With the platform configuration, you can hide specific devices from HomeKit by adding their device IDs to the hiddenDevices array:
{
"platform": "AuxCloudPlatform",
"name": "AUX Cloud",
"email": "your@email.com",
"password": "your_password",
"region": "eu",
"hiddenDevices": [
"device_endpoint_id_1",
"Bedroom AC",
"device_endpoint_id_3"
]
}You can use either:
- Device endpoint ID: The unique identifier (e.g., "1a2b3c4d-5e6f-7g8h-9i0j-1k2l3m4n5o6p")
- Friendly name: The device name as shown in the AC Freedom app (e.g., "Bedroom AC")
- eu: Europe -
https://app-service-deu-f0e9ebbb.smarthomecs.de - usa: United States -
https://app-service-usa-fd7cc04c.smarthomecs.com - cn: China -
https://app-service-chn-31a93883.ibroadlink.com
- Power: On/Off control
- Mode: Auto, Cool, Heat
- Temperature: 16-32°C
- Fan Speed: HomeKit's native AC Fan speed control
- Swing: HomeKit's native fan oscilation control
- Ensure your email and password are correct
- Make sure you're using the correct region
- Try logging out and back in to the AC Freedom app
- The plugin will automatically attempt to reconnect on errors
- Check your internet connection
- Verify the AUX Cloud service is accessible
On startup the plugin opens a single websocket connection to the AUX/BroadLink relay:
- Device state changes are pushed to HomeKit as they happen instead of waiting for the next poll.
- Commands are sent over the websocket for faster response.
- If the websocket is unavailable or a command is rejected, the plugin automatically falls back to the HTTP API and polls every 10 seconds until the relay is healthy again.
- While the websocket is connected, a full HTTP refresh still runs every 10 minutes as a safety net.
Websocket messages are logged at the debug level, and connection state changes are logged at the
info/warn level, so you can follow the relay health in the Homebridge logs.