Skip to main content

A library to control Luke Roberts lamps via Bluetooth Low Energy

Project description

pyLukeRoberts

This library enables control of Luke Roberts Luvo lamps via Bluetooth Low Energy. It was written as a library to power a future Home Assistant Plug-In.

Table of Contents

Capabilities

  • Discover Luke Roberts Luvo lamps
  • Switch Lamps On/Off
  • Read all configured scenes
  • Read current scene
  • Change scene
  • Change Color for Uplight
  • Change Brightness (absolute and relative)
  • Change Color Temperature for Downlight

Installation

# Install via pypi
pip install pylukeroberts

Dependencies

pyLukeRoberts uses bleak for Bluetooth Low Energy connectivity

Usage

Example from examples/switch_scene.py

from pylukeroberts import LuvoLamp, find_lamp
import asyncio

async def main():
    device = await find_lamp()
    if device is None:
        print("No Luke Roberts lamp found")
        return
    print(f"Found Luke Roberts Lamp at address: {device.address}")
    lamp = LuvoLamp(device)
    await lamp.update_scenes()
    await lamp.update_current_scene()
    print(f"{lamp.current_scene_name} with ID: {lamp.current_scene_id}")
    await lamp.select_scene(12)
    await lamp.switch_off()

if __name__ == "__main__":
    asyncio.run(main())

Contributing

Guidelines for contributing to the project.

  1. Fork the repository.
  2. Create a new branch (git checkout -b feature-branch).
  3. Make your changes.
  4. Commit your changes (git commit -m 'Add some feature').
  5. Push to the branch (git push origin feature-branch).
  6. Open a pull request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contact

Timur Pulathaneli - timur@koeln.de

Project Link: https://github.com/tpulatha/pylukeroberts

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

pylukeroberts-0.6.1.tar.gz (7.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pylukeroberts-0.6.1-py3-none-any.whl (8.3 kB view details)

Uploaded Python 3

File details

Details for the file pylukeroberts-0.6.1.tar.gz.

File metadata

  • Download URL: pylukeroberts-0.6.1.tar.gz
  • Upload date:
  • Size: 7.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.3 CPython/3.13.14 Darwin/25.5.0

File hashes

Hashes for pylukeroberts-0.6.1.tar.gz
Algorithm Hash digest
SHA256 6977217faff67a6fe766871dc82dd652a0a207a6c1d37a4598d9235b44e76cee
MD5 420e39579dc870edb20073d78a032108
BLAKE2b-256 210d536ec3422e40eaca21741500bfbc9f4bed1548eed35939d171121d8ea857

See more details on using hashes here.

File details

Details for the file pylukeroberts-0.6.1-py3-none-any.whl.

File metadata

  • Download URL: pylukeroberts-0.6.1-py3-none-any.whl
  • Upload date:
  • Size: 8.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.3 CPython/3.13.14 Darwin/25.5.0

File hashes

Hashes for pylukeroberts-0.6.1-py3-none-any.whl
Algorithm Hash digest
SHA256 38b4150484c1dc666ae1edc893a59e8e095150a0ab4e9879b19480005994ff41
MD5 00ddc96283a2760bdca81df23c26e165
BLAKE2b-256 e0214109ce5309e18568bf921033360dce08a3e197fd54f53ec7284dcda9fb29

See more details on using hashes here.

Supported by

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