Python library and unofficial API documentation for Twinkly - Smart Decoration LED lights for Christmas.
Project description
Smart LED Christmas lights
Unofficial API documentation for Twinkly - Smart Decoration LED lights for Christmas.
Description of Twinkly on project page of Kickstarter:
Twinkly is a Christmas tree light string, controlled via smartphone: “internet of things” meets extraordinary light effects! Created by ledworks
Free software: MIT license
Documentation is available online at https://xled.readthedocs.io.
Why?
I have Twinkly 105 LEDs starter light set. That is latest available model in 2017: TW105S-EU. As of December 2017 there are only two ways to control lights - mobile app on Android or iOS or hardware button on the cord.
Android application didn’t work as advertised on my Xiaomi Redmi 3S phone. On first start it connected and disconnected in very fast pace (like every 1-2 seconds) to the hardware. I wasn’t able to control anything at all. Later I wanted to connect it to my local WiFi network. But popup dialog that shouldn’t have appear never did so.
Public API was promised around Christmas 2016 for next season. Later update from October 2016 it seems API won’t be available any time soon:
API for external control are on our dev check list, we definitely need some feedback from the community to understand which could be a proper core set to start with.
It turned out that application uses HTTP to control lights. I ended up with capturing network traffic and documented this private API. In the end I’m able to configure the device pretty easilly.
Credits
This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.
History
0.2.1 (2018-01-02)
Add missing MANIFEST.in
Configure Travis for automatic deployment to PyPI
0.2.0 (2018-01-02)
First Python control interface.
0.1.0 (2017-12-17)
First private API documentation.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.