123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102 |
- [main]
- publish_on_mqtt = True
- store_in_influxdb = True
- [rs485]
- serialdevice = /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_AK05DZIG-if00-port0
- serialtimeout = 0.3
- read_retries = 4
- # stops script execution, so use with caution!
- raise_error_on_reading_failure = False
- # Sleep for some time between readings of one meter avoid errors
- # i got best results (nearly no retries) with sleep_between_instruments = 0.03 and sleep_between_readings = 0
- # when reading 3 SDM120 meters set (9600 baud, parity EVEN)
- # i.e. reading current, power, appearent power and power factor from 1 meter needs about 300ms
- # providing an update rate of more than 1/s for 3 meters
- sleep_between_readings = 0
- sleep_between_instruments = 0.03
- report_instrument_read_retries = False
- # publish ongoing instrument read errors on MQTT topic - MQTT must be enabled and error topic set in mqtt section
- # time in s after that repeated instrument reading errors are published via MQTT
- # interval in s to publish repeated instrument reading errors via MQTT
- readingerror_publish_after = 60
- readingerror_publish_interval = 300
- [mqtt]
- enable = true
- server = mqtt.lan
- port = 1883
- user =
- password =
- # topic prefix
- topic_prefix = PowerMeters/Top5
- # topic for error messages
- topic_error = PowerMeters/Top5/Modbus/ERROR
- [filelog]
- # needed for calculating today/yesterday totals, so only disable if that is not needed
- enable = True
- storage_path = /home/pi/modbuslog
- [meters]
- # s, base interval for reading instruments
- # set to 0 to acquire data as fast as possible
- interval_momentary = 0
- # s, interval for reporting momentary readings, 0 to report immediately
- # (overruled by powerdelta settings)
- interval_report_momentary = 60
- # s, interval for reporting kWh-readings
- # this runs within the base meter reading method, but is performed less often than "interval_momentary"
- # by measuring elapsed time since last reading, so actual interval can vary, especially when
- # high "interval_momentary" is set to a higher value. To avoid that set
- # "interval_momentary" (= command parameter --interval) to desired value
- # and configure "meters_use_only_one_interval" to True if momentary data should not be read more often
- interval_energy = 60
- # use only interval 1 (which is interval_momentary)
- use_only_one_interval = False
- # report momentary readings immediately on sudden power changes
- # this uses the readings in category "power" in readings_names.yml
- # value is in % (decimal notation)
- report_on_powerdelta_enable = true
- report_on_powerdelta_low = 0.95
- report_on_powerdelta_high = 1.05
- # different powerdelta configuration for low load conditions
- report_on_lowpower_powerdelta_low = 0.70
- report_on_lowpower_powerdelta_high = 1.30
- # define max Watts for low power tresholds
- report_on_lowpower_treshold = 10
- # add reading time to MQTT messages and InfluxDB
- # this is the measured time in seconds that was needed to get all the data from the instrument
- send_readtime = False
- [readings]
- # default decimal places for data conversion
- # used for readings that don´t have this setting configured separately in meters_types.yml
- default_decimals = 3
- [influxdb]
- write_energy_today_total = True
- write_energy_yesterday_total = True
- separate_momentary_database = True
- host = localhost
- port = 8086
- user =
- password =
- database = energymeters
-
- [influxdb_momentary]
- host = localhost
- port = 8086
- user =
- password =
- database = energy_momentary
|