This is a custom integration to control Tapo devices from home assistant.
The core of the integration is provied by plugp100 python library based on work of @K4CZP3R.
Although the integration works using LAN, the tapo device needs internet access to synchronize with tapo cloud, especially for credentials, a missing internet access could lead into "Invalida authentication error". Also a static IP must be set for device.
For some unknown reason email with capital letter thrown an "Invalid authentication" error. So before open an new issue check your email address on Tapo App Settings. If contains capital letter, the integration won't work. I've opened an issue that explain this #122, I will fix asap. As workaround you can create a new account using all lower-case in your email address.
- pure async home assistant's method
- support for tapo powerstrip (
P300
). A special thanks go to @alxlk to support me with max one-time contribution which allows me to buy the device - support for tapo switch (
P100
,P110
,P105
,P115
,P125
) - support for tapo light bulb with or without color (
L530
,L510
,L520
,L630
,L610
) - support for tapo light strip with or without color (
L900
) - partial support for tapo light strip (
L920
,L930
(including light effects)). Only RGB works not the addressable feature of strip. - support for energy monitoring (
P110
,P115
) - support for tapo light switches with or without the dimmer (
S500
,S500d
) - support for additional tapo sensors:
overheat
andwifi_signal
- allow configuration from home assistant UI with config flow
- allow configuration from
configuration.yaml
. supported domains areswitch
,light
,sensor
- tracking of ip address. Cause Tapo local discovery isn't working for a lot of Tapo devices, this integration can try to track ip address changes by reling on MAC address. This requires Home Assistant to runs on the same devices network and the capability to send ARP and broadcast packets.
- manually change ip address. Now you can change the ip address of a tapo device wihtout removing and re-adding it.
This integration is part of HACS store, so you don't need anymore to add this repository as a custom repository.
You can find it directly on HACS Store: search for tapo
and you will find Tapo Controller
. (HACS >= 1.6.0 is required)
- Install from HACS, add this repository as custom repository
- Search into HACS store the tapo integration and install
- Full restart of home assistant is recomended
This video show installation steps:
- Using the tool of choice open the directory (folder) for your HA configuration (where you find
configuration.yaml
). - If you do not have a
custom_components
directory (folder) there, you need to create it. - In the
custom_components
directory (folder) create a new folder calledtapo
. - Download all the files from the
custom_components/tapo/
directory (folder) in this repository. - Place the files you downloaded in the new directory (folder) you created.
- Restart Home Assistant
- In the HA UI go to "Configuration" -> "Integrations" click "+" and search for "tapo"
- Be sure the integration is installed successfully
- Go to integrations menu
- Search for
Tapo
integration - Insert host (ip address), username and password for control your tapo device (the same used for tapo app). If you have a problem in this phase, like "invalid auth" error, please see #122, and if error persist write a comment in the same issue
- Wait for connection. It automatically recognize if the tapo device is switch or light or something else :)
Domain can be switch
, light
or sensor
.
An example with switch:
switch:
platform: tapo
host: ...
username: ...
password: ...
Open a pull request, every contribution are welcome.