SPOTLED

raw JSON →
1.3.0 verified Sat May 09 auth: no python

Unofficial Python library for controlling SPOTLED Bluetooth LED displays. Supports text, images, animations, and real-time updates. Current version: 1.3.0, release cadence: irregular.

pip install spotled
error bleak.exc.BleakError: No BLE adapter found
cause No Bluetooth adapter or BLE not supported/available.
fix
Ensure system has BLE-capable Bluetooth adapter and necessary drivers (e.g., bluez on Linux).
error spotled.exceptions.SpotledException: Failed to connect: Connection refused
cause Device not in range or already connected to another client.
fix
Move closer to device and ensure no other app is connected to the SPOTLED display.
gotcha Bluetooth adapter must support BLE (Bluetooth Low Energy). On Linux, ensure bluez is installed and user has permissions.
fix Install bluez (sudo apt install bluez) and add user to bluetooth group (sudo usermod -a -G bluetooth $USER).
gotcha Device discovery may fail if the device is already connected to another host (e.g., mobile app). Ensure device is disconnected before scanning.
fix Disconnect any other Bluetooth connections to the device before running discovery.

Discover a SPOTLED device and send text.

from spotled import SpotledDiscovery, SpotledClient

# Discover devices
discovery = SpotledDiscovery()
devices = discovery.discover(timeout=3)
if not devices:
    print('No devices found')
else:
    # Connect to first device
    device = devices[0]
    client = SpotledClient(device.address, device.name)
    client.connect()
    client.send_text('Hello SPOTLED!')
    client.disconnect()