sampsyo / wideq

reverse-engineered client for the LG SmartThinQ API
https://pypi.org/project/wideq/
MIT License
331 stars 159 forks source link

PyPI CircleCI

WideQ

:warning: New users of LG SmartThinq: This library only works with v1 of the LG SmartThinq API. Work is currently underway to support the v2 API, and the discussion can be found here. If you recently created a LG SmartThinq account, this library will likely return 0 devices when you execute the ls command.

A library for interacting with the "LG SmartThinq" system, which can control heat pumps and such. I reverse-engineered the API from their mobile app.

To try out the API, there is a simple command-line tool included here, called example.py. To use it, provide it with a country and language code via the -c and -l flags, respectively:

$ python3 example.py -c US -l en-US

LG accounts seem to be associated with specific countries, so be sure to use the one with which you originally created your account. For Korean, for example, you'd use -c KR -l ko-KR.

On first run, the script will ask you to log in with your LG account. Logging in with Google does not seem to work, but other methods (plain email & password, Facebook, and Amazon) do.

By default, the example just lists the devices associated with your account. You can also specify one of several other commands:

Development

This project uses the Black code formatting tool. Before submitting pull requests, please run Black to ensure consistent formatting.

If you like, you can install a git hook to automatically run Black and flake8 every time you commit. Install the pre-commit tool and type pre-commit install to use it.

Credits

This is by Adrian Sampson. The license is MIT. I also made a Home Assistant component that uses wideq.