basnijholt / adaptive-lighting

Adaptive Lighting custom component for Home Assistant
https://basnijholt.github.io/adaptive-lighting/
Apache License 2.0
1.9k stars 136 forks source link

Calibrate brightness of lights #102

Open tnunamak opened 3 years ago

tnunamak commented 3 years ago

The idea here is to allow a user to define a scaling factor for the range of an individual light's brightness.

I love how this integration manages the brightness of my lights automatically throughout the day. For some reason, one of my bathrooms has as many lights as my living room. I would like to be able to bias the bathroom lights to be dimmer and/or bias the living room lights to be brighter.

spencerthayer commented 3 years ago

I have 60w and 100w bulbs spread throughout my house, it would be nice to be able to ensure that the 100w bulbs don't outshine the 60w bulbs.

kreene1987 commented 3 years ago

Couldn't you just set up a second integration for the lights that you want dimmer and set the brightness max accordingly? That's what I understood the purpose of multiple parallel integrations to be (any unique setting).

tnunamak commented 3 years ago

Sure, that's possible, but not practical for anything more than a couple of different configurations--I have multiple rooms with multiple ambient and fixture lighting differences. It's made even more unwieldy when you already have split integrations for another purpose (for example, I have two--one that uses RGB mode at night and one that doesn't during the day).

seanmccabe commented 3 years ago

I'm running 7 different switches, mostly for this reason, as different number of lights in each room and some rooms need more light than others. In each case just add the switch and set the min and maximum brightness.

kreene1987 commented 3 years ago

I will also add that for this reason I set my Inovelli dimmers to all have the same min brightness at 1 (by raising the min brightness setting). Not sure if you have dimmers that can do that or not?

Not saying it's a bad request, just saying there are MANY workarounds.

tnunamak commented 3 years ago

@seanmccabe creating a different config by room is possible. In my case that would mean about 20 different configurations (~10 rooms x 2 modes for day & night). That's a lot, especially if there are common configuration updates to make like changing a color temperature setting.

@kreene1987 that's a good idea but I'm using smart lights which must be fully powered.

seanmccabe commented 3 years ago

@seanmccabe creating a different config by room is possible. In my case that would mean about 20 different configurations (~10 rooms x 2 modes for day & night). That's a lot, especially if there are common configuration updates to make like changing a color temperature setting.

It's not too many really, I'm likely to get to 10+ once additional bulbs arrive, and some I split too as the room as lights on different switches, so sometimes might want the lights brighter than otherwise. They are pretty much set once and forget. Not sure why you'd need to adjust the color temp, it should be set, forget, especially when it's just a max and min. But if it's a common value, you can use your IDE to select all of the same value, replace in one swoop. Or use the secrets file to store a bunch of common settings and import into the config where it needs to go. Managing lots of these switches together is much easier from yaml than the gui. Would recommend going this way for managing multiple switches.

kreene1987 commented 3 years ago

I'm really confused on 2 configurations per room. What isn't working with the single integration? Are you generally aware of sleep mode?

I also run 1 instance per UNIQUE set of settings, which for me adds up to 6 instances. It runs flawlessly, I have made like 2 changes ever (bedrooms I limit to 5500K instead of 6500K) and it was painless, took 5 mins. Perhaps I am missing the point of your request... alas I think the capability to do what you want is already there and implementing device-specific min/max calibration would just be a different way of skinning the same cat.

That said, I could eliminate 2 of my 6 with this, as 2 of them are identical to others EXCEPT for the min level being 30 instead of 1.

tnunamak commented 3 years ago

@seanmccabe I take your point. I don't expect to make changes to the configs often, and so it's good that it's possible at least, even if not convenient.

@kreene1987 I am using RGB mode at night only, see https://github.com/basnijholt/adaptive-lighting/issues/36#issuecomment-724777021

RubenKelevra commented 3 years ago

Hey @tnunamak,

those two tickets are related:

Would your use-case be solved, if you can shift the percentage values accordingly and adaptive-lighting would work with a target brightness for a room, confirmed by a brightness sensor, rather than with a percentage as a target?

This would mean, yes your 100W bulbs would still power to more than 60W, but only if the brightness in the room can't be met by just putting all on 60W.

RubenKelevra commented 2 years ago

I'm currently planning version 2 of this software. This is probably going to be fixed with it.

I would still like to get a response to my previous comment. Thanks!

Keep this ticket open until you can verify that it's properly working in the upcoming version 2.

kreucher commented 1 year ago

brightless sensor feedback approach is interesting, but for me at least would not be practical as I don't have (or really want) a lux sensor in each room, and critically, i also have multiple lights in the same rooms that for various reasons are either too bright, or too dim.

and btw, usually the issue isn't solvable with swapping out the bulbs as desired brightness during the day and dim profiles at night can vary. example can lights above the couch are necessary to have very bright during day, but quickly get annoying after sunset. need like 50% brightness curve there vs other bulbs in the same room (lamps etc). also just hard to find bulbs that look good, have nice light, and also dim well :)

fwiw i used to use HomeSeer and wrote a plugin for this purpose, and having an ability to override per light both the (a) min dim level and (b) dim adjust factor (simple constant like 0.8 or 1.2) worked out super well. could be a service call even, similar to "change_switch_settings" but instead "change_light_settings" targeting individual lights, then folks could set a bunch of per light settings and even change them in automations.

i know i can create multiple AL switches, but as others have pointed out this gets messy quickly for anything more then a few lights. for reference, i had about a dozen overrides in my old system.

love the integration btw!

tnunamak commented 1 year ago

@RubenKelevra sorry for not getting back to you--I would certainly try using a lux sensor feature, but would prefer it if I didn't have to and I don't love the hardware dependency it adds

th3w1zard1 commented 1 year ago

@tnunamak hello!

You should be grouping all lights you plan to adapt separately in their own configuration. That'll allow you to utilize change_switch_settings introduced in 1.8.0 to get the desired result you're seeking. 'V2' is not a planned release anymore as @RubenKelevra seems to have left the project about a year ago. Please see https://github.com/basnijholt/adaptive-lighting/discussions/462 for more information.

basnijholt commented 7 months ago

[Copy pasting this message in a few recent open issues]

I just wanted to take a moment to express my heartfelt thanks to everyone that is active in this repo. Your contributions, from answering questions to addressing issues, have been invaluable. It's amazing to see how supportive and helpful our community is!

Adaptive Lighting is all about enhancing your living spaces with smart, sunlight-responsive lighting. We've had quite a few discussions and open issues recently, and I see this as a positive sign of our community's engagement and growth. If you come across anything in the documentation that's unclear or if you have suggestions for improvement, please don't hesitate to share!. Your feedback is crucial for making Adaptive Lighting better for everyone.

On a personal note, I've recently welcomed twin boys into my family, which has been an incredible and life-changing experience. As you can imagine, my time is now more limited, and while I'm doing my best to keep up with the project, there may be delays in my responses. I appreciate your understanding and patience during this time.

Rest assured, I'm fully committed to addressing any bugs, especially those related to new Home Assistant updates, as swiftly as possible. I understand that many issues may stem from hardware limitations or misunderstandings about things like Zigbee groups. Your continued support and collaboration in helping each other out not only strengthen our community but also enhance the Adaptive Lighting experience for all.

Thank you once again for your understanding, patience, and support. Let's keep our houses well lit and adaptive for maximal enjoyment of life! 🌞🏠🌙

RubenKelevra commented 7 months ago

@basnijholt that's great news! Hope you take all the time you need, and a little more. I'm sure we all can agree that technical issues can wait a bit longer for a fix, than any family matters. :)