Skip to content
This repository has been archived by the owner on Jan 17, 2024. It is now read-only.

Latest commit

 

History

History
39 lines (28 loc) · 971 Bytes

README.md

File metadata and controls

39 lines (28 loc) · 971 Bytes

tapo-p100-python

Work in progress implementation of tapo protocol in python.

Writeup here: https://k4czp3r.xyz/reverse-engineering/tp-link/tapo/2020/10/15/reverse-engineering-tp-link-tapo.html

To do list

  • Handshake
  • Encrypt data
  • Login request
  • Decrypt data
  • Change state

How to install it

  1. Make venv: python3 -m venv venv

  2. Activate venv:

    • Linux: source venv/bin/activate
    • Windows: ./venv/Scripts/activate
  3. Install requirements pip install -r req.txt

How to use it

usage: main.py [-h] TPLINK_EMAIL TPLINK_PASS ADDR STATE

Change plug state.

positional arguments:
  TPLINK_EMAIL  Your TPLink account email
  TPLINK_PASS   Your TPLink account password
  ADDR          Address of your plug (ex. 192.168.2.22)
  STATE         New state of the plug (on=1 off=0)

optional arguments:
  -h, --help    show this help message and exit

Example: python main.py email@gmail.com Password123 192.168.137.135 1