diff --git a/.gitignore b/.gitignore index e8d5f6e..c26f3d4 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,5 @@ deleted_from_storgae.txt umodbus_scan.py +umodbus_test.py ha_solis_modbus.code-workspace .vscode/settings.json diff --git a/README.md b/README.md index ac6b481..acd75b6 100644 --- a/README.md +++ b/README.md @@ -75,7 +75,7 @@ A number of helpers are needed for the scripts and automations included below. T

Utilities

-Also included is a small Python script `modbus_test.py` 2hich will check modbus communications and, if all is well, will report back Inverter Temperature, Grid Voltage and Battery SOC: +Also included is a small Python script `pymodbus_test.py` 2hich will check modbus communications and, if all is well, will report back Inverter Temperature, Grid Voltage and Battery SOC: Inverter Temperature: 30.3 C Grid Voltage: 243.3 V diff --git a/solis.yaml b/solis.yaml index dbeed58..1ad6953 100644 --- a/solis.yaml +++ b/solis.yaml @@ -8,112 +8,112 @@ - name: Solis Year RO slave: 1 address: 33022 - count: 1 + # count: 1 scale: 1 input_type: input data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 state_class: measurement - name: Solis Month RO slave: 1 address: 33023 - count: 1 + # count: 1 scale: 1 input_type: input data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 state_class: measurement - name: Solis Day RO slave: 1 address: 33024 - count: 1 + # count: 1 scale: 1 input_type: input data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 state_class: measurement - name: Solis Hour RO slave: 1 address: 33025 - count: 1 + # count: 1 scale: 1 input_type: input data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 state_class: measurement - name: Solis Minute RO slave: 1 address: 33026 - count: 1 + # count: 1 scale: 1 input_type: input data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 state_class: measurement - name: Solis Year RW slave: 1 address: 43000 - count: 1 + # count: 1 scale: 1 input_type: holding data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 state_class: measurement - name: Solis Month RW slave: 1 address: 43001 - count: 1 + # count: 1 scale: 1 input_type: holding data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 state_class: measurement - name: Solis Day RW slave: 1 address: 43002 - count: 1 + # count: 1 scale: 1 input_type: holding data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 state_class: measurement - name: Solis Hour RW slave: 1 address: 43003 - count: 1 + # count: 1 scale: 1 input_type: holding data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 state_class: measurement - name: Solis Minute RW slave: 1 address: 43004 - count: 1 + # count: 1 scale: 1 input_type: holding data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 state_class: measurement - name: Solis Second RW slave: 1 address: 43005 - count: 1 + # count: 1 scale: 1 input_type: holding data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 state_class: measurement @@ -122,11 +122,11 @@ - name: Solis Temperature slave: 1 address: 33093 - count: 1 + # count: 1 scale: 0.1 input_type: input data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 device_class: temperature state_class: measurement @@ -136,10 +136,10 @@ - name: Solis Grid Frequency slave: 1 address: 33282 - count: 1 + # count: 1 input_type: input data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 0.01 precision: 1 @@ -149,10 +149,10 @@ - name: Solis Grid Voltage slave: 1 address: 33251 - count: 1 + # count: 1 input_type: input data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 0.1 precision: 1 @@ -162,10 +162,10 @@ - name: Solis Grid Current slave: 1 address: 33252 - count: 1 + # count: 1 input_type: input data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 0.01 precision: 1 @@ -175,10 +175,10 @@ - name: Solis Grid Active Power slave: 1 address: 33257 - count: 2 + # count: 2 input_type: input data_type: int32 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 1 precision: 1 @@ -190,10 +190,10 @@ - name: Solis Daily Energy Imported slave: 1 address: 33171 - count: 1 + # count: 1 input_type: input data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 300 scale: 0.1 precision: 1 @@ -203,10 +203,10 @@ - name: Solis Daily Energy Exported slave: 1 address: 33175 - count: 1 + # count: 1 input_type: input data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 300 scale: 0.1 precision: 1 @@ -216,10 +216,10 @@ - name: Solis Total Energy Imported slave: 1 address: 33169 - count: 2 + # count: 2 input_type: input data_type: uint32 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 3600 scale: 1 precision: 1 @@ -229,10 +229,10 @@ - name: Solis Total Energy Exported slave: 1 address: 33173 - count: 2 + # count: 2 input_type: input data_type: uint32 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 3600 scale: 1 precision: 1 @@ -244,10 +244,10 @@ - name: Solis House Load Power slave: 1 address: 33147 - count: 1 + # count: 1 input_type: input data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 1 precision: 1 @@ -257,10 +257,10 @@ - name: Solis Backup Load Power slave: 1 address: 33148 - count: 1 + # count: 1 input_type: input data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 1 precision: 1 @@ -272,10 +272,10 @@ - name: Solis Daily Consumption slave: 1 address: 33179 - count: 1 + # count: 1 input_type: input data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 300 scale: 0.1 precision: 1 @@ -285,10 +285,10 @@ - name: Solis Total Consumption slave: 1 address: 33177 - count: 2 + # count: 2 input_type: input data_type: uint32 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 3600 scale: 1 precision: 1 @@ -300,10 +300,10 @@ - name: Solis Battery Power slave: 1 address: 33149 - count: 2 + # count: 2 input_type: input data_type: int32 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 1 precision: 1 @@ -313,10 +313,10 @@ - name: Solis Battery SOC slave: 1 address: 33139 - count: 1 + # count: 1 input_type: input data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 1 precision: 1 @@ -326,10 +326,10 @@ - name: Solis Battery SOH slave: 1 address: 33140 - count: 1 + # count: 1 input_type: input data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 1 precision: 1 @@ -339,10 +339,10 @@ - name: Solis Battery Voltage slave: 1 address: 33133 - count: 1 + # count: 1 input_type: input data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 0.1 precision: 1 @@ -352,10 +352,10 @@ - name: Solis Battery Voltage (BMS) slave: 1 address: 33141 - count: 1 + # count: 1 input_type: input data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 0.01 precision: 1 @@ -365,10 +365,10 @@ - name: Solis Battery Current slave: 1 address: 33134 - count: 1 + # count: 1 input_type: input data_type: int16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 0.1 precision: 1 @@ -378,10 +378,10 @@ - name: Solis Battery Current (BMS) slave: 1 address: 33142 - count: 1 + # count: 1 input_type: input data_type: int16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 0.01 precision: 1 @@ -391,10 +391,10 @@ - name: Solis Battery Charge Current Limit (BMS) slave: 1 address: 33143 - count: 1 + # count: 1 input_type: input data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 0.1 precision: 1 @@ -404,10 +404,10 @@ - name: Solis Battery Discharge Current Limit (BMS) slave: 1 address: 33144 - count: 1 + # count: 1 input_type: input data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 0.1 precision: 1 @@ -417,10 +417,10 @@ - name: Solis Battery Charge Current Limit slave: 1 address: 33206 - count: 1 + # count: 1 input_type: input data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 0.1 precision: 1 @@ -430,10 +430,10 @@ - name: Solis Battery Discharge Current Limit slave: 1 address: 33207 - count: 1 + # count: 1 input_type: input data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 0.1 precision: 1 @@ -445,10 +445,10 @@ - name: Solis Daily Battery Charge slave: 1 address: 33163 - count: 1 + # count: 1 input_type: input data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 300 scale: 0.1 precision: 1 @@ -458,10 +458,10 @@ - name: Solis Daily Battery Discharge slave: 1 address: 33167 - count: 1 + # count: 1 input_type: input data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 300 scale: 0.1 precision: 1 @@ -471,10 +471,10 @@ - name: Solis Total Battery Charge slave: 1 address: 33161 - count: 2 + # count: 2 input_type: input data_type: uint32 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 3600 scale: 1 precision: 1 @@ -484,10 +484,10 @@ - name: Solis Total Battery Discharge slave: 1 address: 33165 - count: 2 + # count: 2 input_type: input data_type: uint32 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 3600 scale: 1 precision: 1 @@ -499,10 +499,10 @@ - name: Solis PV1 Voltage slave: 1 address: 33049 - count: 1 + # count: 1 input_type: input data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 0.1 precision: 1 @@ -512,10 +512,10 @@ - name: Solis PV2 Voltage slave: 1 address: 33051 - count: 1 + # count: 1 input_type: input data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 0.1 precision: 1 @@ -525,10 +525,10 @@ - name: Solis PV1 Current slave: 1 address: 33050 - count: 1 + # count: 1 input_type: input data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 0.1 precision: 1 @@ -538,10 +538,10 @@ - name: Solis PV2 Current slave: 1 address: 33052 - count: 1 + # count: 1 input_type: input data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 0.1 precision: 1 @@ -551,10 +551,10 @@ - name: Solis Inverter DC Power slave: 1 address: 33057 - count: 2 + # count: 2 input_type: input data_type: uint32 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 1 precision: 1 @@ -566,10 +566,10 @@ - name: Solis Inverter AC Power slave: 1 address: 33079 - count: 2 + # count: 2 input_type: input data_type: int32 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 1 precision: 1 @@ -579,10 +579,10 @@ - name: Solis Inverter Voltage slave: 1 address: 33073 - count: 1 + # count: 1 input_type: input data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 0.1 precision: 1 @@ -592,10 +592,10 @@ - name: Solis Inverter Current slave: 1 address: 33076 - count: 1 + # count: 1 input_type: input data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 0.1 precision: 1 @@ -605,10 +605,10 @@ - name: Solis Inverter Apparent Power slave: 1 address: 33083 - count: 2 + # count: 2 input_type: input data_type: int32 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 1 precision: 1 @@ -618,10 +618,10 @@ - name: Solis Inverter Frequency slave: 1 address: 33094 - count: 1 + # count: 1 input_type: input data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: .01 precision: 1 @@ -633,10 +633,10 @@ - name: Solis Daily Generation slave: 1 address: 33035 - count: 1 + # count: 1 input_type: input data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 300 scale: .1 precision: 1 @@ -646,10 +646,10 @@ - name: Solis Monthly Generation slave: 1 address: 33031 - count: 2 + # count: 2 input_type: input data_type: uint32 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 3600 scale: 1 precision: 1 @@ -659,10 +659,10 @@ - name: Solis Yearly Generation slave: 1 address: 33037 - count: 2 + # count: 2 input_type: input data_type: uint32 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 3600 scale: 1 precision: 1 @@ -672,10 +672,10 @@ - name: Solis Total Generation slave: 1 address: 33029 - count: 2 + # count: 2 input_type: input data_type: uint32 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 3600 scale: 1 precision: 1 @@ -687,10 +687,10 @@ - name: Solis Energy Storage Control Switch slave: 1 address: 33132 - count: 1 + # count: 1 input_type: input data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 1 precision: 1 @@ -698,10 +698,10 @@ - name: Solis Battery Current Direction slave: 1 address: 33135 - count: 1 + # count: 1 input_type: input data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 1 precision: 1 @@ -709,10 +709,10 @@ - name: Solis Inverter Status slave: 1 address: 33095 - count: 1 + # count: 1 input_type: input data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 1 precision: 1 @@ -724,10 +724,10 @@ - name: Solis Charge Current Limit slave: 1 address: 43117 - count: 1 + # count: 1 input_type: holding data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 0.1 precision: 1 @@ -737,10 +737,10 @@ - name: Solis Discharge Current Limit slave: 1 address: 43118 - count: 1 + # count: 1 input_type: holding data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 0.1 precision: 1 @@ -752,10 +752,10 @@ - name: Solis Timed Charge Current Limit slave: 1 address: 43141 - count: 1 + # count: 1 input_type: holding data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 0.1 precision: 1 @@ -765,10 +765,10 @@ - name: Solis Timed Discharge Current Limit slave: 1 address: 43142 - count: 1 + # count: 1 input_type: holding data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 0.1 precision: 1 @@ -778,10 +778,10 @@ - name: Solis Timed Charge Start Hour slave: 1 address: 43143 - count: 1 + # count: 1 input_type: holding data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 1 precision: 0 @@ -789,10 +789,10 @@ - name: Solis Timed Charge Start Minute slave: 1 address: 43144 - count: 1 + # count: 1 input_type: holding data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 1 precision: 0 @@ -800,10 +800,10 @@ - name: Solis Timed Charge End Hour slave: 1 address: 43145 - count: 1 + # count: 1 input_type: holding data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 1 precision: 0 @@ -811,10 +811,10 @@ - name: Solis Timed Charge End Minute slave: 1 address: 43146 - count: 1 + # count: 1 input_type: holding data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 1 precision: 0 @@ -822,10 +822,10 @@ - name: Solis Timed Discharge Start Hour slave: 1 address: 43147 - count: 1 + # count: 1 input_type: holding data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 1 precision: 0 @@ -833,10 +833,10 @@ - name: Solis Timed Discharge Start Minute slave: 1 address: 43148 - count: 1 + # count: 1 input_type: holding data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 1 precision: 0 @@ -844,10 +844,10 @@ - name: Solis Timed Discharge End Hour slave: 1 address: 43149 - count: 1 + # count: 1 input_type: holding data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 1 precision: 0 @@ -855,10 +855,10 @@ - name: Solis Timed Discharge End Minute slave: 1 address: 43150 - count: 1 + # count: 1 input_type: holding data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 1 precision: 0 @@ -868,10 +868,10 @@ - name: Solis Timed Charge 2 Start Hour slave: 1 address: 43153 - count: 1 + # count: 1 input_type: holding data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 1 precision: 0 @@ -879,10 +879,10 @@ - name: Solis Timed Charge 2 Start Minute slave: 1 address: 43154 - count: 1 + # count: 1 input_type: holding data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 1 precision: 0 @@ -890,10 +890,10 @@ - name: Solis Timed Charge 2 End Hour slave: 1 address: 43155 - count: 1 + # count: 1 input_type: holding data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 1 precision: 0 @@ -901,10 +901,10 @@ - name: Solis Timed Charge 2 End Minute slave: 1 address: 43156 - count: 1 + # count: 1 input_type: holding data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 1 precision: 0 @@ -912,10 +912,10 @@ - name: Solis Timed Discharge 2 Start Hour slave: 1 address: 43157 - count: 1 + # count: 1 input_type: holding data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 1 precision: 0 @@ -923,10 +923,10 @@ - name: Solis Timed Discharge 2 Start Minute slave: 1 address: 43158 - count: 1 + # count: 1 input_type: holding data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 1 precision: 0 @@ -934,10 +934,10 @@ - name: Solis Timed Discharge 2 End Hour slave: 1 address: 43159 - count: 1 + # count: 1 input_type: holding data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 1 precision: 0 @@ -945,10 +945,10 @@ - name: Solis Timed Discharge 2 End Minute slave: 1 address: 43160 - count: 1 + # count: 1 input_type: holding data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 1 precision: 0 @@ -958,10 +958,10 @@ - name: Solis Timed Charge 3 Start Hour slave: 1 address: 43163 - count: 1 + # count: 1 input_type: holding data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 1 precision: 0 @@ -969,10 +969,10 @@ - name: Solis Timed Charge 3 Start Minute slave: 1 address: 43164 - count: 1 + # count: 1 input_type: holding data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 1 precision: 0 @@ -980,10 +980,10 @@ - name: Solis Timed Charge 3 End Hour slave: 1 address: 43165 - count: 1 + # count: 1 input_type: holding data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 1 precision: 0 @@ -991,10 +991,10 @@ - name: Solis Timed Charge 3 End Minute slave: 1 address: 43166 - count: 1 + # count: 1 input_type: holding data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 1 precision: 0 @@ -1002,10 +1002,10 @@ - name: Solis Timed Discharge 3 Start Hour slave: 1 address: 43167 - count: 1 + # count: 1 input_type: holding data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 1 precision: 0 @@ -1013,10 +1013,10 @@ - name: Solis Timed Discharge 3 Start Minute slave: 1 address: 43168 - count: 1 + # count: 1 input_type: holding data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 1 precision: 0 @@ -1024,10 +1024,10 @@ - name: Solis Timed Discharge 3 End Hour slave: 1 address: 43169 - count: 1 + # count: 1 input_type: holding data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 1 precision: 0 @@ -1035,10 +1035,10 @@ - name: Solis Timed Discharge 3 End Minute slave: 1 address: 43170 - count: 1 + # count: 1 input_type: holding data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 1 precision: 0 @@ -1046,10 +1046,10 @@ - name: Solis Backup Mode SOC slave: 1 address: 43024 - count: 1 + # count: 1 input_type: holding data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 1 precision: 0 @@ -1059,10 +1059,10 @@ - name: Solis Overdischarge SOC slave: 1 address: 43011 - count: 1 + # count: 1 input_type: holding data_type: uint16 - lazy_error_count: 5 + lazy_error_# count: 5 scan_interval: 60 scale: 1 precision: 0