/tplink-connect

Communicate with a TP-Link router over an encrypted connection using Rust

Primary LanguageRustMIT LicenseMIT

tplink-connect

License

Communicate with a TP-Link router over an encrypted connection using Rust.

This is a Rust library meant to communicate with the router programmatically.
If you are looking for a CLI app, you may want to check this repository out. (was never published)

⚠️ This project isn't production-ready (at all), but should work just fine for testing purposes or data querying.

Note: The project has been archived as I haven't touched it in months, but I may work on it again in the future.

Motivation

While it would have been much easier to install OpenWrt or any other alternative instead of using the official TP-Link firmware, doing so voids the warranty. And I wanted to keep mine.
Thus, this library is designed to communicate with a router by connecting to the admin panel (aka. web interface), supporting the AES/RSA encryption (actually, it doesn't even support connecting without the encryption).
This is also a good opportunity to make an actual project with Rust despite knowing it will only be used by a couple of people.

Tested Devices

This library is currently being designed for the only TP-Link router I own, an Archer MR600.
However, it should be compatible with other devices. If you own another TP-Link router, feel free to test it and give the results by opening an issue.