jimboca / udi-poly-kasa

UDI ISY Polyglot NodeServer for TP-Link Kasa
MIT License
2 stars 4 forks source link
kasa nodeserver polyglot tp-link tp-link-kasa udi

Build Status

kasa-polyglot

This is the TP Link Kasa Poly for the Universal Devices ISY994i Polyglot interface with Polyglot V2 (c) JimBoCA aka Jim Searle MIT license.

This node server is intended to support all devices supported by the pyHS100 Python Library

This nodeserver relies on a mostly undocumented and officially supported local API which of course TP-Link could break at any time.

Installation

This nodeserver will only work on a machine running on your local network, it will not work with Polyglot Cloud until TP-Link releases a public API for their cloud interface.

  1. Backup Your ISY in case of problems!
    • Really, do the backup, please
  2. Go to the Polyglot Store in the UI and install.
  3. Add NodeServer in Polyglot Web
  4. Open the admin console (close and re-open if you had it open) and you should see a new node 'Kasa Controller'
  5. The auto-discover should automatically run and find your devices and add them. Verify by checking the nodeserver log
    • While this is running you can view the nodeserver log in the Polyglot UI to see what it's doing

Usage

This node server makes every attempt to handle devices which are not responding for any reason, like they are unplugged or powered off. When a device is Discovered it is remembered, so if it doesn't respond on the next discovery it will still be an active device and when powered up it will be seen as connected.

The node server does not require that you reserve IP addresses for the devices, the device address is remembered based on it's MAC address, so if the IP address changes, it will be properly handled. (This has not been extensively tested, needs more verification)

Kasa Devices

Known working

The known list of supported devices models are:

If you have another device not listed and it is working properly please let me know.

Unknown devices

All other simple plug and bulb devices should work, the nodeserver attempts to figure out the capabilities of the device instead of hardcoding based on the model. But if you have an issue please add to UDI Poly Kasa Issues Feel free to Fork this repo and add support as you like and send me a pull request.

Kasa Controller

This is the main node created by this nodeserver and manages the devices.

Node Drivers

The settings for this node are

Node Server Connected

Node Commands

The commands for this node

Query

Kasa Devices

The supported Kasa devices can have different status and commands, but these are the common ones.

Node Drivers

The settings for this node are

Status (ST)

Node Commands

The commands for these nodes

Query

Issues

If you have an issue where the nodes are not showing up properly, open the Polyglot UI and go to Kasa -> Details -> Log, and click 'Download Log Package' and send that to jimboca3@gmail.com as an email attachment, or send it in a PM Universal Devices Forum

Upgrading

Open the Polyglot web page, go to nodeserver store and click "Update" for "Kasa".

Then restart the Kasa nodeserver by selecting it in the Polyglot dashboard and select Control -> Restart, then watch the log to make sure everything goes well.

Release Notes