LIFX Developer Zone

What are you building?


#1

In the LIFX office we love hearing about and testing applications made by our users. We would love to hear about what you are building.


#2

#3

@daniel_hall https://github.com/kz/panel-for-lifx

Learning AngularJS and Chrome apps by making a panel for LIFX lights!


#4

A customizable Alfred-Workflow to control your LIFX light bulbs: https://github.com/0x6368/lifred


#5
  • .NET Library: https://github.com/dotMorten/LifxNet
  • A generic light switch app (works with any smart bulb I can get my hands on)
  • Raspberry PI / Windows 10 Home automation controller - AllJoyn based so built a LIFX-AllJoyn device bridge, since only your 800 bulb supports AllJoyn.

Looking for C# Lan Protocol Code
#6

I’m either writing a really simple LIFX control script in order to teach myself Python, or I’m teaching myself Python in order to play around with my LIFX bulbs. I can’t decide which.

Ultimately what I really want to do is somehow mash together frakman1’s LIFXScreen script (https://github.com/frakman1/lifxscreen) with phoniclynx’s NateKodilifx plugin for XBMC/Kodi (https://github.com/phoniclynx/NateKodilifx), to allow me to dynamically alter the light colour to match the screen when I watch a movie. And ideally, I’d like to use the LAN protocol rather than the HTTP API. But that’s well beyond my skill levels at the moment!


#7

These are all excellent!

@ThePurpleK The Chrome panel is something I’ve been watching pretty closely, I always wanted to make something similar for Firefox.

@0x6368 If I didn’t use a Linux machine I would be all over the Alfred workflow. I imagine a few people in the office here (we are pretty mac-heavy) will be using it soon.

@dotMorten I think the .NET library is the first library I’ve seen written from the LAN protocol documentation. I’m thinking of setting up a page with a list of libraries, would you be happy to be included on there if we do?

@rasputin303 I’m a Python programmer myself! Feel free to reach out if you have any trouble or need advice.

Keep em coming!


#8

@Daniel_hall By all means add it to your list.


#9

It’s written using AngularJS, so I can swap out a few lines of code and it can run using just HTML5 without Chrome dependencies. I’ll split it into two branches and host the HTML5 version somewhere once this is done.


#10

I have been working on a lifx physical switch to use as an alternative to the ‘real’ light switch on the wall so the lifx smarts still work and it can still let me know when the ISS passes overhead or turn on for me when i get near home automatically. It is also because others in my household simply prefer a physical switch to reaching for their phone. I have been waiting for lifx to release a physical wall switch that is fairly cheap, but I thought I should see how hard it is myself :slight_smile:
I know many versions of this have been built by others already but all that I can think of use either expensive hardware (relatively expensive for me anyway considering it just emulates the behaviour of a ‘dumb’ switch but with wifi) or require a bridge i.e. a computer server running scripts to do the actual communications with the lights.

I am a cabinet maker, not a software engineer so my coding is very messy, poorly documented and borrows allot from others code examples (all open - source but if you spot anything that upsets you just let me know and I will try to rewrite it!).
I chose to use ESP8266 as they are very cheap (I think $8.50 USD for the v0.9 Nodemcu dev board that I used - much cheaper for the ESP8266 module alone! and a few dollars for a tiny LiPo 260mah battery and thats it) and I use nodemcu firmware which uses a lua scripting language simple enough for me to get my head around but that can also be very powerful (in the right hands).

The code is all on Github here and a video of it working is here.
Have a play with it and tell me what you think. It needs the latest dev version of nodemcu for its larger RAM availability (for the web server for configuration) and the scripts need to be compiled to .lc when they have been uploaded to the ESP8266. If you have any questions, just ask. I would LOVE to see lifx produce something like this but obviously more robust… still cheap though! great for luddites and those who like their tech to be ‘invisible’ :wink:

Thanks for the brilliant lights,
Cheers Felix

@johnc
@geekscape


#11

I’ve written a nice Ruby client for the HTTP API. You can clone it from GitHub: https://github.com/tatey/lifx-http-client-ruby

I specifically wanted something that didn’t have any external dependencies (It wraps Net::HTTP) and allowed me to work with real objects that raise a NoMethodError if I call the wrong thing.

It treats everything as a collection making it easier to consume the HTTP API. If you get a bad response it won’t raise an exception unless you ask it to. If Ruby is your thing, give it a shot and let me know how you go.


#12

I wrote a node.js implementation that supports firmware 2.0. The code is on Github: https://github.com/MariusRumpf/node-lifx.
Existing solution for node.js don’t seem to be updated any longer and I wanted to write test driven node.js project for a while.


#13

@mariusrumpf Let me know when you think its ready. I’m preparing a list of third party LIFX libraries and would love to add it to the list.


#14

I’m building some controls between Arduino & LIFX light.

I have been using NodeJS as the linker, but the lifx* library for Node isn’t very compatible with Firmware 2.0, I came here looking to see what options I can use now.

I’m trying to figure that out, but there’s doesn’t seem to be any javascript/node examples here yet.


#15

We only just released the LAN Protocol recently so give it some time. I’m sure someone will start work on one soon.

If you want to take it on, feel free to create a thread about it and I’ll try to help you out as much as possible. You might also be interested in the thread explaining how to build a LIFX packet.


#16

fingers crossed

Thanks, i’ll take a look at that and see what I can figure out.


#17

I design & build a few entertainment apps, including Light DJ Pro. I’m thrilled with the performance of LIFX over competing bulbs!


#18

I’ve been working on some front-facing apps for controlling lights through Pebble smartwatches and web browsers, both using the HTTP API.

LIFxPebble is built using Pebble.js, and it has support for setting random colors, presets, toggling bulbs and I recently built group support for it. I think right now it is quite stable but if anyone wants to help me test it that would be great.

lifx.space is a web app built using Angular, Angular Material and is powered by github.io. It still needs some work done, as it needs group support and a few bug fixes which are listed on its Github and which I’m hoping to be able to get to soon. Pull requests are also welcome and suggestions for further improving the app.


#19

The forum wouldn’t let me post more than two links at once, so here are the Github repos for both apps:


#20

@LightDJPro We love Light DJ Pro! One of the people in the LIFX office recently used it at his honeymoon for the dance floor. :smiley:

@jorgerdz lifx.space is what I suggest to people who want control of their bulbs via a PC or Mac, its really well built and fits perfectly in the niche left by our official apps. Regarding the post link limit, don’t worry as you participate more in these forums it will automatically be lifted.