I noticed in these threads that more than me is using Salus Thermostats.
Bounty to develop Salus device -
Get Help / Devices - Hubitat
Salus IT600 -
Get Help / Apps - Hubitat @alex9
After the Salus Premium Lite migration killed the old local API on my UGE600 gateway (firmware dated June 2025), I used Claude to build a working Hubitat integration that goes via the Salus cloud. Posting this in case anyone else is stuck.
Peterka35's excellent salus-it600-cloud project for Home Assistant showed that the Salus cloud API is still reachable and reverse-engineered. It uses:
- AWS Cognito SRP authentication with your Salus app email/password
- AWS IoT Core MQTT over WebSockets (SigV4 signed) for sending commands
- REST API at
service-api.eu.premium.salusconnect.iofor reading state - Device shadows for commands like setpoint changes
Since Hubitat's Groovy sandbox cannot practically implement SRP or AWS IoT MQTT directly, I wrote a tiny Node.js proxy that runs on a Windows PC on my LAN. The proxy handles all the AWS complexity and exposes a simple HTTP endpoint that a Hubitat driver can POST plain JSON to.
What it does
- Discovers all thermostats across all gateways on your Salus account
- Reads temperature, setpoint, humidity, battery, heating state, hold type, system mode
- Writes setpoint, hold type (schedule/manual/away), system mode
- One child thermostat per device in Hubitat — native thermostat tile
- Works across multiple gateways (I have two)
Constraints and tradeoffs
- Needs an always-on PC/Pi/NAS on your LAN to run Node.js — no way around this for Hubitat because Groovy cannot do SRP+MQTT in its sandbox
- Not local — it's going via AWS us-east-central-1 now. If Salus shuts the cloud, it stops working
- Credentials stored in plain text in the proxy config — set file permissions appropriately
- Limited to heat-only mode — I didn't implement cooling/fan-coil because I don't have those devices
Credits
- Peterka35 — reverse-engineered the cloud API protocol, massive heavy lifting on the Cognito and IoT flows
You can find the files and instructions here: