pylukeroberts


Namepylukeroberts JSON
Version 0.3.0 PyPI version JSON
download
home_pageNone
SummaryA library to control Luke Roberts lamps via Bluetooth Low Energy
upload_time2025-07-16 21:17:57
maintainerNone
docs_urlNone
authorTimur Pulathaneli
requires_python<3.14,>=3.10
licenseNone
keywords bluetooth ble luvo control luke roberts
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # 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](#capabilities)
- [Installation](#installation)
- [Usage](#usage)
- [Contributing](#contributing)
- [License](#license)
- [Contact](#contact)

## Capabilities
* Discover Luke Roberts Luvo lamps
* Switch Lamps On/Off
* Read all configured scenes
* Read current scene
* Change scene
* Change Color for Uplight

Future Features
* Change Brightness
* Change Color Temperature for Downlight and Uplight


## Installation


```bash
# Install via pypi
pip install pylukeroberts
```

## Dependencies

pyLukeRoberts uses bleak for Bluetooth Low Energy connectivity

## Usage

Example from `examples/set_scene.py`

```python
from pylukeroberts import LUVOLAMP, find_lamp
import asyncio

async def main():
    # try:
    lamp_address = await find_lamp()
    print(f"Found Luke Roberts Lamp at address: {lamp_address}")
    lamp = LUVOLAMP(lamp_address)
    await lamp.update_scenes()
    await lamp.update_current_scene()
    print (f'{lamp.get_current_scene()} with ID: {lamp.get_current_scene(True)}')
    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](LICENSE) file for details.

## Contact

Timur Pulathaneli - [timur@koeln.de](mailto:timur@koeln.de)

Project Link: [https://github.com/tpulatha/pylukeroberts](https://github.com/tpulatha/pylukeroberts)

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "pylukeroberts",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<3.14,>=3.10",
    "maintainer_email": null,
    "keywords": "bluetooth, BLE, luvo, control, Luke Roberts",
    "author": "Timur Pulathaneli",
    "author_email": "timur@koeln.de",
    "download_url": "https://files.pythonhosted.org/packages/4f/75/61f51f78c675a422aef653e31f2cdb2b4f09404878a33b303a95565e0e49/pylukeroberts-0.3.0.tar.gz",
    "platform": null,
    "description": "# pyLukeRoberts\n\nThis 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.\n\n\n\n## Table of Contents\n\n- [Capabilities](#capabilities)\n- [Installation](#installation)\n- [Usage](#usage)\n- [Contributing](#contributing)\n- [License](#license)\n- [Contact](#contact)\n\n## Capabilities\n* Discover Luke Roberts Luvo lamps\n* Switch Lamps On/Off\n* Read all configured scenes\n* Read current scene\n* Change scene\n* Change Color for Uplight\n\nFuture Features\n* Change Brightness\n* Change Color Temperature for Downlight and Uplight\n\n\n## Installation\n\n\n```bash\n# Install via pypi\npip install pylukeroberts\n```\n\n## Dependencies\n\npyLukeRoberts uses bleak for Bluetooth Low Energy connectivity\n\n## Usage\n\nExample from `examples/set_scene.py`\n\n```python\nfrom pylukeroberts import LUVOLAMP, find_lamp\nimport asyncio\n\nasync def main():\n    # try:\n    lamp_address = await find_lamp()\n    print(f\"Found Luke Roberts Lamp at address: {lamp_address}\")\n    lamp = LUVOLAMP(lamp_address)\n    await lamp.update_scenes()\n    await lamp.update_current_scene()\n    print (f'{lamp.get_current_scene()} with ID: {lamp.get_current_scene(True)}')\n    await lamp.select_scene(12)\n    await lamp.switch_off()\n\nif __name__ == \"__main__\":\n    asyncio.run(main())\n```\n\n## Contributing\n\nGuidelines for contributing to the project.\n\n1. Fork the repository.\n2. Create a new branch (`git checkout -b feature-branch`).\n3. Make your changes.\n4. Commit your changes (`git commit -m 'Add some feature'`).\n5. Push to the branch (`git push origin feature-branch`).\n6. Open a pull request.\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## Contact\n\nTimur Pulathaneli - [timur@koeln.de](mailto:timur@koeln.de)\n\nProject Link: [https://github.com/tpulatha/pylukeroberts](https://github.com/tpulatha/pylukeroberts)\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "A library to control Luke Roberts lamps via Bluetooth Low Energy",
    "version": "0.3.0",
    "project_urls": null,
    "split_keywords": [
        "bluetooth",
        " ble",
        " luvo",
        " control",
        " luke roberts"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "f332e8d926dd68627b6d414f8504ea5362e78e8ed675fb7e7a7c2b6673a6e617",
                "md5": "0db7becd4a28e85e7526eeca02379abe",
                "sha256": "f5b87c3cdcd9e3deea992bbd55f8b3d2192b87167131a67424f8e853c51b17f2"
            },
            "downloads": -1,
            "filename": "pylukeroberts-0.3.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "0db7becd4a28e85e7526eeca02379abe",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<3.14,>=3.10",
            "size": 5592,
            "upload_time": "2025-07-16T21:17:56",
            "upload_time_iso_8601": "2025-07-16T21:17:56.122816Z",
            "url": "https://files.pythonhosted.org/packages/f3/32/e8d926dd68627b6d414f8504ea5362e78e8ed675fb7e7a7c2b6673a6e617/pylukeroberts-0.3.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "4f7561f51f78c675a422aef653e31f2cdb2b4f09404878a33b303a95565e0e49",
                "md5": "693b85864b969f1d79418887ceae94c7",
                "sha256": "6707e6ae0eef576311ecad49563fa6f2eee224303399419d13d4fceb030cd96e"
            },
            "downloads": -1,
            "filename": "pylukeroberts-0.3.0.tar.gz",
            "has_sig": false,
            "md5_digest": "693b85864b969f1d79418887ceae94c7",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<3.14,>=3.10",
            "size": 4526,
            "upload_time": "2025-07-16T21:17:57",
            "upload_time_iso_8601": "2025-07-16T21:17:57.307511Z",
            "url": "https://files.pythonhosted.org/packages/4f/75/61f51f78c675a422aef653e31f2cdb2b4f09404878a33b303a95565e0e49/pylukeroberts-0.3.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-16 21:17:57",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "pylukeroberts"
}
        
Elapsed time: 1.32330s