Skip to content

Commit 16aceb8

Browse files
committed
Added generator related registers - requested in GH-5
1 parent 797d3f5 commit 16aceb8

File tree

1 file changed

+25
-1
lines changed

1 file changed

+25
-1
lines changed

deye_controller/modbus/protocol.py

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -304,11 +304,20 @@ class HoldingRegisters:
304304
BattRestartVoltage = FloatType(119, 'battery_restart_voltage', 100, suffix='V')
305305
BattLowVoltage = FloatType(120, 'battery_low_voltage', 100, suffix='V')
306306

307+
""" Generator settings """
308+
GeneratorWorkingTime = FloatType(121, 'gen_max_working_time', 10, suffix='h')
309+
GeneratorCoolingTime = FloatType(122, 'gen_cooling_time', 10, suffix='h')
310+
GeneratorStartVoltage = FloatType(123, 'gen_charge_start_voltage', 100, suffix='V')
311+
GeneratorStartCapacity = FloatType(124, 'gen_charge_start_soc', 100, suffix='%')
312+
GeneratorChargeCurrent = IntType(125, 'gen_charge_current', suffix='A')
313+
307314
""" Generator settings up to register 125 """
308315
GridChargeStartVolts = FloatType(126, 'grid_charge_start_voltage', 100, suffix='V')
309316
GridChargeStartCapacity = IntType(127, 'grid_charge_start_soc', suffix='%')
310317
GridChargeCurrent = IntType(128, 'grid_charge_current', suffix='A')
311318

319+
""" Smart Load control - need more info """
320+
312321
GridExportLimit = IntType(143, 'grid_max_output_pwr', suffix='W')
313322
SolarSell = BoolType(145, 'solar_sell')
314323
SellTimeOfUse = TimeOfUseSell()
@@ -480,6 +489,15 @@ class HoldingRegisters:
480489
LoadPhaseCPower = IntType(652, 'load_phase_C_power', suffix='W', signed=True)
481490
LoadTotalPower = IntType(653, 'load_total_power', suffix='W', signed=True)
482491
""" GENERATOR skipped """
492+
493+
GeneratorPhaseAVoltage = FloatType(661, 'gen_phase_A_volt', 10, suffix='V')
494+
GeneratorPhaseBVoltage = FloatType(662, 'gen_phase_B_volt', 10, suffix='V')
495+
GeneratorPhaseCVoltage = FloatType(663, 'gen_phase_C_volt', 10, suffix='V')
496+
GeneratorPhaseAPower = IntType(664, 'gen_phase_A_power', suffix='W', signed=True)
497+
GeneratorPhaseBPower = IntType(665, 'gen_phase_B_power', suffix='W', signed=True)
498+
GeneratorPhaseCPower = IntType(666, 'gen_phase_C_power', suffix='W', signed=True)
499+
GeneratorTotalPower = IntType(667, 'gen_total_power', suffix='W', signed=True)
500+
483501
""" PV Inputs """
484502
PV1InPower = IntType(672, 'pv1_in_power', suffix='W')
485503
PV2InPower = IntType(673, 'pv2_in_power', suffix='W')
@@ -700,7 +718,13 @@ class WritableRegisters:
700718

701719
BatteryVoltsShutDown = FloatWritable(address=118, low_limit=38, high_limit=63, scale=100)
702720
BatteryVoltsRestart = FloatWritable(address=119, low_limit=38, high_limit=63, scale=100)
703-
BatteryVoltsLow = FloatWritable(address=119, low_limit=38, high_limit=63, scale=100)
721+
BatteryVoltsLow = FloatWritable(address=120, low_limit=38, high_limit=63, scale=100)
722+
""" Generator Settings """
723+
GeneratorMaxWorkTime = FloatWritable(address=121, low_limit=0, high_limit=23, scale=10)
724+
GeneratorCoolingTime = FloatWritable(address=122, low_limit=0, high_limit=23, scale=10)
725+
GeneratorStartVoltage = FloatWritable(address=123, low_limit=0, high_limit=63, scale=100)
726+
GeneratorStartCapacity = FloatWritable(address=124, low_limit=0, high_limit=63, scale=100)
727+
GeneratorChargeCurrent = IntWritable(address=125, low_limit=0, high_limit=185)
704728

705729
GridChargeStartVoltage = FloatWritable(address=126, low_limit=38, high_limit=61, scale=100)
706730
GridChargeStartCapacity = IntWritable(address=127, low_limit=0, high_limit=100)

0 commit comments

Comments
 (0)