Skip to main content

lumalou (Python)

Fork notice. lumalou-gld09 is an independent fork of stramanu/lumalou by Emanuele Strazzullo, maintained at pavlikru/lumalou. It ships the changes proposed in stramanu/lumalou#2 (strict profile reads, typed schedule codecs and setters, authenticated device-key binding, injectable BLE client factory) until they are released upstream. The import package is still lumalou; do not install it alongside the upstream lumalou distribution. MIT licensed, original attribution preserved.

Local BLE control for the Fisher-Price Lumalou. Pure Python (async, bleak).

pip install lumalou-gld09

Library

import asyncio
from lumalou import LumalouClient, Color

async def main():
    devices = await LumalouClient.scan()
    async with LumalouClient(devices[0]["address"]) as luma:
        await luma.light_color(Color.RAINBOW)
        await luma.play(0)            # guided sleep playlist
        await luma.volume(5)
        print(await luma.request_state())

asyncio.run(main())

request_state() returns a fresh, strictly validated GLOBAL_STATE snapshot; it is not a complete device backup. For other blocks use request_named() or request_day_routine(), which return a ResponseEnvelope bound to the current session. The device pushes GLOBAL_STATE and other responses after commands and on physical changes; pass on_state / on_response to receive them. As in upstream, frames the client cannot use are ignored and never end the session. See the repository's client contract and schedule codec reference.

CLI

lumalou scan
lumalou light --color blue --brightness 7
lumalou sound --source ocean --volume 5
lumalou soother                 # --off to stop
lumalou time                    # sync clock
lumalou state                   # read a fresh GLOBAL_STATE snapshot
lumalou send 3c05               # raw app_data (opcode + args)

Add -a <address> to target a device; otherwise it auto-scans.

Requires Python 3.10+, a Bluetooth LE adapter, and radio range of the device.

Development

pip install -e ".[dev]"
pytest        # runs the shared golden vectors (spec/vectors.json)

MIT.

Release files for lumalou-gld09 0.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for lumalou-gld09 0.3.0
File Size Uploaded
lumalou_gld09-0.3.0.tar.gz 49.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for lumalou-gld09 0.3.0
File Interpreter ABI Platform
lumalou_gld09-0.3.0-py3-none-any.whl Python 3 none any Details

Total release size: 83.9 kB

Release files / lumalou_gld09-0.3.0.tar.gz

Download URL lumalou_gld09-0.3.0.tar.gz
Size 49.5 kB
Tags Source
SHA-256 checksum
How to use checksums
5cdb16e42059b3c33f5b7296da5f7ed6b5a7d1caa3b543421c780049d0ef81c3
BLAKE2b-256 checksum
How to use checksums
44936f2c8ed9af0867a5a3927985b66c4298409a992a47937ed59443aca74e92
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / lumalou_gld09-0.3.0-py3-none-any.whl

Download URL lumalou_gld09-0.3.0-py3-none-any.whl
Size 34.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b87cb09192718d56dc0b882a7d7daf4e7aa7cd89adc4983e3df3e6bbb55cf9b2
BLAKE2b-256 checksum
How to use checksums
c7fb977b424a871def92748bd0da951d4cef142d34ad8beb7378de7cee6facb0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.3.0 This release

2 release files

0.2.1

2 release files

0.2.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page