5 releases (3 breaking)

0.4.0 Jan 31, 2023
0.3.1 Feb 9, 2022
0.3.0 Feb 9, 2022
0.2.0 Sep 11, 2018
0.1.0 Sep 1, 2018

#23 in #lan

Download history 9/week @ 2024-07-29 24/week @ 2024-08-05 30/week @ 2024-08-12 18/week @ 2024-08-19 42/week @ 2024-08-26 45/week @ 2024-09-02 68/week @ 2024-09-09 36/week @ 2024-09-16 31/week @ 2024-09-23 13/week @ 2024-09-30 20/week @ 2024-10-07 21/week @ 2024-10-14 39/week @ 2024-10-21 7/week @ 2024-10-28 20/week @ 2024-11-04

95 downloads per month

MIT/Apache

115KB
2K SLoC

github crates.io docs.rs

LIFX

LIFX bulbs are wifi-controlled RGBW light bulbs. The bulbs can be controlled directly by sending packets to them over the LAN, or they can be controlled over the internet via an HTTP API.

This library provides functionality for inspecting and controlling the bulbs over the LAN only.

The LIFX protocol docs can be found here.

lifx-core

This library implements all the data structures and utilities for inspecting and constructing the low-level control packets. It does not deal with the actual sending or receiving of bytes from the network.

Supported LIFX products:

  • Light bulbs
  • Multizone devices (LIFX Z and Beam)
  • Relay devices (LIFX Switch)
  • Tile devices

Note: While this library has support for several different LIFX products, some of them are not tested. Feedback in the form of a github issue would be appreciated, if you find that type of device isn't working correctly.

Higher level library

Eventually this library will also include a higher-level library that will take care of talking with the network, maintaining bulb state, etc. But this isn't ready yet.

License and terms

This library code is licensed under either of:

at your option.

Much of the documentation in this library is taken from the LIFX protocol docs. Using this library to communicate with LIFX bulbs likely binds you to the LIFX Developer Terms.

Dependencies

~0.3–0.9MB
~19K SLoC