Hue Controller is a macOS X menu bar application for controlling Philips Hue lights. It provides a minimal interface for managing lights and rooms directly from the menu bar.
- Automatic detection of Philips Hue Bridge devices on the local network.
- Displays connection status to the Hue Bridge in the menu bar.
- Allows users to turn lights and rooms on or off.
- Slider-based brightness control for eligible lights and rooms.
- Scene activation grouped by room.
- Simple routine scheduling for wake-up and bedtime actions.
- A custom macOS color picker for color-capable lights, with preset colors inside the picker.
- Remembers the IP address of the last connected Hue Bridge and auto-connects on reboot.
- Multi-device light status synchronization
As a python script:
-
Clone or download the repository to your local machine.
-
Install the necessary Python libraries using pip:
pip install -r requirements.txt -
Run the
app.pyscript:python3 app.py
As a standalone application:
-
Install Py2App
-
Build the app using the preconfigured setup.py file
python3 setup.py py2app -
Launch application by double-clicking app or open via Terminal.
-
(Optional) Move application to application folder and add to Login Items to launch on system startup.
- Launch application/run script.
- On first start, the local machine has to be authenticated to Hue Bridge by pushing the Link button before clicking connect.
- Otherwise, it will attempt to connect to the Philips Hue Bridge automatically.
- If successful, the connection status and your lights/rooms will be displayed in the menu bar.
- Control lights and rooms directly from the menu bar.
- Use the
Favoritesmenu for all-lights-off, all-rooms-on, and resume-last-scene shortcuts. - Use the
Scenesmenu to activate saved Hue scenes by room. - Use the
Routinesmenu to schedule a wake-up or bedtime action for a room. - For eligible color bulbs, use the
Colorsubmenu to open the native macOS color picker; preset colors are available inside the picker window. - Use the
Bridgemenu for connect/reconnect/disconnect actions and the most recent error when one exists.
- Set
HUEBAR_DEBUG=1in your .env to enable rumps debug logging.
- rumps: https://github.com/jaredks/rumps
- phue: https://github.com/studioimaginaire/phue
- zeroconf: https://github.com/jstasiak/python-zeroconf
- hass-hue-icons: https://github.com/arallsopp/hass-hue-icons
This project is licensed under the Attribution-NonCommercial-ShareAlike 4.0 International License - see the LICENSE file for details.
