ecobee
localby ALYT
What it adds to a house
Section titled “What it adds to a house”adds thermostats and sensors.
How a person connects it
Section titled “How a person connects it”Method: pair. Enable HomeKit on the thermostat first (Main menu, Settings, HomeKit) and stay at its screen: when ALYT starts the pairing the thermostat shows a fresh code, which is asked for next. The thermostat must not already be paired to Apple Home.
| Field | Kind | Required |
|---|---|---|
Address on your network (address) | text | yes |
What it can look for
Section titled “What it can look for”Yes: “Look for the thermostat”.
What stops working when it is disconnected
Section titled “What stops working when it is disconnected”The things it brought stop answering until it is connected again.
The descriptor
Section titled “The descriptor”Connection fields are served for a program at /connectors/ecobee.json.
{ "source": "built-in", "visibility": "public", "listed": true, "version": "1.0.0", "docsUrl": "https://developers.alyt.com/connectors/ecobee", "kind": "ECOBEE", "logo": { "url": "/integrations/logos/ecobee.png", "color": "#000000", "ratio": 1, "background": "#154746", "inset": 0, "scale": 1 }, "name": "ecobee", "icon": "thermometer-sun", "connectivity": "local", "brings": [ "thermostat", "sensor" ], "connect": { "method": "pair", "help": "Enable HomeKit on the thermostat first (Main menu, Settings, HomeKit) and stay at its screen: when ALYT starts the pairing the thermostat shows a fresh code, which is asked for next. The thermostat must not already be paired to Apple Home.", "fields": [ { "key": "address", "label": "Address on your network", "kind": "text", "secret": false, "required": true, "placeholder": "192.168.1.224", "help": "The thermostat shows it under Settings, Wi-Fi. Needed because this network does not pass HomeKit's announcements to ALYT." } ] }, "discovery": { "verb": "Look for the thermostat" }, "disconnect": { "consequence": "{count} {things} stop answering until it is connected again." }, "author": { "kind": "alyt", "name": "ALYT", "url": "https://alyt.com" }}The guide
Section titled “The guide”The ecobee connector pairs with a thermostat on the local network and exposes that thermostat and its room sensors to ALYT. It uses HomeKit on the LAN, not an ecobee cloud account, so it can keep working during a cloud outage as long as the thermostat and network are available. After pairing, you can read the thermostat’s temperature, mode, fan state, and setpoint, plus sensor temperature, occupancy, humidity when present, and battery for room sensors. Control is limited to what HomeKit exposes here: setpoint, mode, and fan writes are available where the device supports them, but hold is not part of this connector.
Connecting
Section titled “Connecting”Pairing happens in two steps. First, the thermostat must have HomeKit enabled from its own screen: Main menu, Settings, HomeKit. Leave it on that screen and make sure it is not already paired to Apple Home. If Apple Home already owns it, remove it there first or ALYT cannot add it.
In ALYT, enter the thermostat’s network address. The thermostat shows this under Settings, Wi‑Fi, and the address is required because the local network does not pass HomeKit announcements to ALYT. ALYT then starts pairing and the thermostat shows a fresh code. Enter that code in the second step within five minutes. The code is typed once and is not kept; the pairing is what remains.
What it exposes
Section titled “What it exposes”A paired ecobee thermostat becomes a thermostat endpoint. It reports the current reading, the target setpoint, mode, and fan status when the device exposes them through HomeKit. In auto mode, the setpoint is handled as the midpoint between the two thresholds.
Each room sensor becomes a sensor endpoint. These sensors can report temperature and occupancy, and battery when the accessory provides it. The connector treats room sensors as household devices, so household permissions are narrower than staff permissions when you use the API.
What it cannot do
Section titled “What it cannot do”This connector does not use ecobee’s cloud API, so it does not need an ecobee account and does not depend on api.ecobee.com. It also does not add Apple Home after pairing. One ecobee thermostat belongs to one integration; a second thermostat needs a separate integration.
Hold is not supported through HomeKit here, so the thermostat returns to its own schedule after a change. If the thermostat exposes no fan service through HomeKit, fan control remains unavailable. A wrong setup code is rejected and the thermostat shows a new one for the next try.
Discovery and normal polling
Section titled “Discovery and normal polling”Discovery is “Look for the thermostat”: ALYT re-finds the accessory at the address where it was paired. If the thermostat moves or restarts, discovery probes the address again and reads the accessory list from there.
State updates use normal polling every 60 seconds. That poll reads the integration in one session and refreshes the thermostat and sensor values. Live sensor updates are also supported when the accessory grants the needed permissions; raw motion is used when the device exposes it, otherwise occupancy is used. If notification permissions are missing or the accessory rejects subscriptions, ALYT reports that in health checks.
What to check when it fails
Section titled “What to check when it fails”If pairing fails, check these first: HomeKit is enabled on the thermostat, the thermostat is not already paired to Apple Home, and the address you entered is the thermostat’s current network address. If ALYT cannot find the accessory, confirm the thermostat is still on the HomeKit screen and that the local network is reachable from the ALYT host.
If state stops updating, confirm the thermostat remains connected on the LAN. Local ecobee devices do not need cloud access, but they do need the network path to the thermostat. If a sensor disappears, check that the accessory is still paired and that the household can access it. If a control write is refused, verify that the requested value is inside the supported setpoint range and that the device actually exposes that control through HomeKit.