Skip to main content

A library and command-line tool to control the Holi SleepCompanion

Project description

Sleep360

This project allows to control the Holi SleepCompanion from a Linux computer.

The SleepCompanion is nice LED bulb that offers a lot of features to improve your sleep and your waking up. It is manufactured by Holi, a French company. A product description can be found by following these links:

This Sleep360 project is written in Python and can be used:

  • as a library by creating a sleep360.Bulb() object
  • as a command line utility (coming soon)

Requirements

  • D-BUS
  • bluez >= 5.46 (dependency on the GATT D-BUS API)

Installation

From PyPI

pip install [--user] sleep360

From the sources

cd python-sleep360
pip install [--user] .

Command line usage

pip install installs a sleep360 binary. Running it gives a prompt like this one:

Sleep360 shell (version x.y.z).
Type help or ? to list commands.

[sleep360] connect Bulb
Connecting to the Bulb...
[sleep360] set_color 0xff0000 0x00 0x00
[sleep360] disconnect
Disconnecting from the Bulb...
[sleep360] exit

Library usage

bulb = Bulb(name="Bulb")
bulb.connect()

# Play with bulb commands
[...]

bulb.disconnect()

Examples are available in the tests directory.

Supported features

The SleepCompanion bulb offers a lot of features. Among them, the following ones are currently supported by Sleep360:

  • Setting colors (RGB + warm and cold value)
  • Powering off the light
  • Getting the temperatures measured by the bulb

Reverse-engineering

This project has been developed by carefully studying the Bluetooth LE messages. The file BLE-protocol.md describes my understanding of these messages.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sleep360-0.2.0.tar.gz (9.9 kB view details)

Uploaded Source

File details

Details for the file sleep360-0.2.0.tar.gz.

File metadata

  • Download URL: sleep360-0.2.0.tar.gz
  • Upload date:
  • Size: 9.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.28.1 CPython/3.7.3

File hashes

Hashes for sleep360-0.2.0.tar.gz
Algorithm Hash digest
SHA256 77a65f84d1db531898cd7d504653fc96950c84d134161d18daf0a2598761821b
MD5 7476efe85ff2bb7db2630f6f5b233925
BLAKE2b-256 4c635bb76532d0048be47d635ef16062f365a32f069e142779bac070b032cbd4

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page