@rossko57 @ssalonen
I have run into a very strange problem…
When I try to write (set) a holdning register (adresse), the value changes, but a second after, it´s change back to the old value by itself… Like it never gets saved or something simular…
This is my Thing file with Bridge, Bridge Poller and Thing data:
Bridge modbus:serial:myNilan [ port="/dev/ttyUSB0", id=30, baud=19200, stopBits="1.0", parity="even", dataBits=8, encoding="rtu" ] {
Bridge poller AirTempRegisters [ start=1200, length=8, refresh=6000, type="holding" ] {
Thing data hol1200 [ readStart="1200", readValueType="int16", writeStart="1200", writeValueType="int16", writeType="holding", writeMultipleEvenWithSingleRegisterOrCoil="true", readTransform="JS(divide100.js)" ]
Thing data hol1201 [ readStart="1201", readValueType="int16", writeStart="1201", writeValueType="int16", writeType="holding", writeMultipleEvenWithSingleRegisterOrCoil="true", readTransform="JS(divide100.js)" ]
Thing data hol1202 [ readStart="1202", readValueType="int16", writeStart="1202", writeValueType="int16", writeType="holding", writeMultipleEvenWithSingleRegisterOrCoil="true", readTransform="JS(divide100.js)" ]
Thing data hol1203 [ readStart="1203", readValueType="int16", writeStart="1203", writeValueType="int16", writeType="holding", writeMultipleEvenWithSingleRegisterOrCoil="true", readTransform="JS(divide100.js)" ]
Thing data hol1204 [ readStart="1204", readValueType="int16", writeStart="1204", writeValueType="int16", writeType="holding", writeMultipleEvenWithSingleRegisterOrCoil="true", readTransform="JS(divide100.js)" ]
Thing data hol1205 [ readStart="1205", readValueType="int16", writeStart="1205", writeValueType="int16", writeType="holding", writeMultipleEvenWithSingleRegisterOrCoil="true", readTransform="JS(divide100.js)" ]
}
}
This is my nilan.items (for these adresses)
Number Nilan_AirTemp_CoolSet "Cooling temperature setpoint select [%d]" <temperature> (gNilan) {channel="modbus:data:myNilan:AirTempRegisters:hol1200:number"}
Number Nilan_AirTemp_TempMinSum "Inlet temp. min. summer [%.1f °C]" <temperature> (gNilan) {channel="modbus:data:myNilan:AirTempRegisters:hol1201:number"}
Number Nilan_AirTemp_TempMinWin "Inlet temp. min. winter [%.1f °C]" <temperature> (gNilan) {channel="modbus:data:myNilan:AirTempRegisters:hol1202:number"}
Number Nilan_AirTemp_TempMax "Inlet temp. max. summer [%.1f °C]" <temperature> (gNilan) {channel="modbus:data:myNilan:AirTempRegisters:hol1203:number"}
Number Nilan_AirTemp_TempMaxWin "Inlet temp. max. winter [%.1f °C]" <temperature> (gNilan) {channel="modbus:data:myNilan:AirTempRegisters:hol1204:number"}
Number Nilan_AirTemp_TempSummer "Summer/winter limit [%.1f °C]" <temperature> (gNilan) {channel="modbus:data:myNilan:AirTempRegisters:hol1205:number"}
And this is my nilan.sitemap file:
Frame label="Air1200 Holding" {
Selection item=Nilan_AirTemp_CoolSet label="Temperaturforskydning til køling" mappings=[0="Off (No cooling allowed)", 1="Set + 0 °C (User setpoint plus 0 degrees)", 2="Set + 1 °C", 3="Set + 2 °C", 4="Set + 3 °C", 5="Set + 4 °C", 6="Set + 5 °C", 7="Set + 7 °C", 8="Set + 10 °C"]
Setpoint item=Nilan_AirTemp_TempMinSum label="Temperaturminimum (Sommer)" minValue=0 maxValue=65 step=1
Setpoint item=Nilan_AirTemp_TempMinWin label="Temperaturminimum (Winter)" minValue=0 maxValue=65 step=1
Setpoint item=Nilan_AirTemp_TempMax label="Temperaturmaximum (Sommer)" minValue=0 maxValue=65 step=1
Setpoint item=Nilan_AirTemp_TempMaxWin label="Temperaturmaximum (Winter)" minValue=0 maxValue=65 step=1
Setpoint item=Nilan_AirTemp_TempSummer label="Begræns sommer / vinter" minValue=0 maxValue=65 step=1
}
When I try write a value to 1201, this is what happens:
2018-12-20 23:02:14.633 [ome.event.ItemCommandEvent] - Item 'Nilan_AirTemp_TempMinSum' received command 14
2018-12-20 23:02:14.652 [nt.ItemStatePredictedEvent] - Nilan_AirTemp_TempMinSum predicted to become 14
2018-12-20 23:02:14.672 [vent.ItemStateChangedEvent] - Nilan_AirTemp_TempMinSum changed from 13.0 to 14
2018-12-20 23:02:17.575 [vent.ItemStateChangedEvent] - Nilan_AirTemp_TempMinSum changed from 14 to 13.0
Any idea why this happen??
I have tried with and without writeMultipleEvenWithSingleRegisterOrCoil. Without I get an CRC error. With, I get no error, but the value just return to original state.