Set active power limit

Use this action to cap the inverter’s own generation, as a percentage of its rated power. Unlike Set feed-in limit, which only throttles what reaches the grid, this caps generation directly, without depending on the inverter’s own sense of grid flow.

The rated power is the figure on the inverter’s nameplate, which is usually also part of its model name: a 4.4 KTLX-G3 is rated 4.4 kW, so a limit of 50% caps it at 2.2 kW. The integration doesn’t currently read the rating from the inverter itself.

Only users with administrator rights can run this action.

Using this action from the user interface

If you prefer building automations and scripts visually, Home Assistant walks you through this action step by step. You pick what to target, tweak a few options, and save. No YAML knowledge required.

To set the active power limit from an automation or a script:

  1. Go to Settings > Automations & scenes.
  2. Open an existing automation or script, or select Create automation > Create new automation.
  3. If you’re setting up a new automation, add a trigger in the When section. Scripts don’t need a trigger. They run when something else calls them.
  4. In the Then do section, select Add action.
  5. From the search box, search for and select Sofar: Set active power limit.
  6. Select the Inverter, whether the limit is Enabled, and the Limit percentage.
  7. Select Save.

This action does not support targets. In the UI, you are not prompted to choose an area, device, entity, or label.

Options in the UI

Inverter (Required)

The Sofar inverter to send this to.

Enabled (Required)

Whether the inverter applies the limit. Limit is required either way, because turning this off still writes it, but the inverter ignores it until it’s enabled again.

Limit (Required)

The output ceiling, as a percentage of rated power.

Using this action in YAML

If you work directly in YAML, or you want to know exactly what Home Assistant does under the hood, this section has the technical reference. It lists the field names you use in YAML, their types, and which ones are required.

In YAML, refer to this action as sofar.set_active_power_limit. A basic example looks like this:

ActionAn action makes Home Assistant do something, for example, turn on a light, send a notification, or activate a scene. Automations and scripts run a list of actions. [Learn more]
action: sofar.set_active_power_limit
data:
  config_entry_id: a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4
  enabled: true
  limit: 50

This caps the inverter’s own output at 50% of its rated power.

Options in YAML

config_entry_id string Required

The Sofar inverter to send this to.

enabled boolean Required

Whether the inverter applies the limit. Limit is required either way, because turning this off still writes it, but the inverter ignores it until it’s enabled again.

limit float Required

The output ceiling, as a percentage of rated power.

Good to know

  • If the config entry you select doesn’t serve the active power control registers, the action fails with an error instead of doing nothing silently.

Try it yourself

Ready to test this? Open Settings > Tools > Actions, search for this action, fill in the fields, and select Perform action. You see what happens on your actual entitiesAn entity represents a sensor, actor, or function in Home Assistant. Entities are used to monitor physical properties or to control other entities. An entity is usually part of a device or a service. [Learn more] without writing a line of YAML.

More examples

Real scenarios where this action shows up in automations and scripts. Copy any example and adapt it to your setup.

Tip

You don’t need to edit YAML to use these examples. Copy a YAML snippet from this page, open the automation editor in Home Assistant, and press Ctrl+V (or Cmd+V on Mac). Home Assistant automatically converts the pasted YAML into the visual editor format, whether it’s a full automation, a single trigger, a condition, or an action.

Automation: curtail generation when a helper is turned on

Some grid operators or tariffs ask for generation to be curtailed at short notice. This automation reacts to an input_boolean helper you toggle (by hand, or from another automation) by capping the inverter to 20% of rated power, and lifts the cap again when the helper turns off.

  • Trigger: State, input_boolean.curtail_solar, turns on
  • Action: Sofar: Set active power limit
YAML example for reacting to a curtailment helper
AutomationAutomations in Home Assistant allow you to automatically respond to things that happen in and around your home. [Learn more]
alias: "Curtail Sofar generation"
triggers:
  - trigger: state
    entity_id: input_boolean.curtail_solar
    to: "on"
actions:
  - action: sofar.set_active_power_limit
    data:
      config_entry_id: a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4
      enabled: true
      limit: 20

Still stuck?

The Home Assistant community is quick to help: join Discord for real-time chat, post on the community forum with the action you’re calling and what you expected to happen, or share on our subreddit /r/homeassistant.

Tip

AI assistants like ChatGPT or Claude can also explain actions or suggest the right one when you describe what you want in plain language.

Related actions

Explore related actions: