Skip to content
Switch branches/tags

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time


PHP library to control the Philips Hue lighting system. Started out as a fork of the unmaintained phpHue class ( and ended up as a complete rewrite.

Getting Started

The src/ directory contains the huephp classes and all necessary functions for interacting with the Hue hub.

Additionally, you can easily require huephp as a dependency using composer

php composer.phar require muesli/huephp ~1.0

Check out the "samples" directory. You'll find a few demos, showing you how to interact with huephp. It uses the PEST library to access Hue's RESTful API, but as a user of huephp, you don't need to worry about the details.

hue command-line tool

bin/hue is a command line lighting system controller.

    -i [Hue bridge's ip]

  If you don't already have a valid registered key for this Hue bridge:
    -g [register a new key with the Hue bridge]

  Once have a registered key, you need to specify it with -k:
    -k [valid key that is registered with your Hue hub]

  Use it in combination with one of the following parameters:

    To get information from the bridge:
      -f [fetch full state from Hue hub]
      -c [check light states: returns 0 when a light is off, 1 when on]

    To control the bridge:
      If you don't specify a light number, bin/hue will target all bulbs:
        -l [light number]

      Turning a light on or off:
        -o [0 for turning the light off, 1 for turning it on]

      To set a new color, pick one of the following options:
        -n [color name (see below)]

        -h [hue in degrees on the color circle 0-360]
        -s [saturation 0-254]
        -b [brightness 0-254]

        -t [white color temp 150-500]

      Additionally options are:
        -r [transition time, in seconds. Decimals are legal (".1", for instance)]
        -e [command to execute before changing light setting]

You need to specify an ip (-i), a key (-k) and at least one of the following options: -h, -s, -b, -t, -o or -n. If you don't specify a light, it'll set the values you specify on all of them.

If you don't have a key yet, you can register one by calling bin/hue with -g.

You can turn lights on or off with the -o switch. Any other parameter implies '-o 1'. In other words, if you specify any other parameter when the lamp is off, we'll turn it on for you.


The '-n' switch takes a one-word name for a color, and sets the selected lights to that color. It has a small list of predefined color names, and simply doesn't do anything if you give it a string it doesn't know. It currently knows red, blue, purple, green, coolwhite, and warmwhite. A '-n' parameter may be overridden in part by other parameters. For instance, "-n red -s 50" will give you a pastel red, and "-n blue -r 10" will produce a 10-second fade to blue. Note that "-n red -h 200" will override the redness of the red command with a hue of 200, which is purpleish, but it will inherit the full saturation and brightness of the "red" preset.


PHP library to control the Philips Hue lighting system





No packages published

Contributors 4