Skip to content

Minlor/LumiSync

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

98 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

💡 LumiSync

Sync your Govee LED strips with your screen or music

Python 3.11+ PyPI version License: MIT GitHub stars

FeaturesInstallationUsageDevelopmentRoadmap


Note

This project is in active development. Windows is fully supported; Linux X11 is partial, macOS/Wayland are WIP.

✨ Features

Feature Description
🖥️ Monitor Sync Sample colors from screen regions and sync to your LED strip in real-time
🎵 Music Sync React to audio with dynamic color patterns
🎨 Modern GUI PyQt6 interface with Windows 11-style navigation and theme support
🔍 Auto-Discovery Automatically finds Govee devices on your LAN via UDP broadcast
Low Latency Direct LAN communication, no cloud required
LumiSync Screenshot

📦 Installation

Requirements: Python 3.11 or higher

From PyPI (Recommended)

pip install lumisync

From GitHub (Latest)

pip install git+https://github.com/Minlor/LumiSync.git

Development Install

git clone https://github.com/Minlor/LumiSync.git
cd LumiSync
pip install -e .

🚀 Usage

Launch the App

lumisync

Select option 3 to launch the GUI, or choose 1 (Monitor Sync) / 2 (Music Sync) for CLI mode.

Quick Start

  1. Discover devices - Click "Discover Devices" in the Devices tab
  2. Select your LED strip - Click on the discovered device
  3. Start syncing - Go to Sync Modes and click "Start Monitor Sync" or "Start Music Sync"

Configuration

  • LED Mapping - Customize which screen regions map to which LEDs
  • Brightness - Adjust per-mode brightness (10-100%)
  • Display Selection - Choose which monitor to capture (multi-monitor support)
  • Themes - Switch between light/dark themes via Settings

🛠️ Development

Project Structure

lumisync/
├── lumisync.py          # Entry point & CLI
├── connection.py        # Govee UDP protocol (port 4001/4002)
├── devices.py           # Device discovery & caching
├── config/options.py    # Runtime configuration
├── sync/                # Monitor & music sync engines
├── gui/                 # PyQt6 application
│   ├── controllers/     # Business logic (QObject + pyqtSignal)
│   ├── views/           # UI components
│   └── widgets/         # Reusable widgets
└── utils/               # Logging, colors, file ops

Run Tests

python tests/test_color.py

Platform Support

Platform Screen Capture Status
Windows dxcam ✅ Full support
Linux (X11) mss ⚠️ Partial
Linux (Wayland) - 🚧 WIP
macOS - 🚧 WIP

🗺️ Roadmap

  • Multi-device support
  • Wayland & macOS screen capture
  • Basic color control mode
  • Custom sync algorithms
  • Plugin system for community extensions

🙏 Credits

📄 License

MIT © Minlor


minlor.net · GitHub @minlor

⭐ Star this repo if you find it useful!

About

Program to sync your Govee led lights with content on your monitor or music

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages