I need your help. I have a KNX heating actor which receives % (procent) values to open & close the valves.
The configuration of this item is like this:
within a rule I now want/need to send a x% value to this item, but on the KNX side I can not see the value received, so I assume my value is not send.
This is my rule:
rule "Stellwert Heizung Buero"
when
Item Temperatur_OG_Buero_Ist received update
then
var float temp_temperatur_differenz=(Temperatur_OG_Buero_Soll.state as DecimalType).floatValue-(Temperatur_OG_Buero_Ist.state as DecimalType).floatValue
if (temp_temperatur_differenz>=1)
{
Heizung_Stellwert_Buero.postUpdate(99 as DecimalType)
say("Case 1 " + " .")
}
else if (temp_temperatur_differenz>=0.5) say("Case 2 - Die aktuelle Differenz Soll / Ist Temperatur ist " + temp_temperatur_differenz + " .")
end
I do hear the “Case 1”, so I am sure the Command has been executed. But I do not see “99%” on the bus monitor.
Any idea how to do this?
As @rikky stated, you have to use .sendCommand instead.
.postUpdate() should only change the state of the item within openHAB but without sending anything to any binding.
.sendCommand() should only send a command to all bindings bound to the item without changing the state within openHAB.
This is only true, if the item is set to autoupdate="false". Otherwise, openHAB will do a .postUpdate() right after the .sendCommand() without waiting for response.
Yes I did try 99 or 0.99 or new PercentType(90) or (99 as DecimalType) - so far nothing has worked.
What version of openHAB do you have running?
I am on version 2.1 with knxd and have the “feeling” I was working in 1.8.3 and the eibd, but I can not check anymore as the host running this version now is shut down.
I have the same problem. I try to send a percentage value to knx 5.001 dpt, but failed.
item:
Number Bad_DG_Thermostat_Set “Vorgabe Thermostat [%d]” {knx=“5.001:4/7/0”}
or
Number Bad_DG_Thermostat_Set “Vorgabe Thermostat [%d %%]” {knx=“5.001:4/7/0”}
I also can receice 5.001 dpt information from KNX to OH2.
item:
Number Bad_DG_Status_Thermostat “Status Thermostat Bad DG [%d %%]” {knx=“5.001:4/0/0”}
I also can send and receive 5.005 dpt temperature values from OH2 to KNX as well as basic 1.001 dpt.