From b63e6b3dcb5d79ea6899e3a316f14fbad4129654 Mon Sep 17 00:00:00 2001 From: wills106 Date: Sun, 13 Oct 2024 12:59:27 +0100 Subject: [PATCH] Revert "Solax Gen4 meter direction and core meter direction fix" --- .../solax_modbus/plugin_solax.py | 79 ++----------------- 1 file changed, 6 insertions(+), 73 deletions(-) diff --git a/custom_components/solax_modbus/plugin_solax.py b/custom_components/solax_modbus/plugin_solax.py index 6586eeeb..f0959283 100644 --- a/custom_components/solax_modbus/plugin_solax.py +++ b/custom_components/solax_modbus/plugin_solax.py @@ -201,19 +201,6 @@ def value_function_hardware_version_g4(initval, descr, datadict): def value_function_hardware_version_g5(initval, descr, datadict): return f"Gen5" -# Function to apply meter direction to raw power measurements -def value_function_measured_power(initval, descr, datadict): - meter_1_direction = datadict.get('meter_1_direction', 'Negativ') - _LOGGER.debug(f"meter_1_direction: {meter_1_direction}") - - # If meter is set to Positiv direction it reports imported energy as negative values - # If meter is set to Negative direction it reports imported energy as positive values - measured_power = datadict.get('measured_power_raw', 0) - measured_power = measured_power if meter_1_direction == 'Negativ' else -(measured_power) - _LOGGER.debug(f"measured_power: {measured_power}") - - return measured_power - def value_function_house_load(initval, descr, datadict): return ( datadict.get('inverter_power', 0) - datadict.get('measured_power', 0) + datadict.get('meter_2_measured_power', 0) ) @@ -1382,32 +1369,6 @@ def value_function_battery_voltage_cell_difference(initval, descr, datadict): entity_registry_enabled_default = False, icon = "mdi:meter-electric", ), - SolaxModbusSelectEntityDescription( - name = "Meter 1 Direction", - key = "meter_1_direction", - register = 0x010B, - option_dict = { - 0: "Positive", - 1: "Negative", - }, - allowedtypes = AC | HYBRID | GEN4, - entity_category = EntityCategory.CONFIG, - entity_registry_enabled_default = False, - icon = "mdi:meter-electric", - ), - SolaxModbusSelectEntityDescription( - name = "Meter 2 Direction", - key = "meter_2_direction", - register = 0x010C, - option_dict = { - 0: "Positive", - 1: "Negative", - }, - allowedtypes = AC | HYBRID | GEN4, - entity_category = EntityCategory.CONFIG, - entity_registry_enabled_default = False, - icon = "mdi:meter-electric", - ), SolaxModbusSelectEntityDescription( name = "Device Lock", key = "device_lock", @@ -3181,22 +3142,6 @@ def value_function_battery_voltage_cell_difference(initval, descr, datadict): allowedtypes = AC | HYBRID | GEN3, internal = True, ), - SolaXModbusSensorEntityDescription( - key = "meter_1_direction", - register = 0x010B , - scale = { 0: "Positive", - 1: "Negative", }, - allowedtypes = AC | HYBRID | GEN4, - internal = True, - ), - SolaXModbusSensorEntityDescription( - key = "meter_2_direction", - register = 0x010C, - scale = { 0: "Positive", - 1: "Negative", }, - allowedtypes = AC | HYBRID | GEN4, - internal = True, - ), SolaXModbusSensorEntityDescription( name = "FVRT Function", key = "fvrt_function", @@ -4222,8 +4167,8 @@ def value_function_battery_voltage_cell_difference(initval, descr, datadict): allowedtypes = AC | HYBRID | GEN4 | GEN5, ), SolaXModbusSensorEntityDescription( - name = "Measured Power Raw", - key = "measured_power_raw", + name = "Measured Power", + key = "measured_power", native_unit_of_measurement = UnitOfPower.WATT, device_class = SensorDeviceClass.POWER, state_class = SensorStateClass.MEASUREMENT, @@ -4231,7 +4176,6 @@ def value_function_battery_voltage_cell_difference(initval, descr, datadict): register_type = REG_INPUT, unit = REGISTER_S32, allowedtypes = AC | HYBRID | GEN2 | GEN3 | GEN4 | GEN5, - internal = True, ), SolaXModbusSensorEntityDescription( name = "Grid Export Total", @@ -6012,15 +5956,6 @@ def value_function_battery_voltage_cell_difference(initval, descr, datadict): # Computed # ##### - SolaXModbusSensorEntityDescription( - name = "Measured Power", - key = "measured_power", - native_unit_of_measurement = UnitOfPower.WATT, - device_class = SensorDeviceClass.POWER, - state_class = SensorStateClass.MEASUREMENT, - value_function = value_function_measured_power, - allowedtypes = MIC | GEN2 | GEN3 | GEN4 | GEN5, - ), SolaXModbusSensorEntityDescription( name = "Grid Export", key = "grid_export", @@ -6436,8 +6371,8 @@ def value_function_battery_voltage_cell_difference(initval, descr, datadict): entity_category = EntityCategory.DIAGNOSTIC, ), SolaXModbusSensorEntityDescription( - name = "Measured Power Raw", - key = "measured_power_raw", + name = "Measured Power", + key = "measured_power", native_unit_of_measurement = UnitOfPower.WATT, device_class = SensorDeviceClass.POWER, state_class = SensorStateClass.MEASUREMENT, @@ -6445,7 +6380,6 @@ def value_function_battery_voltage_cell_difference(initval, descr, datadict): #newblock = True, register_type = REG_INPUT, allowedtypes = MIC | GEN | GEN2, - internal = True, ), SolaXModbusSensorEntityDescription( name = "Run Mode", @@ -6907,15 +6841,14 @@ def value_function_battery_voltage_cell_difference(initval, descr, datadict): allowedtypes = MIC | GEN4, ), SolaXModbusSensorEntityDescription( - name = "Measured Power Raw", - key = "measured_power_raw", + name = "Measured Power", + key = "measured_power", native_unit_of_measurement = UnitOfPower.WATT, device_class = SensorDeviceClass.POWER, state_class = SensorStateClass.MEASUREMENT, register = 0x409, register_type = REG_INPUT, allowedtypes = MIC | GEN4 | GEN5, - internal = True, ), SolaXModbusSensorEntityDescription( name = "PV Voltage 1",