{ "debug": true, "ports": [ { "path": "/dev/ttyRS485-1", "devices": [ { "slave_id": "59", "name": "Intesis Drawing", "id": "IntDR", "enabled": true, "protocol": "modbus", "poll_interval": 2000, "channels": [ { "name": "OnOff", "type": "range", "reg_type": "holding", "address": "0", "max": "1", "poll_interval": 2000 }, { "name": "Mode", "type": "range", "reg_type": "holding", "address": "1", "poll_interval": 1000, "max": "4" }, { "name": "FanSpeed", "type": "range", "reg_type": "holding", "address": "2", "max": "4", "poll_interval": 1000 }, { "name": "TempSetPoint", "type": "range", "reg_type": "holding", "address": "4", "max": "38", "poll_interval": 1000 }, { "name": "TempReference", "type": "temperature", "reg_type": "input", "address": "5", "channel_readonly": true }, { "name": "AlarmState", "type": "value", "reg_type": "input", "address": "10", "channel_readonly": true, "poll_interval": 1000 }, { "name": "ErrorCode", "type": "text", "reg_type": "input", "address": "11", "poll_interval": 1000 }, { "name": "ExternalTempSensor", "type": "range", "reg_type": "holding", "address": "22", "max": "38", "poll_interval": 1000 } ], "device_max_fail_cycles": 0 }, { "slave_id": "60", "name": "Intesis Bedroom", "id": "IntBR", "enabled": true, "protocol": "modbus", "poll_interval": 2000, "channels": [ { "name": "OnOff", "type": "range", "reg_type": "holding", "address": "0", "max": "1", "poll_interval": 2000 }, { "name": "Mode", "type": "range", "reg_type": "holding", "address": "1", "poll_interval": 1000, "max": "4" }, { "name": "FanSpeed", "type": "range", "reg_type": "holding", "address": "2", "max": "4", "poll_interval": 1000 }, { "name": "TempSetPoint", "type": "range", "reg_type": "holding", "address": "4", "max": "38", "poll_interval": 1000 }, { "name": "TempReference", "type": "temperature", "reg_type": "input", "address": "5", "channel_readonly": true }, { "name": "AlarmState", "type": "value", "reg_type": "input", "address": "10", "channel_readonly": true, "poll_interval": 1000 }, { "name": "ErrorCode", "type": "text", "reg_type": "input", "address": "11", "poll_interval": 1000 }, { "name": "ExternalTempSensor", "type": "range", "reg_type": "holding", "address": "22", "max": "38", "poll_interval": 1000 } ], "device_max_fail_cycles": 0 }, { "slave_id": "61", "name": "Intesis Bedroom Guest", "id": "IntBRG", "enabled": true, "protocol": "modbus", "poll_interval": 2000, "channels": [ { "name": "OnOff", "type": "range", "reg_type": "holding", "address": "0", "max": "1", "poll_interval": 2000 }, { "name": "Mode", "type": "range", "reg_type": "holding", "address": "1", "poll_interval": 1000, "max": "4" }, { "name": "FanSpeed", "type": "range", "reg_type": "holding", "address": "2", "max": "4", "poll_interval": 1000 }, { "name": "TempSetPoint", "type": "range", "reg_type": "holding", "address": "4", "max": "38", "poll_interval": 1000 }, { "name": "TempReference", "type": "temperature", "reg_type": "input", "address": "5", "channel_readonly": true }, { "name": "AlarmState", "type": "value", "reg_type": "input", "address": "10", "channel_readonly": true, "poll_interval": 1000 }, { "name": "ErrorCode", "type": "text", "reg_type": "input", "address": "11", "poll_interval": 1000 }, { "name": "ExternalTempSensor", "type": "range", "reg_type": "holding", "address": "22", "max": "38", "poll_interval": 1000 } ], "device_max_fail_cycles": 0 } ], "baud_rate": 4800, "parity": "N", "data_bits": 8, "stop_bits": 1, "poll_interval": 2000, "enabled": true }, { "path": "/dev/ttyRS485-2", "devices": [ { "slave_id": "2", "name": "Buhler", "id": "buhler", "protocol": "modbus", "enabled": true, "poll_interval": 1000, "channels": [ { "name": "DrawingSW", "type": "switch", "reg_type": "coil", "address": "0", "format": "s16", "scale": 1, "offset": 0 }, { "name": "Drawing", "type": "value", "reg_type": "input", "address": "0", "format": "s16", "scale": 1, "offset": 0 }, { "name": "Drawing_setpoint", "type": "range", "reg_type": "holding", "address": "0", "format": "s16", "scale": 1, "offset": 0, "max": "100" }, { "name": "MasterBedroomSW", "type": "switch", "reg_type": "coil", "address": "1", "format": "s16", "scale": 1, "offset": 0 }, { "name": "MasterBedroom", "type": "value", "reg_type": "input", "address": "1", "format": "s16", "scale": 1, "offset": 0 }, { "name": "MasterBedroom_setpoint", "type": "range", "reg_type": "holding", "address": "1", "format": "s16", "scale": 1, "offset": 0, "max": "100" }, { "name": "BedroomGuestSW", "type": "switch", "reg_type": "coil", "address": "2", "format": "s16", "scale": 1, "offset": 0 }, { "name": "BedroomGuest", "type": "value", "reg_type": "input", "address": "2", "format": "s16", "scale": 1, "offset": 0 }, { "name": "BedroomGuest_setpoint", "type": "range", "reg_type": "holding", "address": "2", "format": "s16", "scale": 1, "offset": 0, "max": "100" } ], "device_max_fail_cycles": 0, "device_timeout_ms": 3000, "frame_timeout_ms": 2500 }, { "slave_id": "1", "name": "SystemAir", "id": "SystemAir", "enabled": true, "protocol": "modbus", "poll_interval": 2000, "channels": [ { "name": "Supply_air_sensor", "type": "value", "reg_type": "holding", "address": "213", "format": "s16", "poll_interval": 1000, "channel_readonly": false }, { "name": "FanSpeed", "type": "range", "reg_type": "holding", "address": "100", "max": "4", "poll_interval": 1000 }, { "name": "Fan_SF_RPM", "type": "value", "reg_type": "holding", "address": "110", "channel_readonly": true, "poll_interval": 1000 }, { "name": "Fan_EF_RPM", "type": "value", "reg_type": "holding", "address": "111", "channel_readonly": true, "poll_interval": 1000 }, { "name": "REG_HC_WH_SIGNAL", "type": "value", "reg_type": "holding", "address": "204", "channel_readonly": true, "poll_interval": 1000 }, { "name": "REG_HC_TEMP_IN1", "type": "temperature", "reg_type": "holding", "address": "213", "scale": 0.1, "channel_readonly": true, "poll_interval": 1000 }, { "name": "REG_HC_TEMP_IN2", "type": "temperature", "reg_type": "holding", "address": "214", "scale": 0.1, "channel_readonly": true, "poll_interval": 1000 }, { "name": "REG_HC_TEMP_IN3", "type": "temperature", "reg_type": "holding", "address": "215", "scale": 0.1, "channel_readonly": true, "poll_interval": 1000 }, { "name": "REG_HC_TEMP_IN4", "type": "temperature", "reg_type": "holding", "address": "216", "scale": 0.1, "channel_readonly": true, "poll_interval": 1000 }, { "name": "REG_HC_TEMP_IN5", "type": "temperature", "reg_type": "holding", "address": "217", "scale": 0.1, "channel_readonly": true, "poll_interval": 1000 }, { "name": "REG_HC_TEMP_LVL", "type": "range", "reg_type": "holding", "address": "206", "max": "5", "poll_interval": 1000 }, { "name": "REG_HC_TEMP_SP", "type": "range", "reg_type": "holding", "address": "207", "max": "40", "poll_interval": 1000 }, { "name": "REG_HC_TEMP_SP_DEG", "type": "range", "reg_type": "holding", "address": "221", "scale": 0.1, "max": "40", "poll_interval": 1000 }, { "name": "REG_PREHEATER_SETPOINT", "type": "value", "reg_type": "holding", "address": "230", "scale": 0.1, "max": "40", "poll_interval": 1000 }, { "name": "REG_PREHEATER_P_BAND", "type": "range", "reg_type": "holding", "address": "231", "scale": 0.1, "max": "60", "poll_interval": 1000 }, { "name": "REG_ROTOR_STATE", "type": "text", "reg_type": "holding", "address": "350", "channel_readonly": true, "poll_interval": 1000 }, { "name": "REG_RH_SENSOR_VALUE", "type": "rel_humidity", "reg_type": "holding", "address": "380", "channel_readonly": true, "poll_interval": 1000 }, { "name": "REG_RH_SENSOR_DATA_VALID", "type": "value", "reg_type": "holding", "address": "381", "channel_readonly": true, "poll_interval": 1000 }, { "name": "REG_FILTER_PER", "type": "value", "reg_type": "holding", "address": "600", "channel_readonly": true, "poll_interval": 1000 }, { "name": "REG_FILTER_DAYS", "type": "value", "reg_type": "holding", "address": "601", "channel_readonly": true, "poll_interval": 1000 }, { "name": "REG_CLK_S", "type": "range", "reg_type": "holding", "address": "550", "poll_interval": 1000, "max": "59" }, { "name": "REG_CLK_M", "type": "range", "reg_type": "holding", "address": "551", "poll_interval": 1000, "max": "59" }, { "name": "REG_CLK_H", "type": "range", "reg_type": "holding", "address": "552", "poll_interval": 1000, "max": "23" }, { "name": "REG_CLK_D", "type": "range", "reg_type": "holding", "address": "553", "poll_interval": 1000, "max": "31" }, { "name": "REG_CLK_MNTH", "type": "range", "reg_type": "holding", "address": "554", "poll_interval": 1000, "max": "12" }, { "name": "REG_CLK_Y", "type": "range", "reg_type": "holding", "address": "555", "poll_interval": 1000, "max": "2030" }, { "name": "Filter Alarm", "type": "switch", "reg_type": "coil", "address": "12800", "poll_interval": 1000, "channel_readonly": true }, { "name": "Fan Alarm", "type": "switch", "reg_type": "coil", "address": "12801", "poll_interval": 1000, "channel_readonly": true }, { "name": "Rotor Alarm", "type": "switch", "reg_type": "coil", "address": "12803", "poll_interval": 1000, "channel_readonly": true }, { "name": "Frost Alarm", "type": "switch", "reg_type": "coil", "address": "12804", "poll_interval": 1000, "channel_readonly": true }, { "name": "PCU-PB Alarm", "type": "switch", "reg_type": "coil", "address": "12805", "poll_interval": 1000, "channel_readonly": true }, { "name": "Temperature sensor Alarm", "type": "switch", "reg_type": "coil", "address": "12806", "poll_interval": 1000, "channel_readonly": true }, { "name": "Emergency Thermostat Alarm", "type": "switch", "reg_type": "coil", "address": "12807", "poll_interval": 1000, "channel_readonly": true }, { "name": "Damper Alarm", "type": "switch", "reg_type": "coil", "address": "12808", "poll_interval": 1000, "channel_readonly": true }, { "name": "Low SS Alarm", "type": "switch", "reg_type": "coil", "address": "12809", "poll_interval": 1000, "channel_readonly": true }, { "name": "Defrost Alarm", "type": "switch", "reg_type": "coil", "address": "12810", "poll_interval": 1000, "channel_readonly": true }, { "name": "RH Sensor Alarm", "type": "switch", "reg_type": "coil", "address": "12811", "poll_interval": 1000, "channel_readonly": true } ], "device_max_fail_cycles": 0, "device_timeout_ms": 3000, "frame_timeout_ms": 2500 }, { "slave_id": "201", "name": "RTM2021", "id": "RTM2021", "enabled": true, "protocol": "modbus", "poll_interval": 2000, "channels": [ { "name": "OsadCh1", "type": "value", "reg_type": "holding", "address": "90", "scale": 1, "poll_interval": 1000, "channel_readonly": true }, { "name": "WaterCh1", "type": "value", "reg_type": "holding", "address": "0x5C", "scale": 1, "poll_interval": 1000, "channel_readonly": true }, { "name": "TST01_1", "type": "temperature", "reg_type": "holding", "address": "0x0", "format": "s16", "scale": 0.1, "poll_interval": 1000, "channel_readonly": true }, { "name": "TST01_1_10", "type": "value", "reg_type": "holding", "address": "0x01", "format": "s16", "poll_interval": 1000, "channel_readonly": true }, { "name": "TST01_1_mult", "type": "value", "reg_type": "holding", "address": "0x02", "format": "s16", "scale": 1, "poll_interval": 1000, "channel_readonly": true }, { "name": "TST01_1_check", "type": "value", "reg_type": "holding", "address": "0x03", "scale": 1, "poll_interval": 1000, "channel_readonly": true }, { "name": "Relay0State", "type": "switch", "reg_type": "holding", "address": "176", "scale": 1, "poll_interval": 1000, "channel_readonly": true, "readonly": true }, { "name": "Relay1State", "type": "switch", "reg_type": "holding", "address": "177", "scale": 1, "poll_interval": 1000, "channel_readonly": true, "readonly": true }, { "name": "Relay2State", "type": "switch", "reg_type": "holding", "address": "178", "scale": 1, "poll_interval": 1000, "channel_readonly": true, "readonly": true }, { "name": "Relay3State", "type": "switch", "reg_type": "holding", "address": "179", "scale": 1, "poll_interval": 1000, "channel_readonly": true, "readonly": true }, { "name": "Relay4State", "type": "switch", "reg_type": "holding", "address": "180", "scale": 1, "poll_interval": 1000, "channel_readonly": true, "readonly": true }, { "name": "Relay5State", "type": "switch", "reg_type": "holding", "address": "181", "scale": 1, "poll_interval": 1000, "channel_readonly": true, "readonly": true }, { "name": "Addres_Teploskat_Air_Min", "type": "value", "reg_type": "holding_multi", "address": "0x012F", "format": "s16", "scale": 1, "poll_interval": 1000, "channel_readonly": false }, { "name": "Addres_Teploskat_Air_Max", "type": "value", "reg_type": "holding_multi", "address": "0x0130", "scale": 1, "poll_interval": 1000, "channel_readonly": false }, { "name": "Addres_Teploskat_Time_Delay_Ch1", "type": "value", "reg_type": "holding_multi", "address": "0x0137", "scale": 1, "poll_interval": 1000, "channel_readonly": false, "max": "180" }, { "name": "Manual_Auto_Teploskat", "type": "switch", "reg_type": "holding_multi", "address": "0x153", "scale": 1, "poll_interval": 1000, "channel_readonly": false, "max": "1" }, { "name": "Manual_Auto_Relay_1", "type": "switch", "reg_type": "holding_multi", "address": "0x014F", "scale": 1, "poll_interval": 1000, "channel_readonly": false, "max": "1" }, { "name": "Manual_Control_Relay_1", "type": "switch", "reg_type": "holding_multi", "address": "0xAC", "scale": 1, "poll_interval": 1000, "channel_readonly": false, "max": "1" } ], "device_max_fail_cycles": 1000 } ], "baud_rate": 9600, "parity": "N", "data_bits": 8, "stop_bits": 1, "poll_interval": 2001, "enabled": true }, { "path": "/dev/ttyMOD1", "devices": [], "baud_rate": 9600, "parity": "N", "data_bits": 8, "stop_bits": 2, "poll_interval": 10, "enabled": false }, { "path": "/dev/ttyMOD2", "devices": [], "baud_rate": 9600, "parity": "N", "data_bits": 8, "stop_bits": 2, "poll_interval": 10, "enabled": false }, { "path": "/dev/ttyMOD3", "devices": [], "baud_rate": 9600, "parity": "N", "data_bits": 8, "stop_bits": 2, "poll_interval": 10, "enabled": false } ] }