New Hue light level sensors are in fact lux sensors: please adjust accordingly

After upgrading to 92.2 (went flawlessly btw, kudos to the HA team!) we finally have native Hue sensors, or at least a few of them.

There is a bit of a ,mixup though so it seems, because the sensors which are called sensor.X_sensor_light_level are in fact Lx sensors. Which is reflected in the unit of measurement.
Might be a great idea to have them called sensor.X_sensor_lx. (or Lux)

While changing that, I hope the rounding gets a bit of attention, because they are mighty precise:

11

opposed to the sensors made by @robmarkcole 's wonderful CC,

18

which is still not beaten by this integration, and running fine alongside the new native sensors as a bare necessity in my Home automation.

see: https://github.com/home-assistant/home-assistant/pull/23309 for GitHub Pr on this

Lux is the measurement for level of light, no?

not in terms of Hue hub, where light level is the raw level being recorded and lx is derived from that calculating: lx = round(float(10 ** ((lightlevel - 1) / 10000)), 2)

this is from the Hub:

"42":{"state":{"lightlevel":22686,"dark":false,"daylight":true,"lastupdated":"2019-05-06T05:03:21"},"swupdate":{"state":"noupdates","lastinstall":"2019-03-12T16:08:38"},"config":{"on":true,"battery":100,"reachable":true,"alert":"none","tholddark":13958,"tholdoffset":7000,"ledindication":false,"usertest":false,"pending":[]},"name":"Hue outdoor ambient light sensor","type":"ZLLLightLevel","modelid":"SML002","manufacturername":"Philips","productname":"Hue outdoor ambient light sensor","swversion":"6.1.1.27575","uniqueid":"redacted","capabilities":{"certified":true}},

this is the new integration sensor:

09

I don’t understand your problem. You want to know the level of light in the room, it is measured in lux, and that’s what the sensor outputs.

Why do you want to complicate it by getting some raw value from the hue hub and having to use a template to get the value you want?

no its the other way round. following the Hub the lightlevel is (the only) raw data, and as such a sensor called sensor.lightlevel (as is now in good use with the CC) should record that.

Lx isn’t raw data, but is calculated based on the raw data of lightlevel, and as such already perse a templated sensor.

I am merely suggesting to keep from confusion, and call a lightlevel sensor sensor.lightlevel, and a lx (lux) sensor sensor.lux…

put differently:

  • lightlevel is (measured in) lightlevel raw data
  • lux is measured in calculated lx value based on lightlevel.

rounding that using lx = round(float(10 ** ((lightlevel - 1) / 10000)), 2) would be preferable. The ‘raw’ data of the current integrated ‘Lux’ sensor isn’t raw data in the first place, so no use stating to keep the raw data for that at all.

this should of course be done within the integration, as is now done in the CC also.

There isn’t any confusion, it’s a light sensor that returns the value in lux, which is the measurement people use for measuring light levels.

Returning this in several different values would just make it more confusing.

well, I understand what you’re saying. But I beg to differ. This new integration isn’t calling the sensor light_sensor, which would be an valid alternative too, per your suggestion. It is called sensor.lightlevel however, which in Hue language is a reserved word for the raw data on the Hub. And not some loose naming convention for HA users.

compare it to the windspeed discussion on the weathercards. Some report in km/hour, some in meters/second, and they all are called windspeed. causing all sorts of errors in the current weather cards and sensors.

some people might use lx for light_level. others use light_level for lightlevel, and use Lx for lux.

since this new sensor is calculating its lux value from the metered raw data lightlevel, (it must do that since there is no other raw data available on the Hue hub) I just feel it would be best to hold to that default naming and not mix definitions or names.

And present it in a usable format, and don’t use 15 decimals…

Hi All,

I too like the native hue sensor integration.

My current card right now shows this light level…

outdoor light level
6 minutes ago
86.73612184014637 lx

As @Mariusthvdb said 15 decimals (although I have 14 it seems, a little jealous of his extra decimal!)

What to do, how do I round this off while still using this native integration, obviously it’s ridiculous to display the value with that level of precision?

any tips?

Thanks Guys

Am I understanding the OP correctly? You don’t like the fact that the sensors name themselves “sensor.light_level” for instance? And want them to be called “sensor.lux” for example?

In which case… just rename them to whatever you want. It’s that simple.

no it’s not, because the HA system/component does this, it is not a manual setting.

I’m still not getting your problem.

My Hue motion sensor has an entity for the light level.

It is currently named “sensor.kitchen_light_level” and a friendly name of “Kitchen Light Level”.

I can click on it and rename it to whatever I like. For instance I could change it to “sensor.kitchen_light_level_lx” or “sensor.kitchen_light_level_lux” and chnage the friendly name to “Kitchen Light Level Lx” or “Kitchen Light Level Lux”.

Just change the entitiy id and name to whatever you want!

Hi,

Well, if that level is lux, I’ve got a problem at home…I have 2 of these same sensors, one in the back yard and one in the front. The front one is always 0 lux. The back one shows 2500-5000 lux. The lux reported by the Z Wave multi-sensors I have is like 25-50. But, maybe this is UV?

I’ll have to get the 3 outdoor motion sensors I’ve got in the same place, with the same light shining on them to see if they all work. But, I expect the front-side one is messed up somehow, as it always reports “0”.

Lux in the official SI sense is: “measuring luminous flux per unit area” https://en.wikipedia.org/wiki/Lux and seeing as how these sensors and my multisensors list “lx” measurement, we can’t know over what area they measure each lx measurement. Can we? It would have to say “lx at 1 meter” or something, no?

Regards,

Larry

Sorry to post on an old topic but this is causing me some confusion and I can’t seem to find information anywhere else.

I’m trying to use the light level/lux as a condition in automations but I see examples online of people putting this number in the single digits (in HomeKit and HA my lux never seems to show as anything over 10ish and, in fact, don’t seem to change from 1 until there’s quite a significant change) as well as numbers in their tens of thousands (if I check the drop down attributes, my sensor that is 10 lux has a “light level” of 10,000ish).

I read your explanation of how these are worked out and yeah, fine… but which do I use in the condition (device>light level below)… because I’ve tried both and I’m still not sure.

post your automation and we can see what your issue is

want to close my own FR here… as I am fine with the current state of affairs.