@@ -448,7 +448,7 @@ def autorepeat_function_remotecontrol_recompute(initval: int, descr: Any, datadi
448448 ap_target = target - pv_power # + house_load ... already accounted for by the inverter
449449 power_control = "Enabled Power Control"
450450
451- elif power_control == "Enabled Feedin Priority" :
451+ elif power_control == "Enabled Feed-In Priority" :
452452 # Maximize grid export by using excess PV and battery
453453 if pv_power > house_load :
454454 # If more power than house load, try to export all excess
@@ -888,7 +888,7 @@ def autorepeat_function_powercontrolmode8_recompute(initval: int, descr: Any, da
888888 f"[Mode8 Negative Injection and Consumption Price] charge: available={ available } W within_bms={ max_charge } W "
889889 f"bms_cap≈{ bms_cap_w } W pct_cap={ pct_cap_w } W -> charge={ desired_charge } W"
890890 )
891- elif power_control == "Enabled Feedin Priority" :
891+ elif power_control == "Enabled Feed-In Priority" :
892892 pvlimit = setpvlimit
893893 pushmode_power = max (houseload - pv , 0.0 )
894894 elif power_control == "Enabled No Discharge" :
@@ -2038,7 +2038,7 @@ def value_function_bms_2_max_charge(initval: int, descr: Any, datadict: dict[str
20382038 #
20392039 ###
20402040 SolaxModbusNumberEntityDescription (
2041- name = "Backup Discharge Min SOC " ,
2041+ name = "Backup Min SoC " ,
20422042 key = "backup_discharge_min_soc" ,
20432043 register = 0x67 ,
20442044 fmt = "i" ,
@@ -2050,7 +2050,7 @@ def value_function_bms_2_max_charge(initval: int, descr: Any, datadict: dict[str
20502050 icon = "mdi:battery-charging-low" ,
20512051 ),
20522052 SolaxModbusNumberEntityDescription (
2053- name = "Backup Nightcharge Upper SOC " ,
2053+ name = "Backup Charge Battery to " ,
20542054 key = "backup_nightcharge_upper_soc" ,
20552055 register = 0x66 ,
20562056 fmt = "i" ,
@@ -2274,7 +2274,7 @@ def value_function_bms_2_max_charge(initval: int, descr: Any, datadict: dict[str
22742274 icon = "mdi:battery-charging-low" ,
22752275 ),
22762276 SolaxModbusNumberEntityDescription (
2277- name = "Feedin Nightcharge Upper SOC " ,
2277+ name = "Feed-In Priority Charge Battery to " ,
22782278 key = "feedin_nightcharge_upper_soc" ,
22792279 register = 0x64 ,
22802280 fmt = "i" ,
@@ -2430,7 +2430,7 @@ def value_function_bms_2_max_charge(initval: int, descr: Any, datadict: dict[str
24302430 icon = "mdi:battery-sync" ,
24312431 ),
24322432 SolaxModbusNumberEntityDescription (
2433- name = "Selfuse Discharge Min SOC " ,
2433+ name = "Self Use Min SoC " ,
24342434 key = "selfuse_discharge_min_soc" ,
24352435 register = 0x61 ,
24362436 fmt = "i" ,
@@ -2442,9 +2442,10 @@ def value_function_bms_2_max_charge(initval: int, descr: Any, datadict: dict[str
24422442 icon = "mdi:battery-charging-low" ,
24432443 ),
24442444 SolaxModbusNumberEntityDescription (
2445- name = "Selfuse Nightcharge Upper SOC " ,
2445+ name = "Self Use Charge Battery to " ,
24462446 key = "selfuse_nightcharge_upper_soc" ,
24472447 register = 0x63 ,
2448+ active_when = {"selfuse_night_charge_enable" : (1 ,)},
24482449 fmt = "i" ,
24492450 native_min_value = 10 ,
24502451 native_max_value = 100 ,
@@ -3286,7 +3287,7 @@ def value_function_bms_2_max_charge(initval: int, descr: Any, datadict: dict[str
32863287 icon = "mdi:dip-switch" ,
32873288 ),
32883289 SolaXModbusSwitchEntityDescription (
3289- name = "Selfuse Night Charge" ,
3290+ name = "Self Use Charge from Grid " ,
32903291 key = "selfuse_night_charge_enable" ,
32913292 register = 0x62 ,
32923293 sensor_key = "selfuse_night_charge_enable" ,
@@ -3315,7 +3316,7 @@ def value_function_bms_2_max_charge(initval: int, descr: Any, datadict: dict[str
33153316 11 : "Enabled Grid Control" , # computed variation of Power Control, grid import level in absence of PV
33163317 12 : "Enabled Battery Control" , # computed variation of Power Control, battery import without of PV
33173318 110 : "Enabled Self Use" , # variation of Grid Control with fixed target 0
3318- 120 : "Enabled Feedin Priority" , # variation of Battery Control with fixed target 0
3319+ 120 : "Enabled Feed-In Priority" , # variation of Battery Control with fixed target 0
33193320 130 : "Enabled No Discharge" , # missing HL from grid
33203321 # 2: "Enabled Quantity Control",
33213322 # 3: "Enabled SOC Target Control",
@@ -3350,7 +3351,7 @@ def value_function_bms_2_max_charge(initval: int, descr: Any, datadict: dict[str
33503351 83 : "Export-First Battery Limit" ,
33513352 84 : "Enabled Grid Control" ,
33523353 85 : "Enabled No Discharge" ,
3353- 86 : "Enabled Feedin Priority" ,
3354+ 86 : "Enabled Feed-In Priority" ,
33543355 # 9: "Mode 9 - PV and BAT control - Target SOC",
33553356 },
33563357 allowedtypes = AC | HYBRID | GEN4 | GEN5 | GEN6 ,
@@ -3445,7 +3446,7 @@ def value_function_bms_2_max_charge(initval: int, descr: Any, datadict: dict[str
34453446 0 : "Self Use Mode" ,
34463447 1 : "Force Time Use" ,
34473448 2 : "Back Up Mode" ,
3448- 3 : "Feedin Priority" ,
3449+ 3 : "Feed-In Priority" ,
34493450 },
34503451 allowedtypes = AC | HYBRID | GEN3 ,
34513452 icon = "mdi:dip-switch" ,
@@ -3456,7 +3457,7 @@ def value_function_bms_2_max_charge(initval: int, descr: Any, datadict: dict[str
34563457 register = 0x1F ,
34573458 option_dict = {
34583459 0 : "Self Use Mode" ,
3459- 1 : "Feedin Priority" ,
3460+ 1 : "Feed-In Priority" ,
34603461 2 : "Back Up Mode" ,
34613462 3 : "Manual Mode" ,
34623463 4 : "PeakShaving" ,
@@ -4060,7 +4061,7 @@ def value_function_bms_2_max_charge(initval: int, descr: Any, datadict: dict[str
40604061 0 : "Self Use Mode" ,
40614062 1 : "Force Time Use" ,
40624063 2 : "Back Up Mode" ,
4063- 3 : "Feedin Priority" ,
4064+ 3 : "Feed-In Priority" ,
40644065 },
40654066 allowedtypes = AC | HYBRID | GEN2 | GEN3 ,
40664067 internal = True ,
@@ -4070,7 +4071,7 @@ def value_function_bms_2_max_charge(initval: int, descr: Any, datadict: dict[str
40704071 register = 0x8B ,
40714072 scale = {
40724073 0 : "Self Use Mode" ,
4073- 1 : "Feedin Priority" ,
4074+ 1 : "Feed-In Priority" ,
40744075 2 : "Back Up Mode" ,
40754076 3 : "Manual Mode" ,
40764077 4 : "PeakShaving" ,
@@ -11025,7 +11026,7 @@ def value_function_bms_2_max_charge(initval: int, descr: Any, datadict: dict[str
1102511026
1102611027TIME_TYPES = [
1102711028 SolaXModbusTimeEntityDescription (
11028- name = "Charge Start 1 " ,
11029+ name = "Force Charge Start" ,
1102911030 key = "charge_start_1" ,
1103011031 register = 0x26 ,
1103111032 option_dict = TIME_OPTIONS ,
@@ -11034,7 +11035,7 @@ def value_function_bms_2_max_charge(initval: int, descr: Any, datadict: dict[str
1103411035 icon = "mdi:clock-start" ,
1103511036 ),
1103611037 SolaXModbusTimeEntityDescription (
11037- name = "Charge End 1 " ,
11038+ name = "Force Charge End" ,
1103811039 key = "charge_end_1" ,
1103911040 register = 0x27 ,
1104011041 option_dict = TIME_OPTIONS ,
@@ -11043,7 +11044,7 @@ def value_function_bms_2_max_charge(initval: int, descr: Any, datadict: dict[str
1104311044 icon = "mdi:clock-end" ,
1104411045 ),
1104511046 SolaXModbusTimeEntityDescription (
11046- name = "Charge Start 2" ,
11047+ name = "Force Charge Start 2" ,
1104711048 key = "charge_start_2" ,
1104811049 register = 0x2A ,
1104911050 option_dict = TIME_OPTIONS ,
@@ -11052,7 +11053,7 @@ def value_function_bms_2_max_charge(initval: int, descr: Any, datadict: dict[str
1105211053 icon = "mdi:clock-start" ,
1105311054 ),
1105411055 SolaXModbusTimeEntityDescription (
11055- name = "Charge End 2" ,
11056+ name = "Force Charge End 2" ,
1105611057 key = "charge_end_2" ,
1105711058 register = 0x2B ,
1105811059 option_dict = TIME_OPTIONS ,
@@ -11083,7 +11084,7 @@ def value_function_bms_2_max_charge(initval: int, descr: Any, datadict: dict[str
1108311084 icon = "mdi:clock-start" ,
1108411085 ),
1108511086 SolaXModbusTimeEntityDescription (
11086- name = "Discharge Start 1 " ,
11087+ name = "Allowed Discharge Start" ,
1108711088 key = "discharge_start_1" ,
1108811089 register = 0x28 ,
1108911090 option_dict = TIME_OPTIONS ,
@@ -11092,7 +11093,7 @@ def value_function_bms_2_max_charge(initval: int, descr: Any, datadict: dict[str
1109211093 icon = "mdi:clock-start" ,
1109311094 ),
1109411095 SolaXModbusTimeEntityDescription (
11095- name = "Discharge End 1 " ,
11096+ name = "Allowed Discharge End" ,
1109611097 key = "discharge_end_1" ,
1109711098 register = 0x29 ,
1109811099 option_dict = TIME_OPTIONS ,
@@ -11101,7 +11102,7 @@ def value_function_bms_2_max_charge(initval: int, descr: Any, datadict: dict[str
1110111102 icon = "mdi:clock-end" ,
1110211103 ),
1110311104 SolaXModbusTimeEntityDescription (
11104- name = "Discharge Start 2" ,
11105+ name = "Allowed Discharge Start 2" ,
1110511106 key = "discharge_start_2" ,
1110611107 register = 0x2C ,
1110711108 option_dict = TIME_OPTIONS ,
@@ -11110,7 +11111,7 @@ def value_function_bms_2_max_charge(initval: int, descr: Any, datadict: dict[str
1111011111 icon = "mdi:clock-start" ,
1111111112 ),
1111211113 SolaXModbusTimeEntityDescription (
11113- name = "Discharge End 2" ,
11114+ name = "Allowed Discharge End 2" ,
1111411115 key = "discharge_end_2" ,
1111511116 register = 0x2D ,
1111611117 option_dict = TIME_OPTIONS ,
@@ -11119,7 +11120,7 @@ def value_function_bms_2_max_charge(initval: int, descr: Any, datadict: dict[str
1111911120 icon = "mdi:clock-end" ,
1112011121 ),
1112111122 SolaXModbusTimeEntityDescription (
11122- name = "Charge End 1 " ,
11123+ name = "Force Charge End" ,
1112311124 key = "charge_end_1" ,
1112411125 register = 0x69 ,
1112511126 option_dict = TIME_OPTIONS_GEN4 ,
@@ -11128,7 +11129,7 @@ def value_function_bms_2_max_charge(initval: int, descr: Any, datadict: dict[str
1112811129 icon = "mdi:clock-end" ,
1112911130 ),
1113011131 SolaXModbusTimeEntityDescription (
11131- name = "Charge End 2" ,
11132+ name = "Force Charge End 2" ,
1113211133 key = "charge_end_2" ,
1113311134 register = 0x6E ,
1113411135 option_dict = TIME_OPTIONS_GEN4 ,
@@ -11137,7 +11138,7 @@ def value_function_bms_2_max_charge(initval: int, descr: Any, datadict: dict[str
1113711138 icon = "mdi:clock-end" ,
1113811139 ),
1113911140 SolaXModbusTimeEntityDescription (
11140- name = "Charge Start 1 " ,
11141+ name = "Force Charge Start" ,
1114111142 key = "charge_start_1" ,
1114211143 register = 0x68 ,
1114311144 option_dict = TIME_OPTIONS_GEN4 ,
@@ -11146,7 +11147,7 @@ def value_function_bms_2_max_charge(initval: int, descr: Any, datadict: dict[str
1114611147 icon = "mdi:clock-start" ,
1114711148 ),
1114811149 SolaXModbusTimeEntityDescription (
11149- name = "Charge Start 2" ,
11150+ name = "Force Charge Start 2" ,
1115011151 key = "charge_start_2" ,
1115111152 register = 0x6D ,
1115211153 option_dict = TIME_OPTIONS_GEN4 ,
@@ -11155,7 +11156,7 @@ def value_function_bms_2_max_charge(initval: int, descr: Any, datadict: dict[str
1115511156 icon = "mdi:clock-start" ,
1115611157 ),
1115711158 SolaXModbusTimeEntityDescription (
11158- name = "Discharge End 1 " ,
11159+ name = "Allowed Discharge End" ,
1115911160 key = "discharge_end_1" ,
1116011161 register = 0x6B ,
1116111162 option_dict = TIME_OPTIONS_GEN4 ,
@@ -11164,7 +11165,7 @@ def value_function_bms_2_max_charge(initval: int, descr: Any, datadict: dict[str
1116411165 icon = "mdi:clock-end" ,
1116511166 ),
1116611167 SolaXModbusTimeEntityDescription (
11167- name = "Discharge End 2" ,
11168+ name = "Allowed Discharge End 2" ,
1116811169 key = "discharge_end_2" ,
1116911170 register = 0x70 ,
1117011171 option_dict = TIME_OPTIONS_GEN4 ,
@@ -11173,7 +11174,7 @@ def value_function_bms_2_max_charge(initval: int, descr: Any, datadict: dict[str
1117311174 icon = "mdi:clock-end" ,
1117411175 ),
1117511176 SolaXModbusTimeEntityDescription (
11176- name = "Discharge Start 1 " ,
11177+ name = "Allowed Discharge Start" ,
1117711178 key = "discharge_start_1" ,
1117811179 register = 0x6A ,
1117911180 option_dict = TIME_OPTIONS_GEN4 ,
@@ -11182,7 +11183,7 @@ def value_function_bms_2_max_charge(initval: int, descr: Any, datadict: dict[str
1118211183 icon = "mdi:clock-start" ,
1118311184 ),
1118411185 SolaXModbusTimeEntityDescription (
11185- name = "Discharge Start 2" ,
11186+ name = "Allowed Discharge Start 2" ,
1118611187 key = "discharge_start_2" ,
1118711188 register = 0x6F ,
1118811189 option_dict = TIME_OPTIONS_GEN4 ,
0 commit comments