npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

homebridge-openrgb

v1.4.3

Published

Control the RGB lighting of your PC components and peripherals with HomeKit.

Downloads

46

Readme

OpenRGB Homebridge Plugin

verified-by-homebridge npm Donate

This plugin allows you to integrate Homebridge with the OpenRGB lighting control software on your PC so that you can control the lighting of your PC's components and peripherals with HomeKit. Each RGB device is added to HomeKit as an RGB lightbulb that you can control with Siri, the Home app, scenes, automations, or however else you interact with your HomeKit smart home.

This solution works with PC hardware from the most popular brands like ASUS, Gigabyte, MSI, Corsair, Razer, Logitech, NZXT, and many more.

Installation

Install OpenRGB on your PC

OpenRGB is a software project that aims to replace the need to use several different RGB lighting control software programs from multiple vendors, allowing you to control all of your PC components' and peripherals' lighting with just one piece of software.

Follow OpenRGB's instructions for installing the software on your PC. Then, follow these instructions to configure OpenRGB to start automatically when you turn on your PC. Be sure to make use of the --server flag so that the OpenRGB SDK server starts on boot too. This plugin interacts with your PC's lighting through that server.

Install this Plugin on Homebridge

If you do not already have a Homebridge setup, follow Homebridge's setup guide to get up and running.

Now, you can install the homebridge-openrgb plugin through the Homebridge UI which will help you install and configure the plugin. Alternatively, install the plugin through NPM with:

npm install -g homebridge-openrgb

Configuration

Configure the plugin so that it knows where to connect to your PC(s) running the OpenRGB SDK server. You can do this through the Homebridge UI or add the configuration to the platforms array in the configuration file at ~/.homebridge/config.json

Configuration Fields:

  • platform (string) - Tells Homebridge to use this plugin. Must be set to OpenRgbPlatform
  • name (string) - A name to label this plugin
  • servers (array) - Each object represents a computer running the OpenRGB SDK server that this plugin should attempt to connect to
    • name (string) - A name for this server
    • host (string) - The IP address (e.g. 10.0.0.2) or hostname (e.g. my-computer.local) that the OpenRGB SDK Server is running on
    • port (integer) - The port number that the OpenRGB SDK Server is set to run on. OpenRGB defaults to using port 6742
  • discoveryInterval (integer) - How often (in seconds) to check if new devices are available to connect to. Defaults to 60 seconds
  • preserveDisconnected (boolean) - Set this to true to have the plugin keep devices that are disconnected from their server. By default, devices that are not connected when their server is queried are removed from HomeKit, which may mess up your scenes if you have devices such as peripherals which are not always connected to your PC
  • suppressConnectionErrors (boolean) - Set this to true to hide log messages about errors connecting to your PC

Typically, a computer's IP address will change periodically, so I recommend using your PC's hostname to configure this plugin's host field. On Windows, you can run the hostname command from the command line to view your PC's name. Your hostname will then be that name, lowercase, with .local appended to the end. Alternatively, you could configure your router to reserve a specific IP address for your PC and use that in the host field.

Example Configuration:

{
  "platforms": [
    {
      "platform": "OpenRgbPlatform",
      "name": "OpenRGB",
      "servers": [
        {
          "name": "John's Computer",
          "host": "johns-computer.local",
          "port": 6742
        },
        {
          "name": "Jane's Computer",
          "host": "janes-computer.local",
          "port": 6742
        }
      ],
      "discoveryInterval": 60,
      "preserveDisconnected": false,
      "suppressConnectionErrors": false
    }
  ]
}