Skip to content

Control TP-Link Smart Home devices from .NET

License

Notifications You must be signed in to change notification settings

IgorMilavec/TPLink-SmartHome

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TP-Link Smart Home Library for .NET

This library provides the client for TP-Link Smart Home devices. The TP-Link Smart Home protocol is proprietary; this code is based on the article Reverse Engineering the TP-Link HS110 and contributors' own experiments.

The library is built for .NET Standard 1.3 and .Net Framework 4.5.

Supported devices

  • Smart Plugs
    • HS100 Wi-Fi Smart Plug
    • HS110 Wi-Fi Smart Plug with Energy Monitoring

Transport protocol

The library supports both UDP (default) and TCP transports. Please note that I was unable to send multiple consecutive commands over a single TCP connection, so usage of TCP protocol at this time only brings additional overhead. One advantage of TCP would be support for larger payloads, however I have not yet observed a protocol command or response that would not fit into a single UDP packet.

If you wish to discover devices in remote networks, please note that you need to configure directed broadcasts for target network.

License

This library is licensed under the GNU Lesser General Public License v3.0.

This library uses external libraries that have their own respective licenses: