Lennox Thermostat
homebridge-lennox · v0.1.2
Adds Lennox S30/S40/E30/M30 thermostats to HomeKit over the local network.
What it says it supports
Brands
- Lennox
Devices it names
- S30
- S40
- E30
- M30
Shows up in Apple Home as from its README
Sensor readings in its code
What people report
Local LAN control of Lennox S30/S40 thermostats; remote room sensors not exposed and setpoint writes unreliable.
- Partly works1
- Requested1
| Device | Status | What they said | Source |
|---|---|---|---|
| Armstrong Air Comfort Sync A3 (Lennox S30) | Partly works | Reads work; setpoint writes from Home mostly lostSaved copyPatch with suggested fixes: homebridge-lennox-setpoints.patch Test Scenario Plugin: homebridge-lennox 0.1.2 / lennoxapi 0.1.2 Thermostat: Armstrong Air Comfort Sync A3 (rebadged Lennox S30, reports `productType: S30`), firmware 3.95.146, local connection Homebridge: child bridge, Node 22 Reading state works perfectly. Writing setpoints from the Home app mostly does not, for three separate reasons. I have a patch for all three (attached, tested against a mocked S30 and on my thermostat) and I'm happy to open a PR if you'd like it in that form. 1. Setpoints are ignored while the zone is … Excerpt saved from GitHub on 2026-10-22. | Issue #2 · 2026-09 |
| Lennox S40/S30 remote room sensors | Requested | Secondary room sensors not exposedSaved copyFirst off, thank you for building this and the underlying lennoxapi TypeScript library. Having local LAN control that bypasses the Lennox cloud is incredible. Currently, the plugin successfully pulls in the primary zones and maps them to HomeKit, but it does not expose the secondary/remote room sensors connected to the system. Since this API is a TypeScript port of Pete Rager’s Python lennoxs30api, the local S40/S30 payload is already providing this sensor data during the long-polling process, but it isn't being parsed or exposed as Service.TemperatureSensor and Service.HumiditySensor … Excerpt saved from GitHub on 2026-10-22. | Issue #1 · 2026-06 |
Gathered from the plugin’s GitHub issues, pull requests, discussions, wiki and docs, and from r/homebridge. These are individual reports, so check the linked thread and the date before you buy.
How it connects
Local
Direct LAN to thermostat, no cloud
You’ll need
- Thermostat IP address
Compatibility
| Verified by Homebridge | Yes |
|---|---|
| Homebridge versions | >=1.6.0 |
| Homebridge 2.0 | No |
| Node.js | ^20.0.0 || ^22.0.0 || ^24.0.0 |
| Settings in Homebridge UI | Yes |
| Matter | No |
| Platform name | Lennox |
| License | MIT |
Community signals
| Downloads a week | 3 |
|---|---|
| Downloads a month | 11 |
| GitHub stars | 0 |
| Open issues | 2 |
| Closed issues | 0 |
| Last code push | 2026-05-09 |
| Latest version | 0.1.2 (2025-12-21) |
| First published | 2025-12-21 |
| Releases | 3 |
In ReReHome
Whatever this plugin publishes reaches Apple Home as a normal HomeKit accessory behind your Homebridge bridge, so ReReHome shows and controls it like any other.
Bridges get their own settings page listing the accessories behind them.
HomeKit services in its code
Found by scanning the published npm package. A plugin can register a service only for some devices.
- Switch
- TemperatureSensor
- Thermostat
Sources
- npm: https://www.npmjs.com/package/homebridge-lennox
- Source code: https://github.com/lukealonso/homebridge-lennox
- Issues: https://github.com/lukealonso/homebridge-lennox/issues
- Verified plugins list: https://github.com/homebridge/verified

