homebridge-smartlight-ac
v0.1.14
Published
Homebridge plugin for Smartlight SLWF-01pro ESPHome AC controllers
Maintainers
Readme
homebridge-smartlight-ac
Homebridge plugin for the Smartlight SLWF-01pro WiFi controller. Exposes Midea-family mini-split air conditioners (Mr. Cool, Pioneer, etc.) to Apple HomeKit as a HeaterCooler accessory.
Communicates with the device over the ESPHome native API — no cloud, no MQTT, fully local.
Features
- Heat, cool, and auto modes
- Target temperature control
- Fan speed (auto / low / medium / high)
- Swing mode on/off
- Real-time state updates from the device
- Auto-reconnect on disconnect
- Compatible with Homebridge v1.8+ and v2
Installation
From npm (recommended)
Search for homebridge-smartlight-ac in the Homebridge UI, or:
npm install -g homebridge-smartlight-acFrom GitHub
npm install -g git+https://github.com/rowofpixels/homebridge-smartlight-ac.gitConfiguration
Add the platform to your Homebridge config.json:
{
"platforms": [
{
"name": "SmartlightAC",
"platform": "SmartlightAC",
"devices": [
{
"name": "Mr. Cool",
"host": "air-conditioner-4ed907",
"port": 6053
}
]
}
]
}Or configure via the Homebridge UI settings page.
| Field | Required | Default | Description |
|-------|----------|---------|-------------|
| name | yes | | Display name for the accessory |
| host | yes | | IP address or hostname of the SLWF-01pro |
| port | no | 6053 | ESPHome native API port |
| password | no | | API password, if configured on the device |
| encryptionKey | no | | API encryption key (base64), if configured |
Development
npm install
npm run build
npm run watch # rebuilds + restarts homebridge on file changesThe watch script uses an isolated config at ./test/hbConfig/config.json so it won't affect a production Homebridge instance.
Releasing
With Claude Code installed:
/release patch # or minor / majorThis runs lint, build, and tests, bumps the version, pushes to GitHub, and creates a release with user-facing notes that appear in the Homebridge UI. The GitHub Release triggers the publish workflow, which pushes to npm.
License
ISC
