Who knows the range of the paramter for HSBK in LSF archetecture?

In LSF there is a function
ControllerClientStatus PulseLampWithState(const LSFString& lampID, const LampState& toLampState, const uint32_t& period, const uint32_t& duration, const uint32_t& numPulses, const LampState& fromLampState = LampState());

Here using a class LampState which includes HSBK members, Who knows what’s range for these 4 members?

* Hue
uint32_t hue;

 * Saturation
uint32_t saturation;

 * Color Temperature
uint32_t colorTemp;

 * Brightness
uint32_t brightness;

There is some information (and some debate, especially about the units of colorTemp) here.


I have seen that, but I am using the lamp white 800, maybe this lamp doesn’t support Hue and Saturation, right? I tested it and found that it only support Brightness and color temperature.

Please correct me if my understanding is wrong.

Right, hue and saturation don’t have any meaning for a white lamp.

And another question. from the App’s perspective, brightness is 1%-100%'s range and color tempreture is 2500k-9000k’s range,

but from the property’s perspective, how to map the value at APP side to the value at the interface “LAMP_INTERFACE_STATE” 's property for brightness and color temperature ?

because I have seen the range of the property of the interface “LAMP_INTERFACE_STATE” is uint32 (0-0xffffffff),
so I mean for example : color tempreture is 2500k, it should map a value into the property “ColorTemp” of the interface “LAMP_INTERFACE_STATE”. Is there a formula for that?

Hi Ppelleti,
Could you please give me the answer for questions above or who else can give me the answer? Thanks.

Apart from my speculation in the previously-mentioned thread, I don’t have anything more to add. I haven’t used the LSF myself; I’ve only used the LIFX-proprietary LAN and Cloud protocols. My brief attempts to digest the Alljoyn docs have led to a feeling that the Alljoyn docs suffer from a problem of high quantity/low quality. For that reason (and the fact that the Original 1000 is not supported), I’ve stayed away from Alljoyn.

As for who does know what’s going on with the LSF, it appears that it might be no one. However, I would hope that LIFX (in the form of Daniel Hall) would be able to explain LIFX’s implementation of the LSF.

The range is 0… Max(UInt32)-1. So you map the values 0…100% for saturation or brightness to that range, or 0…360 for hue. For Kelvin temperature you map 1000K…20000K to that range. This isn’t really documented in the LSF spec - you have to reverse-engineer their test code to figure this out.

Just note that LIFX’s own Win10 app gets the temperature range wrong when using AllJoyn to communicate with bulbs (been letting them know for a while but they never bothered to fix it). I have two apps in the Windows 10 app store (just search for AllJoyn) for simulating and controlling bulbs via alljoyn that should follow the spec.