Growatt Inverter On/Off/Pause

Hi,

I have a dynamic energy contract. Last weekend the prices were -60 euro cent per KWh. This means that every solar KWh I return to the grid costs me 60 euro cent.

Is it possible to switch the inverter off or pause during the time this situation is happening?
I have a MOD9000TL3-X

Thanks,
Rien

Hi,

how and with what did you integrate the inverter into Home Assistant? If you have/use a Growatt Shine Stick you can flash ESPHome on it and then integrate the inverter with Home Assistant via ESPHome. See:

FYI: GPIO0 and Ground must be connected by a bridge so that the stick goes into flash mode.
ShineStick_Bruecke

With ESPHome you can set the Max Output Power for the inverter
Growatt_Output_Power


number:
  - platform: modbus_controller
    name: "${devicename} Max Output Power"
    address: 3
    value_type: U_WORD
    min_value: 0
    max_value: 100
    entity_category: config

and use it for/on automation. If … then set Max Output Power to 50, 25, 10 or whatever.

Hi @jim_os,

This is even a better idea.

I had a spare ShineWiFi-X so I tried to flash it, but I can’t get it flashed.

That’s bad, of course, but unfortunately I can’t help you remotely. Unfortunately, all short instructions that I have posted in forums are completely in German. :slightly_smiling_face:
Example: Growatt MIC MQTT - Wechselrichter - Photovoltaikforum


Hi, tech question, the solar panels will produce electricity so where does the power go when you say ‘reduce’ ?

To the inverter. :slightly_smiling_face:

Example: Growatt Inverter

Only the values for the possible input data (DC) from the sum of all connected PV modules must be observed. The AC output power of an inverter can be regulated and thus reduced.

Hi,
Do you know whether sending the “max output power” to register 3 will be saved on the EEPROM of the inverter?

I would like to regulate the output power based on feed in power prices and household demand but I am concerned to change the value frequently and potentially “wear out” or damage the EEPROM.

Yes. The inverter switches off overnight and the setting is still there the next morning. Unfortunately, I can’t tell you what effect a dynamic adjustment of the value (several times a day) will have.

Hello, i have a working cofiguration for my MOD 4000 TL3 -X

This is my yaml

esphome:
name: grod1n
on_boot:
priority: 600
then:
- lambda: |-
delay(60000);
project:
name: PVPro.ShineWifi-X
version: “1.0”

esp8266:
board: d1_mini

Enable logging

logger:
baud_rate: 0

Enable Home Assistant API

api:
encryption:
key: “w4I+/GJsYOT8eAyIyetz3KjzJN+H9StwT2x1JTnkOl0=”

ota:

wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password

Enable fallback hotspot (captive portal) in case wifi connection fails

ap:
ssid: “Grod1n Fallback Hotspot”
password: “12345678”

Enable Web server

web_server:
port: 80

captive_portal:

time:

  • platform: homeassistant
    id: homeassistant_time

output:

Blue Led

  • id: light_bl
    platform: gpio
    pin: 16

Green Led

  • id: light_gr
    platform: gpio
    pin: 0

Red Led

  • id: light_rd
    platform: gpio
    pin: 2

uart:

  • id: uart_modbus
    baud_rate: 9600
    tx_pin: GPIO1
    rx_pin: GPIO3

modbus:
uart_id: uart_modbus
flow_control_pin: GPIO4

For newer inverters use protocol_version “RTU2” like below. Certain older models require “RTU”.

sensor:

  • platform: growatt_solar
    update_interval: 5s
    protocol_version: RTU2

    inverter_status:
    name: “Growatt Status Code”
    phase_a:
    voltage:
    name: “Growatt Voltage Phase A”
    current:
    name: “Growatt Current Phase A”
    active_power:
    name: “Growatt Power Phase A”
    phase_b:
    voltage:
    name: “Growatt Voltage Phase B”
    current:
    name: “Growatt Current Phase B”
    active_power:
    name: “Growatt Power Phase B”
    phase_c:
    voltage:
    name: “Growatt Voltage Phase C”
    current:
    name: “Growatt Current Phase C”
    active_power:
    name: “Growatt Power Phase C”
    pv1:
    voltage:
    name: “Growatt PV1 Voltage”
    current:
    name: “Growatt PV1 Current”
    active_power:
    name: “Growatt PV1 Active Power”
    pv2:
    voltage:
    name: “Growatt PV2 Voltage”
    current:
    name: “Growatt PV2 Current”
    active_power:
    name: “Growatt PV2 Active Power”
    active_power:
    name: “Growatt Grid Active Power”
    pv_active_power:
    name: “Growatt PV Active Power”
    frequency:
    name: “Growatt Frequency”
    energy_production_day:
    name: “Growatt Today’s Generation”
    accuracy_decimals: 1
    total_energy_production:
    name: “Growatt Total Energy Production”
    accuracy_decimals: 1
    inverter_module_temp:
    name: “Growatt Inverter Module Temp”

  • platform: uptime
    name: “Growatt Uptime”
    update_interval: 60s

  • platform: wifi_signal
    name: “Growatt Wi-Fi Signal”
    update_interval: 60s

text_sensor:

  • platform: wifi_info
    ip_address:
    name: “Growatt IP Address”
    ssid:
    name: “Growatt Wi-Fi SSID”
    bssid:
    name: “Growatt Wi-Fi BSSID”
  • platform: version
    name: “ESPHome Version”
    hide_timestamp: true

If i put this on de yaml.

number:

  • platform: modbus_controller
    name: “${devicename} MaxOutputPct”
    address: 3
    value_type: U_WORD
    min_value: 0
    max_value: 100
    entity_category: config

i get error’s

Can you please tel me the right way?

Best Regard, Patrick

Sorry, I can’t say anything about that. According to the last Growatt Modbus documentation version 1.24 (from 2020) I have, the Modbus address 3 should be correct.


But I also use a MIC 600TL-X and therefore a different ESPHome syntax.

Maybe Growatt also changed something in the Modbus commands through a firmware update on your MOD 4000 TL3-X.