homebridge-somfy-tahoma
v1.0.1
Published
Homebridge plugin for interacting with the Somfy TaHoma box through its local API.
Maintainers
Readme
Homebridge Somfy TaHoma
Control your Somfy TaHoma gateway locally from Homebridge and expose supported devices to Apple Home.
Important note
This plugin is based on Somfy local API access (Developer Mode).
Homebridge must run on the same local network as your TaHoma gateway.
Good news: once local access is configured, device control stays local.
Why this plugin?
This plugin talks directly to your TaHoma box on your local network.
- No cloud dependency for normal control
- Fast local updates in HomeKit
- Guided setup from the Homebridge UI
- Automatic discovery of compatible TaHoma gateways
Compatibility
Current v1 support:
| Device type | HomeKit service | Status |
| --- | --- | --- |
| IO/HomeControl roller shutters | WindowCovering | ✅ Supported |
| IO/HomeControl garage doors | GarageDoorOpener | ✅ Supported |
| Other TaHoma device families | N/A | 🚫 Not supported yet |
Prerequisites
- Homebridge
^1.8.0or^2.0.0-beta.0 - Node.js
^20.18.0or^22.10.0or^24.0.0 - A Somfy TaHoma gateway on the same local network as Homebridge
- Developer Mode enabled on the gateway
- A valid TaHoma developer token
Quick Start
- Install this plugin from the Homebridge UI.
- Open plugin settings for
Somfy TaHoma. - Enable Developer Mode in the TaHoma app (tap gateway PIN 7 times).
- Generate a developer token in the app and copy it.
- In the setup wizard:
- Discover your gateway (or enter host/IP manually)
- Paste the token
- Validate connection
- Optionally ignore specific devices
- Save configuration and restart Homebridge if requested.
Configuration
Minimal config.json platform block:
{
"platform": "SomfyTaHoma",
"name": "Somfy TaHoma",
"ip": "192.168.1.100",
"token": "paste-token-generated-in-tahoma-app",
"pollIntervalSeconds": 3,
"ignoredDeviceUrls": []
}Notes:
ipaccepts IP, hostname, or HTTPS host format.- Default gateway port is
8443. pollIntervalSecondsis optional and controls sync frequency (integer1..60, default3).ignoredDeviceUrlskeeps selected devices out of HomeKit.
What happens at runtime?
- The plugin syncs devices using
pollIntervalSeconds(default: 3 seconds). - New supported devices are added automatically.
- Removed devices are cleaned from Homebridge cache.
- Unsupported devices are skipped (debug logs explain why).
Security
- Local API calls use HTTPS.
- TLS is validated with Somfy/Overkiz CA roots.
- If needed, the plugin retries with peer certificate fingerprint pinning.
Troubleshooting
If nothing appears in HomeKit:
- Verify Homebridge and TaHoma are on the same LAN.
- Re-check Developer Mode is enabled.
- Regenerate a token and paste it again.
- Use the wizard validation step and review unsupported devices.
- Enable Homebridge debug logs to see classification and API errors.
Disclaimer
[!CAUTION] This software is provided as-is. It can control real devices (doors, shutters). Use it carefully.
Development
npm install
npm run lint
npm run build
npm run watchnpm run watchbuilds, links the plugin, and runs a development loop with automatic restarts.
License
Apache-2.0
