hyperb1iss / signalrgb-homeassistant

Transform your smart home lighting with the power of SignalRGB, now integrated directly into Home Assistant!
Apache License 2.0
7 stars 1 forks source link
arr-gee-bee automation full-rgb home-assistant integration lighting-controller lighting-effects python rgb signalrgb
# 🌈✨ SignalRGB Home Assistant Integration [CI/CD](https://github.com/hyperb1iss/signalrgb-homeassistant/actions) [](https://github.com/custom-components/hacs) [License](https://opensource.org/licenses/Apache-2.0) Transform your smart home lighting with the power of SignalRGB, now integrated directly into Home Assistant! [Features](#-features) • [Requirements](#-requirements) • [Installation](#%EF%B8%8F-installation) • [Configuration](#%EF%B8%8F-configuration) • [Usage](#-usage) • [Development](#-development) • [Contributing](#-contributing) • [Support](#-support)

🌟 Features

Want more features? Vote for this SignalRGB feature request!

📋 Requirements

🛠️ Installation

HACS Installation (Recommended)

  1. Ensure that HACS is installed in your Home Assistant instance.
  2. In the HACS panel, go to "Integrations".
  3. Click the "+" button in the bottom right corner.
  4. Search for "SignalRGB" and select it.
  5. Click "Install" and wait for the installation to complete.
  6. Restart Home Assistant.

Note: This component isn't in the official HACS repository yet. You can add it as a custom repository:

  1. Go to HACS
  2. Click on the three dots in the top right corner
  3. Select "Custom repositories"
  4. Enter "hyperb1iss/signalrgb-homeassistant" for the repository
  5. Select "Integration" for the category
  6. Click "Add"

Manual Installation

  1. Download the signalrgb folder from this repository.
  2. Copy the folder to your custom_components directory in your Home Assistant config directory.
    • If the custom_components directory doesn't exist, you'll need to create it.
  3. Restart Home Assistant.

Enable SignalRGB API

Ensure that the SignalRGB API is enabled and accessible:

  1. Open SignalRGB on your Windows PC.
  2. Go to Settings > General > Enable HTTP API.
  3. Note the port number (default is 16038).
  4. If necessary, configure your Windows firewall to allow incoming connections on this port.

⚙️ Configuration

After installation, add the SignalRGB integration through the Home Assistant UI:

  1. Navigate to Configuration > Integrations.
  2. Click the "+" button to add a new integration.
  3. Search for "SignalRGB" and select it.
  4. Enter the hostname or IP address of the PC running SignalRGB and the port number.
  5. Click "Submit" to add the integration.

🚀 Usage

Once configured, SignalRGB will appear as a light entity in Home Assistant. You can:

Example automation:

automation:
  - alias: "Gaming Time"
    trigger:
      platform: state
      entity_id: binary_sensor.gaming_pc_status
      to: 'on'
    action:
      - service: light.turn_on
        target:
          entity_id: light.signalrgb
        data:
          effect: "Cyberpunk 2077"
          brightness: 255

You can also control the brightness using slider controls in the Home Assistant UI or by calling the light.turn_on service with a brightness value:

service: light.turn_on
target:
  entity_id: light.signalrgb
data:
  brightness: 128  # Values range from 0 (off) to 255 (full brightness)

🎨 Enhance Your UI with hyper-light-card

To take your SignalRGB control to the next level, check out the hyper-light-card for Home Assistant! This custom card provides a beautiful, intuitive interface for controlling your SignalRGB setup, featuring:

To install hyper-light-card:

  1. Add it to HACS as a custom repository (Frontend category)
  2. Install it through HACS
  3. Add a new card to your dashboard and select "Hyper Light Card"
  4. Choose your SignalRGB entity

Experience the perfect blend of functionality and aesthetics with hyper-light-card and SignalRGB!

🛠 Development

This project uses Poetry for dependency management and packaging. To set up the development environment:

  1. Install Poetry
  2. Clone the repository:
    git clone https://github.com/hyperb1iss/signalrgb-homeassistant.git
  3. Navigate to the project directory:
    cd signalrgb-homeassistant
  4. Install dependencies:
    poetry install
  5. Activate the virtual environment:
    poetry shell
  6. Install pre-commit hooks:
    pre-commit install

Useful Commands

🤝 Contributing

We welcome contributions to the SignalRGB Home Assistant Integration! Here's how you can help:

  1. Fork the repository
  2. Create a new branch: git checkout -b feature/your-feature-name
  3. Make your changes and commit them using Gitmoji: git commit -m ":sparkles: Add amazing feature"
  4. Push to the branch: git push origin feature/your-feature-name
  5. Submit a pull request

Please ensure your code adheres to our style guidelines and passes all tests.

🆘 Support

📄 License

This project is licensed under the Apache License 2.0 - see the LICENSE file for details.

⚠️ Disclaimer

This integration is not officially affiliated with or endorsed by WhirlwindFX or SignalRGB. Use at your own risk.


Created by [Stefanie Jane 🌠](https://github.com/hyperb1iss) If you find this project useful, [buy me a Monster Ultra Violet](https://ko-fi.com/hyperb1iss)! ⚡️