为什么这不是一个选择?

我知道有设定的亮度服务可以设置光线,假设50%并设置过渡时间。
但是,为什么如果需要,为什么没有一个选项可以更早停止过渡时间。

假设我有一个按钮,当我再次单击按钮时,我想点击光线时要调暗光线并在调光级别上停止。

When using ZigBee buttons, it sends an event when I hold down the button and an event when released. I want it to dim the light smoothly until I realise the button. (Read SMOOTHLY: not 5-10% every second, like the workaround with scripts, many has resolved to)

我发现它唯一的方法是通过保持直到释放来逐渐变暗/亮光,这是制作自身称为脚本的脚本,直到被取消为止。这不是我想要的。Firstly because it’s in no way or shape a smooth transition to change a lights brightness by 5% every second, and second, that is a much too complicated way of making this happen, since I have tons of lights, I suddenly need many automations and many scripts, just to brighten/dim a single light source.

不幸的是,在这种情况下的答案是:这是因为灯/系统的制造商。19463331伟德国际Home Assistant向例如Hue Hub,Zigbee Gateway,Z-Wave Network或一些云发送信号,以提供数百个不同的灯光家庭助理支持中的任何一个云。19463331伟德国际家庭助理不是执行过渡的人,大多数人不支持中断或停止过渡。

但是我知道DeConz有一个工作解决方案,因为我有DeConz时使用了它。

这个人有一些示例自动化,可以使用DeConz数据来完成我想要的工作。

But since I switched to ZHA, because it supports more devices, this solution does not work.

我确实找到了一种骇人听闻的解决方案,那是将命令发送到灯光的Zigbee群集,打断了调度的过渡。我不记得自动化代码,而我的HA实例目前已经下降了,所以不能举例说明,我在论坛上找到了它。但是该解决方案也很糟糕,因为HA需要花费一些时间才能知道中断后光的正确亮度值。

但是DeConz的示例很好,从来没有问题。

但这正是问题,对吗?有些确实有效,有些则不工作。ZHA可能是可能的,但最后,它永远不会与您的描述一致。例如,我们无法控制色调或宜家集线器的行为。

但是我不使用轮毂,我使用Zigbee加密狗和ZHA。
And since DeConz has figured out how, why can ZHA not implement a similar command?

在另一种看法上,不能由家庭助理而不是光来处理。19463331伟德国际

如果HA有一个自动化以保持光线增加/减小命令,以将光亮度递增x每x毫秒x递增,则可以将光线递增,直到达到指定的亮度,最大亮度,或者直到将另一个命令发送到HA,该命令被送往HA,该命令告诉HA,停止发送增加/减少命令?

2 Likes

这也不适用于许多设备,例如,色调仅允许每秒X数量的请求。

2 Likes

很公平。但是我仍然无法弄清楚为什么ZHA无法像DeConz那样实现函数,因为他们已经弄清楚了。因此,显然有一个解决方案可以至少用于Zigbee灯。ZHA不是家庭助理的本地人吗?19463331伟德国际因此,在他们的球场上实现了这一实施。

我不记得我最初找到有关发送亮度增加0的信息。

但是我记得宜家枢纽和飞利浦Hue中心都使用了相同的Zigbee方法。

它在我尝试过的任何Zigbee轻型设备上都可以使用。不仅飞利浦和色相灯泡,而且还有一些通用的中国Zigbee调光者带领司机。似乎很标准

我不使用ZHA,但我鼓励此集成的开发人员简单地实现一个命令来发送增量消息。然后,您可以灵活使用0或不是零。现在,ZHA还支持小组,这是有道理的。这并不是真正的黑客。这是他们全部实用的方式。

1喜欢

这到底。这就是为什么我不明白为什么它在ZHA中没有实施的原因。

也许它可以使用HA实施的Brighness_Step服务来工作。因此,使用brightness_step 255发送turn_on,并在释放按钮时,发送一个带有brightness_step 0的turn_on。
我实际上没有尝试过。我希望我现在启动并运行我的实例,以便我可以测试。

我使用基于事件传感器的设置,请参阅https://github.com/azogue/eventsensor

stue_dimmer和gang_dimmer都是该传感器的实体。我的设置有点复杂,我让每个调光器控制几个灯。但是,按钮2和3(上下)是昏暗的动作。

这是我的自动化:

-  id:调光别名:昏暗的描述:''触发器: -  entity_id:sensor.stue_dimmer平台:状态到:2_hold -entity_id:sensor.stue_dimmer平台:状态到:3_hold -entity_id:ensity_id:sensor.gang_dimmer平台:2_hold -hold -to:2_hold-- hold-- hold-- hold--entity_id:sensor.gang_dimmer平台:状态到:3_hold条件:[]操作: -  data_template:trigger_unit:'{{trigger.to_state.entity_id}}'trigger_state:'%如果trigger.to_state.entity_id =='sensor.stue_dimmer'%} \ n light.alle_stuen \ n \ n \ {%else%} \ n light.alle_gangen \ n {%endif%}

和我的脚本:

dimmer_script:序列: - 别名:昏暗的opp eller ned重复:序列: - 服务:light.turn_on data_template:entity_id:'{{light}}'亮度:> {%set current = state_attr(light,'bright,'brightness')|默认值(0)| int%} {%set step = state = state('input_number.light_step')| int%} {%如果trigger_state =='2_hold'%} {%set next next = current + stem + step%} {%if next> next> if next>states('input_number.light_maximum')| int%} {%set next = state = state('input_number.light_maximum')| int%} {%endif%} {%else%} {%set seet seal seal next = current = current = current -stem -stem -step%} {%如果next 

现在,此脚本将变暗(2_hold)或向下(3_hold),直到调光传感器的状态更改为止。

自动化将灯发送到昏暗,触发单元(调光器)和触发状态到脚本,脚本根据触发状态将灯光变暗/向下变暗,直到触发单元再次更改状态为止。

我对此感到非常满意。如果您的每盏灯都有一个昏暗的人,那么您当然可以做更简单的事情。

我的设置的完成:按钮1,短固定是切换灯打开/关,按钮4,短固定为“循环活动灯”(旋转input_select)。

@vegardengen

实际上,这看起来真的很有希望。仍然有很多自动化和脚本,但永远不会在脚本中遇到“重复”功能。

我真的不明白为什么您需要活动传感器。
我的Zigbee按钮在短点上发送了一个事件,另一个持有,第三个发布。我不仅可以将这些事件用作触发器吗?

Would I be able to set the until to listen for a ZHA event? Or how would go about going until the button is released?
Is that why you are using the event sensor, so it is an actual entity in HA, that the until will look at.
自从我搞砸了HA自动化和脚本以来已经有几个月了。

这个WTH并不具体关于技术

我想强调的是,我的“食谱”特定于使用Zigbee协议的灯。

诸如Zigbee(“ ooh the Zigbee”)之类的协议的问题在于,它是一个慢速网络网络,很容易被饱和。

如果您有一个带有7个Zigbee灯泡的客厅,并且通过向每个灯泡发送小额增量几次,则可能每秒10次来实现调光或向下自动化,这意味着每秒发送70条消息。这些消息中的一些将通过重复网格中信号的设备发送和重新传输。

您会看到的典型问题是,某些灯泡不会像其他灯泡那样变暗。

飞利浦和宜家枢纽做的是两件事。

首先,您定义一个Zigbee组。您定义了一个叫客厅的房间,然后将7个灯泡放在他的小组中。这些设备现在对发送给组的消息进行反应,您已经将消息数量减少了一个因子7。

他们的第二件事是发送增量消息。在Zigbee中,由于如何实现事物,最好的是将亮度递增一个值254。不是您认为的255。它只是在许多灯泡或Zigbee Dimmers上与255个无效。然后,您以定义的过渡时间发送命令,从而使最小到最大的变暗需要几秒钟。

大多数Zigbee轻型设备都已实施,因此它们在所有Zigbee Hubs的祖父:飞利浦Hue上工作,因此它们似乎都可以实施过渡。

因此,实现了轮毂上的飞利浦和宜家调光器,因此当您按下并按住增加按钮时,集线器将增量消息发送给灯泡或值254的灯泡组,并且当您释放按钮时,相同消息是以0的增加值发送的

当您按“减少”按钮时,它会发送一条消息以将亮度提高-254。

结果是亮度的平稳过渡,在您按按钮时会持续使用,并在释放它时停止。在Zigbee网络上,仅发送了两条消息。

这是一件独特的Zigbee。您不能仅仅将其作为家庭助理中的通用光功能实现。19463331伟德国际因此,任何实施都必须在相关集成中发生。ZigBee2MQTT需要在其系统中实现它,然后家庭助理可以使用它而无需更改家庭助理的任何代码。19463331伟德国际

It is essential to note that Home Assistant alone cannot implement this.
它必须是单独的Zigbee软件,需要两个定义Zigbee组并让灯光知道它们是该组的成员,并且需要实施亮度的增量变化。

ZHA最近增加了小组。它需要的只是增加和降低亮度的能力(除了设置绝对值之外),并且必须能够发送值0以增加增加。

我无法想象Home Assistant C19463331伟德国际ore如何实现适合任何技术的通用功能。这将永远是您必须在自动化中专门实施的东西。
基于WiFi的灯泡可能没有等效的命令。我看不到如何将其添加到遗传光命令中。

One thing you can do with Home Assistant and Deconz and cannot do in Philips Hue is define the speed of the transition. By changing the transition time in my method you can decode how quickly you want the light to increase or decrease. You can even have different speed for the two.

2 Likes

看看我怎么做这里。我想我正在做你的设想。我听ZHA保留和发布事件,并使用这些事件开始和停止使用亮度步骤服务来调暗光线或更亮光的循环。该服务被称为四倍,每秒钟,每个呼叫5%,因此在5秒内进行全面扫描。

它可以与宜家的两个按钮调光器遥控器和Conbee II协调器完美配合。

那就是问题所在

您每秒几次亮度亮度。

在一个小安装中,它可以很好地效果在一个灯或几个灯光下。

当您在网格中有许多Zigbee设备时,它会很烂,并且尝试同时使许多灯光变暗。

我最初做到了。我有98个Zigbee设备,其中一半像中继器一样工作。Zigbee网络充斥着消息,实践经验是,与我使用飞利浦Hue Hub时的情况相比,并不是所有的灯光都会以相同的速度变暗,而且经历很差。如果我试图使客厅变暗,我最终会以太高的强度下几个灯。在我更改为更好的方法之后,它每次都可以正常工作。

Philips Hue以这种方式实施的原因是有原因

我尝试在您概述时尝试进行此操作,但发现自己深入探讨了应该停止自动化的事件/触发器的特殊情况。

我最终确定事件传感器简化了逻辑,只要调光器处于2_hold或3_hold位置,它就应该运行脚本,并在调光器更改状态时将其停止。

1喜欢

Yeah I use this for single bulb lamps. I have the same logic on a four bulb group but the experience isn’t as nice.

@kennethlavrsen您是对的,我可能还不够具体。我当时认为使其成为核心HA集成。我只是使用了ZHA的解释,因为我几乎所有的灯都是Zigbee,这是我唯一的WiFi灯。
但是,正如您所说,由于您描述的原因,这必须在每个光整合中实现。这很有意义。因此,我明白了为什么不能轻易实施。

But I would love to see the feature you are explaining with the brightness increase and transition time, implemented in ZHA. And my understanding is, that ZHA is a core HA integration, and not a third party.

我也对此也很感兴趣。

也许我们需要在他们的github中添加功能请求。

对于任何有兴趣的人,这可以解决控制器。It allows you to link controllers with HA entities (light, media player, switch, cover) and it works with Zigbee2MQTT, deCONZ, ZHA and MQTT.

您可以在这里

This is awesome, but I am having a hard time understading how to actually make the hold action brighten and dim the light?
这就是我所拥有的,但只能开/关。在受支持的控制器下,它说该控制器支持亮度和调光。

buthroom_light:模块:控制器类:E1743控制器控制器:14:b4:57:ff:ff:fe:6c:6c:5c:5c:ac Integration:Zha Light:light.light_basement_room Action“

好吧,我弄清楚了,我只需要在页面上进一步向下滚动即可。我只是快速读书。

bedroom_light:模块:Controllerx类:E1743 Controllloll Controller:14:B4:57:FF:FF:FE:6C:5C:5C:AC Integration:Zha Light:Light.light.basement_room Actions: -  on“  - ”  - “  - ”  - “ OFF”  - “ MOVE_WITH_WITH_OFF_OFF_OFF_OFF_OFF_0_83”  - “ MOVE_1_1_83”  - “ MOVE_1_83”  - “ MOVE_1_83”  - ““ - “停止”
1喜欢