-
-
Notifications
You must be signed in to change notification settings - Fork 16
AC Inverter Curtailment
PowerSync can directly control a separate AC-coupled solar inverter to stop grid export during negative price periods — regardless of which battery system you have. This is useful when your solar inverter is a different brand from your battery, or when your battery system doesn't have its own export control.
PowerSync curtails AC-coupled solar when exporting would lose money or when negative import pricing makes grid import preferable. In practice this means curtailment can trigger when import price is below 0 c/kWh, or when the site is exporting and export earnings are negative or near-zero. When prices recover, the inverter is restored to full output.
Load-Following Mode: Most supported brands can track your real-time home load. Instead of shutting the inverter down to zero, the output limit is set to match your current consumption — solar keeps powering the house and charging the battery, only the grid export is blocked. A fast 30-second update timer re-applies the limit as your load changes throughout the day. If home load data is unavailable, the inverter falls back to zero export.
Some hardware paths are zero-export only: Sigenergy and AlphaESS rely on their inverter export-limit registers, and Enphase grid-profile fallback can only switch to a configured zero-export profile. Fronius defaults to using the inverter's preconfigured export limit unless Load-Following Mode is enabled in PowerSync.
Restore SOC Threshold: If curtailment is active but your battery level drops below this value (default 98%), the inverter is restored to full output so the battery can charge. Raise this if you want curtailment to hold longer; lower it if you want the battery to have more room before restoration kicks in.
- Go to Settings > Devices & Services > PowerSync > Configure
- Select Solar Curtailment and enable AC inverter curtailment, or select AC Inverter if you are editing an existing inverter connection
- Choose your inverter brand
- Enter the brand-specific connection details (see below)
- Set the Restore SOC Threshold (default 98%)
String inverters without an integrated battery. Use this for SG-series inverters paired with any battery system.
SG2.5RS, SG3.0RS, SG3.6RS, SG4.0RS, SG5.0RS, SG6.0RS, SG7.0RS, SG8.0RS, SG10RS, SG12RS, SG15RS, SG17RS, SG20RS
- WiNet-S LAN/WiFi dongle installed and connected to your network
- Inverter reachable by IP on your local network
| Setting | Default |
|---|---|
| Host | Inverter IP address |
| Port | 502 |
| Slave ID | 1 |
Note: If you also have a Sungrow SH-series battery system, PowerSync will warn you if the AC inverter and battery share the same IP, port, and slave ID — they must be configured separately.
| Model | Type |
|---|---|
| Primo | Single-phase |
| Symo | Three-phase |
| Gen24 / Tauro | Hybrid-capable |
| Eco | Budget single-phase |
- Modbus TCP enabled on the inverter (Fronius Web UI > Communication > Modbus)
- Inverter reachable by IP
| Setting | Default |
|---|---|
| Host | Inverter IP address |
| Port | 502 |
| Slave ID | 1 |
| Setting | Default | Description |
|---|---|---|
| Load-Following Mode | Off | Enable for direct power-limit control |
Load-Following Mode off (default): PowerSync disables power limiting entirely. The inverter falls back to whatever export limit is pre-configured in its settings. For zero export, the inverter's built-in soft export limit must be set to 0 W by your installer — PowerSync doesn't touch this value.
Load-Following Mode on: PowerSync writes a calculated power limit directly via Modbus. Rated capacity is auto-detected from the inverter. Use this mode if you don't have a 0 W export profile configured and want PowerSync to actively track home load.
| Series | Models |
|---|---|
| L1 (Single Phase) | SUN2000-2KTL-L1 through SUN2000-6KTL-L1 |
| M0/M1 (Three Phase) | SUN2000-3KTL-M0 through SUN2000-10KTL-M1 |
| M2 (Three Phase, Higher Power) | SUN2000-8KTL-M2 through SUN2000-20KTL-M2 |
- Huawei Smart Dongle (WiFi or LAN) installed on the inverter
- Smart Dongle connected to your local network and reachable by IP
| Setting | Default |
|---|---|
| Host | Smart Dongle IP address |
| Port | 502 (some firmware uses 6607) |
| Slave ID | 1 |
Curtailment controls export at the microinverter level via the IQ Gateway's local interface.
Envoy (Legacy), Envoy-S, Envoy-S Metered, IQ Gateway, IQ Gateway Metered
- IQ Gateway reachable by IP on your local network
- For firmware 7.x+: a JWT token is required (see below)
| Setting | Default | Required |
|---|---|---|
| Host | IQ Gateway IP address | Yes |
| Port | 443 | Yes |
| JWT Token | — | Optional (auto-refreshed if credentials provided) |
| Enlighten Username | — | Optional — for automatic token refresh |
| Enlighten Password | — | Optional — for automatic token refresh |
| Gateway Serial Number | — | Optional — auto-detected |
| Normal Grid Profile Name | — | Optional — grid profile fallback |
| Zero Export Grid Profile Name | — | Optional — grid profile fallback |
| Installer Access | Off | Optional |
Firmware 7.x+ requires a JWT token. You have two options:
- Automatic (recommended): Enter your Enlighten email and password. PowerSync fetches and refreshes the token automatically every ~11 hours.
- Manual: Paste a pre-generated JWT token directly. You'll need to refresh it manually when it expires.
If your gateway doesn't support the export limit feature (some older firmware or region configurations), PowerSync can switch between named grid profiles to enforce zero export. Enter the exact profile names as they appear in your Enlighten/installer app. Leave blank to use the export limit feature only.
Enable Installer Access if your account has installer-level permissions — this unlocks grid profile switching for accounts with elevated access.
ET, EH, BT, BH, ES, EM series
Note: DT, D-NS, and other grid-only (non-hybrid) models do not support export limiting.
- GoodWe WiFi or LAN dongle connected to your network
- Inverter reachable by IP
| Setting | Default |
|---|---|
| Host | Inverter IP address |
| Port | 502 |
| Slave ID | 247 |
Note: GoodWe's default Slave ID is 247, not 1. Don't change this unless you've explicitly reconfigured the inverter.
Curtailment via the inverter's built-in HTTP interface — no special adapter required.
TLC5000, TLC6000, TLC8000, TLC10000, Zeversolair Mini 3000, Zeversolair TL3000
- Inverter connected to your network via its built-in WiFi or Ethernet
- Inverter reachable by IP on your local network (no authentication required)
| Setting | Default |
|---|---|
| Host | Inverter IP address |
| Port | 80 |
Curtailment via direct local connection or HA entity fallback using the homeassistant-solax-modbus integration.
- Inverter reachable by IP on your local network, or the homeassistant-solax-modbus integration already installed
| Setting | Default |
|---|---|
| Host | Inverter IP address |
| Port | 502 |
| Slave ID | 1 |
Curtailment via SolarEdge Modbus TCP / SunSpec active-power control, with optional HA entity fallback for installs already using a SolarEdge Modbus integration.
- Modbus TCP enabled on the SolarEdge inverter, gateway, or Modbus leader
- Inverter-side active-power control enabled in SetApp or the LCD menu
- Inverter reachable by IP, or an HA entity prefix that exposes an active power limit number such as
number.solaredge_active_power_limit
| Setting | Default |
|---|---|
| Host | SolarEdge inverter or Modbus leader IP address |
| Port | 502 |
| Slave ID | 1 |
| Rated AC power | 5000 W |
| HA entity prefix fallback | Optional |
PowerSync writes SolarEdge active power as a percentage. During curtailment it sets the active power limit to 0%; when export value recovers it restores the limit to 100%. Rated AC power is used to convert load-following requests into SolarEdge's percentage-based limit.
Note: Some SolarEdge firmware or grid profiles reject third-party power-control writes. If the connection test fails, verify Modbus TCP, active-power control permissions, firmware support, and installer/grid profile settings.
Curtailment via the grid export limit. Use this when a third-party AC-coupled inverter is connected to your Sigenergy system's Smart Port.
- Sigenergy system with local Modbus access enabled (configured by installer)
- System reachable by IP
| Setting | Default |
|---|---|
| Host | Sigenergy system IP address |
| Port | 502 |
| Slave ID | 247 |
Note: In this mode, curtailment sets zero export. Load-following is not supported — solar continues powering the house and charging the battery, only grid export is blocked.
Curtailment uses the same local connection as the battery system setup and writes the AlphaESS export-limit register. It is zero-export control, not dynamic load following.
- AlphaESS inverter connected via Ethernet and reachable by IP
- Local control enabled on the inverter (usually default)
| Setting | Default |
|---|---|
| Host | Inverter IP address |
| Port | 502 |
| Slave ID | 85 |
AlphaESS uses Slave ID 85 by factory default — not 1 or 247 like most other brands.
Use this when FoxESS is configured as a standalone AC-coupled inverter rather than as the primary battery system. If FoxESS is already your battery system, DC curtailment is handled automatically — you don't need to configure AC curtailment separately.
H1, H3, H3-Pro, H3-Smart, KH
- FoxESS inverter connected to your network
- H3-Smart / H3-Pro: connects directly via built-in WiFi (no adapter needed)
- H1 / H3 / KH: requires an external WiFi adapter (look for "espressif" on your network)
- Inverter reachable by IP
| Setting | Default |
|---|---|
| Host | Inverter IP address |
| Port | 502 |
| Slave ID | 247 |