mirror of
https://github.com/CeeWeasel/fresh-home.git
synced 2026-08-09 10:30:14 -04:00
211 lines
5.5 KiB
YAML
211 lines
5.5 KiB
YAML
sensor:
|
|
# Main IC1
|
|
#########
|
|
- platform: atm90e32
|
|
release_device: true
|
|
cs_pin: ${main_ic1}
|
|
id: ${main_meter_id1}
|
|
phase_a:
|
|
voltage:
|
|
name: Voltage 1
|
|
id: ic1Volts
|
|
accuracy_decimals: 1
|
|
current:
|
|
name: ${ct1_name} ${amp_label}
|
|
id: ct1Amps
|
|
# The max value for current that the meter can output is 65.535. If you expect to measure current over 65A,
|
|
# divide the gain_ct by 2 (120A CT) or 4 (200A CT) and multiply the current and power values by 2 or 4 by uncommenting the filter below
|
|
# filters:
|
|
# - multiply: 2
|
|
power:
|
|
name: ${ct1_name} ${watt_label}
|
|
id: ct1Watts
|
|
filters:
|
|
- lambda: |-
|
|
if (x < 0) return x * -1;
|
|
return x;
|
|
gain_voltage: ${voltage_cal1}
|
|
gain_ct: ${current_cal_ct1}
|
|
phase_b:
|
|
current:
|
|
name: ${ct2_name} ${amp_label}
|
|
id: ct2Amps
|
|
power:
|
|
name: ${ct2_name} ${watt_label}
|
|
id: ct2Watts
|
|
filters:
|
|
- lambda: |-
|
|
if (x < 0) return x * -1;
|
|
return x;
|
|
gain_voltage: ${voltage_cal1}
|
|
gain_ct: ${current_cal_ct2}
|
|
phase_c:
|
|
current:
|
|
name: ${ct3_name} ${amp_label}
|
|
id: ct3Amps
|
|
power:
|
|
name: ${ct3_name} ${watt_label}
|
|
id: ct3Watts
|
|
filters:
|
|
- lambda: |-
|
|
if (x < 0) return x * -1;
|
|
return x;
|
|
gain_voltage: ${voltage_cal1}
|
|
gain_ct: ${current_cal_ct3}
|
|
frequency:
|
|
name: Frequency 1
|
|
chip_temperature:
|
|
name: ${main_meter_name1} Chip Temp
|
|
line_frequency: ${electric_freq}
|
|
gain_pga: 1X
|
|
update_interval: ${update_time}
|
|
enable_offset_calibration: ${offset_calibration}
|
|
enable_gain_calibration: ${gain_calibration}
|
|
# Main IC2
|
|
##########
|
|
- platform: atm90e32
|
|
release_device: true
|
|
cs_pin: ${main_ic2}
|
|
id: ${main_meter_id2}
|
|
phase_a:
|
|
#this voltage is only needed if monitoring 2 voltages
|
|
# voltage:
|
|
# name: Voltage 2
|
|
# id: ic2Volts
|
|
# accuracy_decimals: 1
|
|
current:
|
|
name: ${ct4_name} ${amp_label}
|
|
id: ct4Amps
|
|
power:
|
|
name: ${ct4_name} ${watt_label}
|
|
id: ct4Watts
|
|
filters:
|
|
- lambda: |-
|
|
if (x < 0) return x * -1;
|
|
return x;
|
|
gain_voltage: ${voltage_cal2}
|
|
gain_ct: ${current_cal_ct4}
|
|
phase_b:
|
|
current:
|
|
name: ${ct5_name} ${amp_label}
|
|
id: ct5Amps
|
|
power:
|
|
name: ${ct5_name} ${watt_label}
|
|
id: ct5Watts
|
|
filters:
|
|
- lambda: |-
|
|
if (x < 0) return x * -1;
|
|
return x;
|
|
gain_voltage: ${voltage_cal2}
|
|
gain_ct: ${current_cal_ct5}
|
|
phase_c:
|
|
current:
|
|
name: ${ct6_name} ${amp_label}
|
|
id: ct6Amps
|
|
power:
|
|
name: ${ct6_name} ${watt_label}
|
|
id: ct6Watts
|
|
filters:
|
|
- lambda: |-
|
|
if (x < 0) return x * -1;
|
|
return x;
|
|
gain_voltage: ${voltage_cal2}
|
|
gain_ct: ${current_cal_ct6}
|
|
#this is only needed if monitoring 2 voltages
|
|
# frequency:
|
|
# name: Frequency 2
|
|
chip_temperature:
|
|
name: ${main_meter_name2} Chip Temp
|
|
line_frequency: ${electric_freq}
|
|
gain_pga: 1X
|
|
update_interval: ${update_time}
|
|
enable_offset_calibration: ${offset_calibration}
|
|
enable_gain_calibration: ${gain_calibration}
|
|
|
|
#Total A Main
|
|
################
|
|
- platform: template
|
|
name: Mainboard Total ${amp_label}
|
|
id: totalAmpsMain
|
|
lambda: return id(ct1Amps).state + id(ct2Amps).state + id(ct3Amps).state + id(ct4Amps).state + id(ct5Amps).state + id(ct6Amps).state ;
|
|
accuracy_decimals: 2
|
|
unit_of_measurement: A
|
|
device_class: current
|
|
update_interval: ${update_time}
|
|
|
|
#Total W Main
|
|
#################
|
|
- platform: template
|
|
name: Mainboard Total ${watt_label}
|
|
id: totalWattsMain
|
|
lambda: return id(ct1Watts).state + id(ct2Watts).state + id(ct3Watts).state + id(ct4Watts).state + id(ct5Watts).state + id(ct6Watts).state ;
|
|
accuracy_decimals: 1
|
|
unit_of_measurement: W
|
|
device_class: power
|
|
update_interval: ${update_time}
|
|
|
|
#kWh From CT 1
|
|
- platform: total_daily_energy
|
|
name: ${ct1_name} ${kwh_label}
|
|
id: ct1Kwh
|
|
power_id: ct1Watts
|
|
filters:
|
|
- multiply: 0.001
|
|
unit_of_measurement: kWh
|
|
device_class: energy
|
|
state_class: total_increasing
|
|
|
|
# kWh from CT 2
|
|
- platform: total_daily_energy
|
|
name: ${ct2_name} ${kwh_label}
|
|
id: ct2Kwh
|
|
power_id: ct2Watts
|
|
filters:
|
|
- multiply: 0.001
|
|
unit_of_measurement: kWh
|
|
device_class: energy
|
|
state_class: total_increasing
|
|
|
|
#kWh From CT 3
|
|
- platform: total_daily_energy
|
|
name: ${ct3_name} ${kwh_label}
|
|
id: ct3Kwh
|
|
power_id: ct3Watts
|
|
filters:
|
|
- multiply: 0.001
|
|
unit_of_measurement: kWh
|
|
device_class: energy
|
|
state_class: total_increasing
|
|
|
|
#kWh From CT 4
|
|
- platform: total_daily_energy
|
|
name: ${ct4_name} ${kwh_label}
|
|
id: ct4Kwh
|
|
power_id: ct4Watts
|
|
filters:
|
|
- multiply: 0.001
|
|
unit_of_measurement: kWh
|
|
device_class: energy
|
|
state_class: total_increasing
|
|
|
|
#kWh From CT 5
|
|
- platform: total_daily_energy
|
|
name: ${ct5_name} ${kwh_label}
|
|
id: ct5Kwh
|
|
power_id: ct5Watts
|
|
filters:
|
|
- multiply: 0.001
|
|
unit_of_measurement: kWh
|
|
device_class: energy
|
|
state_class: total_increasing
|
|
|
|
#kWh From CT 6
|
|
- platform: total_daily_energy
|
|
name: ${ct6_name} ${kwh_label}
|
|
id: ct6Kwh
|
|
power_id: ct6Watts
|
|
filters:
|
|
- multiply: 0.001
|
|
unit_of_measurement: kWh
|
|
device_class: energy
|
|
state_class: total_increasing |