This project mirrors a Hue entertainment area to the OpenRGB SDK.
Note: I've only tested the Hue side of things, not the OpenRGB side of things. I will test the OpenRGB side of things when my PC with OpenRGB is running again in about 1-2 weeks.
- Copy the example config:
cp .env.example .env- Edit
.envwith your own values.
Example:
HUE_BRIDGE_ADDR=192.168.1.20
HUE_APPLICATION_KEY=your-hue-application-key
HUE_ENTERTAINMENT_AREA_NAME=Example Area
OPENRGB_DEVICE_NAME=Example RGB Controller
OPENRGB_ZONE_NAME=Zone A- Start the sync:
go run .CLI flags can override .env values.
HUE_BRIDGE_ADDRHUE_APPLICATION_KEY
HUE_ENTERTAINMENT_AREA_IDHUE_ENTERTAINMENT_AREA_NAMEOPENRGB_HOSTOPENRGB_PORTOPENRGB_DEVICE_IDOPENRGB_DEVICE_NAMEOPENRGB_ZONE_IDOPENRGB_ZONE_NAMEOPENRGB_AUTO_RESIZE_ZONEHUE_INSECURE_SKIP_VERIFYRECONNECT_DELAYVERBOSE
Press the Hue Bridge link button, then run:
curl -X POST https://<HUE_BRIDGE_ADDRESS>/api \
-d '{"devicetype":"openrgb-hue-sync#example-client"}' \
--insecureEnable manual tests in .env:
HUE_MANUAL_TEST=trueDetect a manual change:
go test -run TestHueAreaDetectsManualChangeWithin10Seconds -vSet the selected area to purple and restore it afterward:
go test -run TestHueAreaCanBeSetToPurple -vThe manual tests require HUE_BRIDGE_ADDR, HUE_APPLICATION_KEY, and either HUE_ENTERTAINMENT_AREA_ID or HUE_ENTERTAINMENT_AREA_NAME to be set in .env.
go build ./...