Package Exports
- iobroker.tado
- iobroker.tado/main.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (iobroker.tado) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
ioBroker.tado
tado adapter for ioBroker
Tado° (https://www.tado.com) is the expert in smart heating and energy management for your home, designed and developed in Germany. Save energy and cut costs for good with us – enjoy a cosy and sustainable home.
This adapter uses Sentry libraries to automatically report exceptions and code errors to the developers. For more details and for information how to disable the error reporting see Sentry-Plugin Documentation! Sentry reporting is used starting with js-controller 3.0.
!IMPORTANT! Tado° will introduce API call limits
Tado will introduce a limit on API calls. Users without an Auto-Assist subscription are restricted to 100 calls per day, with subsription to 20.000 calls.
For more information, please refer to this article.
A new feature has been added to the Tado ioBroker adapter, providing new configuration capabilities to manage API usage. Nevertheless, the daily limit of 100 calls means the adapter is unusable without an Auto-Assist subscription. This translates to only about four requests per hour, which significantly hinders the adapter’s functionality.
If you're not happy with Tado's decision, you should let them know!
Tado° X
Basic support for Tado° X available. If your setup is not working, please raise a ticket. You will need to support some debugging session and interact with the adapter developer to improve Tado° X features.
Things you can steer on Tado° V3+, V3, V2
| State | Description |
|---|---|
| tado.[x].[yyyyyy].Rooms.[z].setting.power | Turn device on/off |
| tado.[x].[yyyyyy].Rooms.[z].setting.temperature.celsius | Define temperature |
| tado.[x].[yyyyyy].Rooms.[z].overlayClearZone | Switch to automatic mode |
| tado.[x].[yyyyyy].Rooms.[z].overlay.termination.typeSkillBasedApp | Set time table mode |
| tado.[x].[yyyyyy].Rooms.[z].overlay.termination.durationInSeconds | Set how long the time table mode shall apply |
| tado.[x].[yyyyyy].Rooms.[z].devices.[RUaaaaaaaaaa].offset.offsetCelsius | Temperature offset |
| tado.[x].[yyyyyy].Rooms.[z].devices.[RUaaaaaaaaaa].childLockEnabled | Child Lock on/off |
| tado.[x].[yyyyyy].Rooms.[z].timeTables.tt_id | Select active time table |
| tado.[x].[yyyyyy].Rooms.[z].openWindowDetection.openWindowDetectionEnabled | Enable/Disable open window detection on thermostat |
| tado.[x].[yyyyyy].Rooms.[z].openWindowDetection.timeoutInSeconds | Timeout how long thermostats are turned off when an open window is detected |
| tado.[x].[yyyyyy].Rooms.[z].activateOpenWindow | Switch thermostats off when an open window is detected (only works if the thermostat detects an open window) |
| tado.[x].[yyyyyy].Rooms.[z].setting.mode | AC mode (only AC devices) |
| tado.[x].[yyyyyy].Rooms.[z].setting.fanspeed | Fanspeed (only AC devices with V3 and older versions) |
| tado.[x].[yyyyyy].Rooms.[z].setting.fanLebel | Fanlebel (only AC devices with V3+ version) |
| tado.[x].[yyyyyy].Rooms.[z].setting.verticalSwing | Vertical swing (only AC devices with V3+ version) |
| tado.[x].[yyyyyy].Rooms.[z].setting.horizontalSwing | Horizontal swing (only AC devices with V3 and olderversions) |
| tado.[x].[yyyyyy].Home.state.presence | Set HOME, AWAY or AUTO mode |
| tado.[x].[yyyyyy].Home.masterswitch | Turn all devices on/off |
| tado.[x].[yyyyyy].meterReadings | JSON-Object with {"date":"YYYY-MM-DD","reading": 1234} can be used to upload meter-readings to Energy IQ |
Things you can steer on Tado° X
| State | Description |
|---|---|
| tado.[x].[yyyyyy].Rooms.[z].setting.power | Turn device on/off |
| tado.[x].[yyyyyy].Rooms.[z].setting.temperature.value | Define temperature |
| tado.[x].[yyyyyy].Rooms.[z].manualControlTermination.controlType | Set time table mode |
| tado.[x].[yyyyyy].Rooms.[z].manualControlTermination.remainingTimeInSeconds | Duration time for timer mode |
| tado.[x].[yyyyyy].Rooms.[z].resumeScheduleRoom | Back to automatic mode for this room |
| tado.[x].[yyyyyy].Rooms.[z].devices.[VAaaaaaaaaaa].temperatureOffset | Change offset of device |
| tado.[x].[yyyyyy].Rooms.resumeScheduleHome | Back to automatic mode for all rooms |
| tado.[x].[yyyyyy].Rooms.allOff | Switch all rooms off |
| tado.[x].[yyyyyy].Rooms.boost | Switch all rooms to boost mode |
| tado.[x].[yyyyyy].Home.state.presence | Set HOME, AWAY or AUTO mode |
| tado.[x].[yyyyyy].meterReadings | JSON-Object with {"date":"YYYY-MM-DD","reading": 1234} can be used to upload meter-readings to Energy IQ |
Requires
- Node.js 20 or higher
- ioBroker host (js-controller) 7.0.6 or higher
- iorBroker.admin 7.7.2 or higher
Changelog
0.8.3 (2025-11-13)
- (HGlab01) add capability to set OffSet [TadoX]
- (HGlab01) Implement deboucing also for TadoX
- (HGlab01) fix nextScheduleChange is missing the required property "common.type" [TadoX]
0.8.2 (2025-11-07)
- (HGlab01) add retry mechanism when it comes to timeouts
- (HGlab01) add attribute 'isRoomLinkRestricted'
- (HGlab01) finally fix definition missing for 'awayMode' with value 'null' [TadoX]
- (HGlab01) finally fix definition missing for 'holidayMode' with value 'null' [TadoX]
- (HGlab01) bump iobroker-jsonExplorer to 0.2.2
- (HGlab01) bump axios to 1.13.2
0.8.1 (2025-11-04)
- (HGlab01) code refactorings
- (HGlab01) fix issue 'definition missing for holidayMode' [TadoX]
- (HGlab01) fix issue 'cannot read properties of undefined (reading 'match')'
- (HGlab01) fix issue openWindow data not up to date #1086
0.8.0 (2025-10-07)
- (HGlab01) new configuration capabilities to manage API usage quota (#1047, #1048)
- (HGlab01) Implement API debouncing
- (HGlab01) Refactorings Tado API calls
- (HGlab01) fix issue 'definition missing for awayMode' [TadoX]
- (HGlab01) fix issue 'definition missing for preheating' [TadoX]
- (HGlab01) Additional guidance/log when it comes to RefreshToken issue
- (HGlab01) fix Object of state "tado.0.xxxxx.Rooms.y.openWindow" is missing the required property "common.type" (#1059)
- (HGlab01) Bump axios to 1.12.2
- (HGlab01) Bump iobroker-jsonexplorer to 0.2.0
0.7.10 (2025-04-25)
- (HGlab01) further token refresh optimizations
License
MIT License
Copyright (c) 2025 HGlab01 myiobrokeradapters@gmail.com & DutchmanNL oss@drozmotix.eu
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
