Sigenergy ESS Max Charging/Discharging Limit Entities Not Writable #309
Unanswered
discipleofnagash
asked this question in
Troubleshooting
Replies: 2 comments 2 replies
-
|
Thanks for the detailed report — this is super helpful. Could you please share complete debug logs for one full write attempt so we can pinpoint where it fails? What to capture
logger:
default: info
logs:
custom_components.sigen: debug
Please include in your message
We’re specifically looking for lines showing:
With that full trace we can confirm whether this is a write failure, mode/firmware gate, or readback/persistence behavior. |
Beta Was this translation helpful? Give feedback.
0 replies
-
|
Good point — for logging steps, please follow the existing guide here: #54 For this specific issue, please also include:
That will make it much easier to correlate write + readback in the debug log. |
Beta Was this translation helpful? Give feedback.
2 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Hey, I have the following problem when setting up my integration - this is a summary from Claude Code:
number.sigen_plant_ess_max_charging_limit and number.sigen_plant_ess_max_discharging_limit cannot be written to. They remain stuck at 0.0 kW despite:
Being enabled in the entity registry
Having set_value_fn defined in code
Automations triggering successfully
Manual Developer Tools → Services calls
What We Verified
No inverter-level alternatives - Only plant-level entities exist for these limits (checked code + modbus register definitions)
Entities are enabled - disabled_by: null in entity registry
Write function exists in code (number.py):
set_value_fn=lambda coordinator, _, value: coordinator.async_write_parameter(
"plant", None, "plant_ess_max_charging_limit", value
)
Modbus register defined (modbusregisterdefinitions.py):
"plant_ess_max_charging_limit": ModbusRegisterDefinition(
address=40032,
count=2,
register_type=RegisterType.HOLDING, # Should be writable
data_type=DataType.U32,
gain=1000,
unit=UnitOfPower.KILO_WATT,
applicable_to=["hybrid_inverter"],
)
Other entities work:
I tried to set this via:
automation
UI
Developer tools
Note, when trying to set the value, I did set the Mode to an appropriate selection beforehand, e.g. Command Discharging (PV First) and then tried to update number.sigen_plant_ess_max_discharging_limit.
I am trying to enable this for integration with PredBat
Beta Was this translation helpful? Give feedback.
All reactions