1.5.2 • Published 7 months ago

homebridge-tapo v1.5.2

Weekly downloads
177
License
Apache-2.0
Repository
github
Last release
7 months ago

Homebridge Tapo Platform Plugin

This is a Homebridge platform plugin for the TP-Link Tapo P100, P105, P110 Plugs and L510E, L530E Lightbulbs.

Following features are supported per Device:

  • P100 : Turn On, Turn Off, Current State.
  • P110 : Same as P100 + Power Consumption in Eve App.
  • L510E: Same as P100 + Brightness control
  • L530E: Same as L510E + Hue and Saturation control, Adaptive Lighting support and Power Consumption in Eve App.

Tested with:

  • Tapo P100 (EU, UK)
  • Tapo L510E
  • Tapo L530E

Installation

  1. Install homebridge
  2. Install this plugin using: npm install -g homebridge-tapo or through Homebridge UI
  3. Update your Homebridge configuration file (config.json)

Configuration

The available fields in the config.json file are:

  • platform required Always "TapoP100"
  • name required Descriptive name of the platform
  • username required The username with which you registered/login in the Tapo app.
  • password: required The password with which you registered/login in the Tapo app
  • devices: required An array of devices
    • name: required The name of each device
    • host: required The host (local IP address) of each device
    • type: optional Plug, PowerPlug, Light or Colorlight. Use Plug for P100 or P105, PowerPlug for P110, Light for L510E and Colorlight for L530. If not provided, default is Plug.
    • updateInterval: optional seconds. Set the update interval for the plugin. Determines how often the plugin will request the state from the Tapo Device.
    • timeout: optional seconds. Sets the request timeout header for the requests to the Tapo Device.

Example:

"platforms": [
    {
        "name": "Tapo Smart Platform",
        "username": "the username from the Tapo app",
        "password": "the password from the Tapo app",
        "platform": "TapoP100",
        "devices": [
            {
                "name": "Kitchen",
                "host": "192.168.1.21",
                "type": "Plug",
                "updateInterval": 10,
                "timeout": 2
            }
        ]
    }
]

How does it work?

The plugin polls this outlet endpoint:

http://[host]/app?token

Example response from this endpoint:

{
"device_id":"",
"fw_ver":"1.2.1 Build 20200616 Rel. 31218",
"hw_ver":"1.20.0",
"model":"P100",
"type":"SMART.TAPOPLUG",
"mac":"",
"hw_id":"",
"fw_id":"",
"oem_id":"",
"specs":"EU",
"device_on":false,
"on_time":0,
"overheated":false,
"nickname":"",
"location":"kitchen",
"avatar":"ceiling_lamp",
"time_usage_today":515,
"time_usage_past7":3102,
"time_usage_past30":3102,
"longitude":,
"latitude":,
"has_set_location_info":false,
"ip":"",
"ssid":"",
"signal_level":2,
"rssi":-61,
"region":"Europe/Athens",
"time_diff":120,
"lang":"en_US"}

Information

This plugin will also allow you to control the Tapo Plugs and Lights even if you have blocked the internet connectivity of the device.

I created the plugin for personal use and wanted to share it with other people too.

Maybe you would consider buying me a coffee

Thanks / Credits

Ported from the Python library https://github.com/fishbigger/TapoP100 (by @fishbigger) to Nodejs.

1.5.1-beta24

7 months ago

1.5.1-beta25

7 months ago

1.5.1-beta20

7 months ago

1.5.1-beta21

7 months ago

1.5.1-beta22

7 months ago

1.5.1-beta23

7 months ago

1.5.2

7 months ago

1.5.1

7 months ago

1.5.1-beta13

7 months ago

1.5.1-beta14

7 months ago

1.5.1-beta15

7 months ago

1.5.1-beta16

7 months ago

1.5.1-beta10

7 months ago

1.5.1-beta11

7 months ago

1.5.1-beta12

7 months ago

1.5.1-beta17

7 months ago

1.5.1-beta18

7 months ago

1.5.1-beta19

7 months ago

1.5.1-beta8

7 months ago

1.5.1-beta9

7 months ago

1.5.1-beta6

7 months ago

1.5.1-beta7

7 months ago

1.5.1-beta4

7 months ago

1.5.1-beta5

7 months ago

1.5.1-beta2

7 months ago

1.5.1-beta3

7 months ago

1.5.1-beta1

7 months ago

1.5.2-beta1

7 months ago

1.5.2-beta2

7 months ago

1.5.2-beta3

7 months ago

1.5.2-beta4

7 months ago

1.5.2-beta5

7 months ago

1.5.2-beta6

7 months ago

1.5.2-beta7

7 months ago

1.5.0

2 years ago

1.5.0-beta3

2 years ago

1.5.0-beta2

2 years ago

1.4.17-beta1

3 years ago

1.4.17

3 years ago

1.4.15-beta1

3 years ago

1.4.15-beta3

3 years ago

1.4.15-beta2

3 years ago

1.4.15-beta4

3 years ago

1.4.16-beta8

3 years ago

1.4.16-beta7

3 years ago

1.4.16-beta6

3 years ago

1.4.16-beta5

3 years ago

1.4.16-beta4

3 years ago

1.4.16-beta3

3 years ago

1.4.16-beta2

3 years ago

1.4.16-beta1

3 years ago

1.4.13-beta6

3 years ago

1.4.13-beta4

3 years ago

1.4.13-beta5

3 years ago

1.4.13-beta2

3 years ago

1.4.13-beta3

3 years ago

1.4.13

3 years ago

1.4.15

3 years ago

1.4.14

3 years ago

1.4.16

3 years ago

1.4.11-beta1

3 years ago

1.4.13-beta0

3 years ago

1.4.11

3 years ago

1.4.13-beta1

3 years ago

1.4.10

3 years ago

1.4.12

3 years ago

1.4.10-beta1

4 years ago

1.4.9

4 years ago

1.4.9-beta.1

4 years ago

1.4.9-beta.2

4 years ago

1.4.9-beta.10

4 years ago

1.4.9-beta.11

4 years ago

1.4.9-beta.7

4 years ago

1.4.9-beta.8

4 years ago

1.4.9-beta.9

4 years ago

1.4.9-beta.3

4 years ago

1.4.9-beta.4

4 years ago

1.4.9-beta.5

4 years ago

1.4.9-beta.6

4 years ago

1.4.8-beta.3

4 years ago

1.4.8

4 years ago

1.4.9-beta.0

4 years ago

1.4.8-beta.1

4 years ago

1.4.8-beta.0

4 years ago

1.4.8-beta.2

4 years ago

1.4.7-beta.3

4 years ago

1.4.7

4 years ago

1.4.7-beta.2

4 years ago

1.4.6

4 years ago

1.4.7-beta.0

4 years ago

1.4.7-beta.1

4 years ago

1.4.5

4 years ago

1.4.4

4 years ago

1.4.3

4 years ago

1.4.2

4 years ago

1.4.1

4 years ago

1.4.3-beta.8

4 years ago

1.4.3-beta.7

4 years ago

1.4.3-beta.6

4 years ago

1.4.3-beta.5

4 years ago

1.4.3-beta.9

4 years ago

1.4.6-beta.0

4 years ago

1.4.4-beta.0

4 years ago

1.4.3-beta.0

4 years ago

1.4.3-beta.4

4 years ago

1.4.3-beta.3

4 years ago

1.4.3-beta.2

4 years ago

1.4.3-beta.1

4 years ago

1.3.8-beta.0

4 years ago

1.3.7-beta.0

4 years ago

1.3.9-beta.0

4 years ago

1.4.0

4 years ago

1.3.11-beta.0

4 years ago

1.3.12-beta.0

4 years ago

1.3.10-beta.0

4 years ago

1.3.6-beta.0

4 years ago

1.3.5-beta.0

4 years ago

1.3.4-beta.0

4 years ago

1.3.1-beta.0

4 years ago

1.3.2-beta.0

4 years ago

1.2.2-beta.0

4 years ago

1.1.1

4 years ago

1.1.2-beta.0

4 years ago

1.1.1-beta.0

4 years ago

1.0.0

4 years ago