No description
Find a file
2025-06-30 03:59:00 +02:00
__init__.py featsss: initial commit 2025-06-30 01:52:10 +02:00
animations.py feat: only cycle 2025-06-30 02:32:11 +02:00
config.py feat: add speech to text 2025-06-30 03:40:36 +02:00
hue_controller.py featsss: initial commit 2025-06-30 01:52:10 +02:00
main.py fix: import mido 2025-06-30 03:49:34 +02:00
mapper.py featsss: initial commit 2025-06-30 01:52:10 +02:00
midi_controller.py fix: undo reconnection, doesnt really work yet. 2025-06-30 02:08:43 +02:00
README.md featsss: initial commit 2025-06-30 01:52:10 +02:00
speech_to_text.py fix: resample audio before playing 2025-06-30 03:59:00 +02:00

MIDI-to-Hue Controller

A modular Python application for controlling Philips Hue lights with MIDI controllers.

Features

  • Map MIDI notes and control changes to Hue light parameters
  • Throttled updates to prevent overwhelming the Hue Bridge
  • Configurable mappings via JSON
  • LED feedback support for controller visualization
  • Customizable value transformations

Structure

This application has been refactored to follow modular design principles:

  • config.py - Configuration management module
  • hue_controller.py - Philips Hue bridge and light control
  • midi_controller.py - MIDI device management
  • mapper.py - Mapping logic between MIDI and Hue
  • main.py - Application entry point

Usage

  1. Connect your MIDI device
  2. Edit midi_hue_config.json to configure your mappings
  3. Run python main.py

Configuration

The default configuration file (midi_hue_config.json) contains:

{
  "midi_device": 1,
  "update_interval_ms": 50,
  "bridge_ip": "192.168.178.35",
  "mappings": [
    {
      "midi_channel": 5,
      "midi_control": 1,
      "light_name": "Zimmer Decke",
      "parameter": "bri",
      "value_transform": "value * 2"
    },
    ...
  ]
}

Dependencies

  • mido
  • phue