hyperion.ng icon indicating copy to clipboard operation
hyperion.ng copied to clipboard

Add support for LIFX light bulbs

Open joachimpr opened this issue 5 years ago • 3 comments

Feature request

Please add LIFX support (especially the light bulbs) as is implemented with Phillips Hue.

What problem does this feature solve?

This will allow you to extend Hyperion to other areas of your room creating a better media experience - Don't get me started on the gaming possibilities :-)

What does the proposed API look like?

Not applicable, I think?

How should this be implemented in your opinion?

From an implementation perspective, the same as Phillips hue, but without the bridge. from a technical perspective, I am afraid I would not be much help.

Are you willing to work on this yourself?

I am not NEARLY skilled enough to assist with the development but I would be happy to test and provide feedback.

If there is anything else that I could do, Please feel free to ask. I am happy to provide more information to this request or help where I can. Apologies if there is something that I did wrong on the template. If there is anything I can do to correct/assist, please feel free to ask.

joachimpr avatar Oct 27 '20 12:10 joachimpr

@joachimpr Have you had a detailed look at the REST-API (Hue like) specification? You can only do "120 requests for a 60 second window" which is 2Hz.

https://api.developer.lifx.com/docs/rate-limits

This is normally not the throughput/update frequency users of an ambilight system expect. Also Philips moved to the Entertainment API for that reason.

There is an alternative protocol available which can do (20 request per second) 20Hz, but it is far more complex. https://lan.developer.lifx.com/docs/introduction

Lord-Grey avatar Oct 27 '20 13:10 Lord-Grey

@Lord-Grey would something like this not help remove some of the complexity of the LAN API?

https://github.com/mclarkk/lifxlan

What exactly is required to be able to integrate the lan API into Hyperion?

joachimpr avatar Oct 28 '20 17:10 joachimpr

Hyperion would require C++ code not a python library.

Maybe something more like that: https://github.com/riplatt/LIFX-Dimmer-Switch/tree/896a54b1812f1c05c5dbd603248ca57ec7fcf210/frimware/photon

What exactly is required to be able to integrate the lan API into Hyperion?

My current experience is that for all that UDP-special protocols it is best to have the physical device at hand during development. Therefore, I could help you or someone with LIFX with the framework and you could do the coding and testing....

Lord-Grey avatar Oct 28 '20 19:10 Lord-Grey