LIFX Developer Zone

[Testers Needed] Razer Chroma for LIFX App

Hello LIFX Developers!

I’ve created a LIFX app that integrates with Razer Chroma to display RGB lighting from your favorite games on LIFX hardware.

That lets you see RGB lighting for numerous Chroma-enabled games on your LIFX hardware.

Here are some popular Chroma-enabled games.

The typical user experience with Chroma looks like this.

I used the LifxNet library from and I’ve tested on my own A19 hardware which works great.

Now I’d like to now how it works for other users. I called it the “Chroma Broadcast Configurator” which is a WPF app that supports LIFX and it’s packaged in a nice installer.

The way it works is the LIFX .Net library detects LIFX hardware on your network. In the app you can associate hardware to the Razer ChromaLink indices. The CL0 index is for the base color. The rest of the RGB leds are CL1 through CL4. This lets you assign an RGB index to your LIFX hardware. Now just launch a Chroma-enabled game and the RGB lighting will display on your LIFX hardware with the max frame rate of 20 FPS. RGB lighting will only display on LIFX hardware when the application is running.

(Pay no attention to the UI, I haven’t skinned it yet. Just try the functionality.)



If you don’t have a Chroma-enabled game, I also have a web page that can play sample RGB effects.

If you have LIFX hardware and are interested in testing, I’d like to get your feedback and hear how it works for you.

One other dependency is you’ll need Razer Synapse 3 installed and also the Chroma Connect Module installed (which should be the default).

The app is also compatible with the Chroma Visualizer module within Synapse.

Testers will also need at least one Razer device from the compatible hardware list.


You can DM on Discord as well. “Tim Graupmann#0611”

Speaking of Discord, you can also get LIFX notifications for Discord events with the “Chroma for Discord” application.

Just curious, why do you have to have a chroma-compatible device? Is that something to do with how you’ve set up the integration?

@ egosapien Yes, currently requiring one Razer Chroma-enabled device is a requirement for the Connect API that I used. With that you can see game Chroma effects on your LIFX hardware. :slight_smile:

Guess I need to go get a new keyboard :sweat_smile:

Looks like a neat project! I’ve talked to Razer guys before about integrating LIFX but they just “added it to the list for future consideration”, I guess Hue is just more popular. Or maybe just LIFX never reached out to Razer about it?

I have 3 bulbs, a Tile and multiple Razer Chroma devices, sadly unless you’re willing to share source or have a github repo, I’m afraid I won’t be installing any .exe files - it’s just a personal thing.

Good luck with testing!

@egosapien, I believe if LIFX would reach out to Razer, they’d provide everything LIFX devs need to get started and help with the integration. They’ve already integrated Hue in a way that lets gamers control lights and sync them with other RGB hardware on their PCs which is quite awesome

iirc it’s free, just some agreements between companies etc. Native support would be absolutely amazing

Not wanting to run an installer is a popular thing. I hear the same thing from the Mixer, Twitch, and Discord 3rd party apps that I did.

Would you be open to install it from the Windows store if I put it in there?

It’s in the prototype stage right now, but after I add light strip support maybe I can add it to the store. (For freeeeee)

I tried the installer and I it finds my LIFX devices, but I get a “CHROMA NOT FOUND” message in the Chroma Broadcast Configurator.

You need at least one Chroma compatible device in order for Chroma events to be found.

  1. Install Synapse 3
  2. Log in with your RazerID or guest.
  3. Make sure the Chroma Connect module is installed.
  4. Connect a Chroma-enabled device.
  5. Launch the app for Chroma to be detected.

Turns out I just needed to re-install Synapse. Working now. Nice work, I’ve been wanting this ever since I saw support for Hue.

I’m super in. I have a bunch of Razer gear, and several Lifx bulbs. The one I’m excited about pairing up is a Lifx Z strip that runs across the back of my desk.

I’m not currently home for proper testing, but I can tell you about my progress so far: I installed your program, it listed all 5 of my Lifx devices, but said “Chroma not found”, I checked my Synapse 3 install and sure enough I hadn’t installed the Chroma Connect plugin. I installed that, restarted your program and now it shows Chroma Enabled.

I have Overwatch. I have 3 Razer devices that are supported by Synapse 3 and one device that is not. I do not have Synapse 2 installed at all. I have 5 Lifx devices; 3 Lifx Z strips and 2 BR30 bulbs. One of the Lifx Z devices contains multiple Z strips chained together while the other two are just a single strip each.

I’m excited to get home and test this. Let me know if there’s any particular thing(s) you would like me to test. I have more Synapse-supported gear coming tomorrow, including MSI gaming hardware that I understand is compatible with Synapse via MysticLight, and the Razer edition Lian Li PC-O11 case, in case that factors into your testing somehow.

Excellent! More hardware is better. Chroma SDK games will support the full set of Synapse 2/3 devices. So you should be good seeing your games work across everything.

I have a second strip and more hardware coming. Currently the light-strips show a single color. Next I’ll add the multiple zone support.

Alright, everything seems to be working. I selected CL1 in your program for the Lifx Z strip associated with my desk accent. I then launched Overwatch, went to the Practice Range and started selecting different heroes. As I chose each one, the color of my Razer gear changed to match each hero selection, and so did my desk accent!

There are a few heroes’ colors that weren’t very bright on my desk accent, but I noticed a similar dimness on the keyboard color, such as Orisa and Ashe. There were a few colors that didn’t seem to match exactly too. Is Winston purple? His color looks like a very pale blue / gray on my keyboard, but it’s definitely purple on the wall from the Lifx. I guess I should also note the wall I’m viewing these colors on is a light yellow color, so that could distort the colors a bit. I can take photos if that’s helpful.

I tested a few other things, like charging an Ultimate. My keyboard flashed the white ripple, but there was no affect on the Lifx. I expected that from your description, but wanted to report that it’s working as intended I suppose :stuck_out_tongue:

I have not tested the CL2-5 buttons in your program because I don’t fully understand what they do. Your description makes it sound like it matches the color like CL1, but only displays the red channel, the green channel or the blue channel when lighting the device? This is just my ignorance; I’ve not had any ChromaLink compatible devices.

ChromaLink is 5 virtual LEDs represented in the image.


CL1 is typically the base color.

CL2 is LED 2.

CL3 is LED 3.

CL4 is LED 4.

CL5 is LED5.

There’s now a color picker to assign a color when the app starts and exits.

The GAIN boosts the brightness from 1X to 10X.

1 Like

This is super cool, I was actually looking into implementing something similar but was having trouble getting the Chroma Broadcast API half of it working cleanly, I’d love to see how you went about that. I can help with testing as well, I downloaded the program but it doesn’t detect my lights, it looks like it’s broadcasting the LIFX service discovery packets on the wrong network interface (I have several on my machine).

Ah yes that’s a good use case. I have two machines with lights on different networks. So it seems like you have to be on the same network. I’ll look into detecting more…

I worked around it by adjusting my routing table to ensure that the metric for the interface the lights were on was lower than the other one, which worked great, but ideally it would broadcast on every interface. Looks like a limitation of the LifxNet library though, might be worth a PR… or you could hack around it with reflection maybe (see for some good information on how to go about it, in either case)