Benachrichtigungen
Alles löschen

SOLAX: tasmota oder ESPHome auf ESP8266 und ESP32 flashen

104 Beiträge
10 Benutzer
25 Reactions
7,579 Ansichten
saugnapf
(@saugnapf)
Heroischer Stromgenerator
Beigetreten: Vor 3 Jahren
Beiträge: 1329
Themenstarter  

Nicht nur eins! 🍺 🍺 🍺 (🍺 🍺 ...)

Ja, beide Geräte sind quasi blank.

Der Solax hat keine PV dran, die hängt momentan am Fronius und wird heute Abend, wenn's dunkel ist, umgesteckt.

Der RasPi hat keinen MP zum steuern, kein ESP ähm, ESS eingerichtet, keine Verbindung zu SmartMeter, Phasen, nicht mal BMS...

Aus seiner Sicht ist die Darstellung in der RemoteConsole korrekt.

 

Leistungsdaten gibt's dann morgen, ich werde erstmal die .yaml etwas entschlacken, vielleicht kann ich L2 und L3 ganz rausnehmen.

6x 300Wp = 1.8kWp an 3x EVT560 MicroInverter - MultiPlus-II GX mit 4x PylonTech US2000 (je 2,4kWh)

Hier klicken, wenn du Kollegen in deiner Umgebung finden möchtest.


   
profantus reacted
AntwortZitat
saugnapf
(@saugnapf)
Heroischer Stromgenerator
Beigetreten: Vor 3 Jahren
Beiträge: 1329
Themenstarter  

Hier ist schonmal die Leistung:

L2 und L2 ganz rauszuschmeißen scheint nicht ganz so einfach zu sein... ist aber auch egal.

6x 300Wp = 1.8kWp an 3x EVT560 MicroInverter - MultiPlus-II GX mit 4x PylonTech US2000 (je 2,4kWh)

Hier klicken, wenn du Kollegen in deiner Umgebung finden möchtest.


   
profantus reacted
AntwortZitat
profantus
(@profantus)
Mitglied Wiki-Moderatoren
Beigetreten: Vor 3 Jahren
Beiträge: 1198
 

Nee aus dem Venus OS bekommst du L2, L3 glaube ich nicht raus. Die sind da fest drin und einen Schalter zum Ausblenden kenne ich nicht.

HOWTO Wechselrichter Dimensionierung


   
AntwortZitat
mager
(@mager)
Batterielecker
Beigetreten: Vor 2 Jahren
Beiträge: 307
 

@saugnapf der RS485-Konverter hat mich auch zur Verzweiflung gebracht: bei diesem Modul wird TX->TX und RX->RX verbunden (also nicht wie üblich gekreuzt)!


   
AntwortZitat
 Udod
(@udod)
Vorsichtiger Stromfühler
Beigetreten: Vor 2 Jahren
Beiträge: 18
 

Hi Zusammen,

nach einigem hin und her funktioniert zumindest das Yaml File von Sebastian für meinen Solax X1 Mini.
Da ich ebenfalls die intergration für meine Victron Anlage benötige habe ich das entsprechende Yaml Beispiel 
für den X1 Boost angepasst. Bei mir kommen aber keine Daten da mein Solax vermutlich kein Modbus_RTU spricht.

Noch ein paar Hinweise in eigener Sache weil es mich echt viel Zeit und Nerven gekostet hat:

Achtet auf ein stabile Spannungsversorgung. Anfänglich konnte ich keine ESB32 zum arbeiten bewegen.
Wenn Ihr Eure IOT Geräte über eine Versteckte SSID einbinden wollt müsst Ihr den wifi bereich wie folgt erweitern:

wifi:
  ssid: "GEHEIME_IOT_SSID"
  password: "geheim"
  fast_connect: true

Könnte mir jemand sagen an welchen Stellen ich die YAML Datei anpassen muss damit der ESP32 mit meine Wechselrichter spricht (X1 Mini ohne Boost)?

 

 

 

Diese r Beitrag wurde geändert Vor 1 Jahr von Udod

   
AntwortZitat
 Udod
(@udod)
Vorsichtiger Stromfühler
Beigetreten: Vor 2 Jahren
Beiträge: 18
 

Hi,

niemand eine Idee wie man das file von @Sebastian für den Cerbo (MQTT) anpassen kann für den Solax Mini ohne Boost?

Ich hab jetzt mehrfach versucht entweder das eine oder das andere yaml file funktionsfähig zu bekommen. Aber ich kriege
es leider nicht hin. Wäre für jeden Tipp dankbar.

Gruß

Udo

 


   
AntwortZitat
saugnapf
(@saugnapf)
Heroischer Stromgenerator
Beigetreten: Vor 3 Jahren
Beiträge: 1329
Themenstarter  

Vielleicht wird es einfacher, wenn du schreibst, was schon geht, und was noch nicht, also wo du grad hängen bleibst.

6x 300Wp = 1.8kWp an 3x EVT560 MicroInverter - MultiPlus-II GX mit 4x PylonTech US2000 (je 2,4kWh)

Hier klicken, wenn du Kollegen in deiner Umgebung finden möchtest.


   
AntwortZitat
 Udod
(@udod)
Vorsichtiger Stromfühler
Beigetreten: Vor 2 Jahren
Beiträge: 18
 

@saugnapf 

Das komplette Yaml Script von Sebastian funktioniert. Das angepasste Script für den Solax X1 Boost zum Teil (der Teil der das Gerät per MQTT am Cerbo anmeldet).

Mein Problem ist das verschiedene Module in den Beiden Scripten angesprochen werden und diese untereinander nicht tauschbar sind.
Zusammengefasst ich möchte die Daten die aus Sebastians Script kommen and den Cerbo liefern analog der des zweiten Scripts für den Boost.

Das hier müsste eigentlich funktionieren um zumindest die Werte auszulesen und die Verbindung als Instanz am Cerbo anzumelden.
Soweit sich mir das erschließt wurde bei "substitution" die Einträge um Victron relevante Informationen erweitert.

Der MQTT Teil meldet erstmal auch nur die Instanz im Cerbo an.

Spoiler
Yaml
substitutions:
  name: solax-x1-mini
  device_description: "Monitor a Solax X1 Mini via RS485"
  external_components_source: github://syssi/esphome-solax-x1-mini@main
  tx_pin: GPIO16    #esp32
  rx_pin: GPIO17    #esp32
  device_name: "solax-x1-mini"
  client_id: "PvInverter1"
  sensor_name: "L1"
  device_instance: "36"
  position: "1"

esphome:
  name: ${name}
  comment: ${device_description}
  project:
    name: "syssi.esphome-solax-x1-mini-garage"
    version: 2.1.0

esp32:
  board: wemos_d1_mini32

external_components:
  - source: ${external_components_source}
    refresh: 0s

wifi:
  ssid: "XXXXXXXXXX"
  password: "YYYYYYY"
  fast_connect: true

ota:

logger:
  level: DEBUG

# If you use Home Assistant please remove this `mqtt` section and uncomment the `api` component!
# The native API has many advantages over MQTT:  https://esphome.io/components/api.html#advantages-over-mqtt 

mqtt:
  broker: 192.168.1.xx # CERBO IP
  port: 1883
  discovery: false
  birth_message:
    topic: device/${client_id}/Status
    payload: '{"clientId": "${client_id}", "connected": 1, "version": "1", "services": {"${sensor_name}": "pvinverter"}}'
  will_message:
    topic: device/${client_id}/Status
    payload: '{"clientId": "${client_id}", "connected": 0, "version": "1"}'
  on_json_message:
    topic: device/${client_id}/DBus
    then:
      - globals.set:
          id: vrm_portal_id
          value: !lambda |-
            return x["portalId"];
      - globals.set:
          id: sensor_id
          value: !lambda |-
            return x["deviceInstance"]["${sensor_name}"];
      - mqtt.publish_json:
          # Anzeigename in Venus OS
          topic: !lambda return str_sprintf("W/%s/pvinverter/%d/CustomName", id(vrm_portal_id).c_str(), id(sensor_id));
          payload: |-
            root["value"] = "Solax X1 boost";
      - mqtt.publish_json:
          # 0=AC input 1; 1=AC output; 2=AC input 2
          topic: !lambda return str_sprintf("W/%s/pvinverter/%d/Position", id(vrm_portal_id).c_str(), id(sensor_id));
          payload: |-
            root["value"] = 1;
      - mqtt.publish_json:
          # Nennleistung des Wechselrichters in W
          topic: !lambda return str_sprintf("W/%s/pvinverter/%d/Ac/MaxPower", id(vrm_portal_id).c_str(), id(sensor_id));
          payload: |-
            root["value"] = 2000;

# api:

uart:
  id: uart_0
  baud_rate: 9600
  tx_pin: ${tx_pin}
  rx_pin: ${rx_pin}

solax_modbus:
  - id: modbus0
    uart_id: uart_0
#    flow_control_pin: GPIO0

solax_x1_mini:
  solax_modbus_id: modbus0
  update_interval: 1s

text_sensor:
  - platform: solax_x1_mini
    mode_name:
      name: "${name} mode name"
    errors:
      name: "${name} errors"

sensor:
  - platform: solax_x1_mini
    ac_power:
      name: "${name} ac power"
    energy_today:
      name: "${name} energy today"
    energy_total:
      name: "${name} energy total"
    dc1_voltage:
      name: "${name} dc1 voltage"
    dc2_voltage:
      name: "${name} dc2 voltage"
    dc1_current:
      name: "${name} dc1 current"
    dc2_current:
      name: "${name} dc2 current"
    ac_current:
      name: "${name} ac current"
    ac_voltage:
      name: "${name} ac voltage"
    ac_frequency:
      name: "${name} ac frequency"
    temperature:
      name: "${name} temperature"
    runtime_total:
      name: "${name} runtime total"
    mode:
      name: "${name} mode"
    error_bits:
      name: "${name} error bits"
    grid_voltage_fault:
      name: "${name} grid voltage fault"
    grid_frequency_fault:
      name: "${name} grid frequency fault"
    dc_injection_fault:
      name: "${name} dc injection fault"
    temperature_fault:
      name: "${name} temperature fault"
    pv1_voltage_fault:
      name: "${name} pv1 voltage fault"
    pv2_voltage_fault:
      name: "${name} pv2 voltage fault"
    gfc_fault:
      name: "${name} gfc fault"

Der Sensor Bereich unterscheidet sich vom Aufbau deutlich:

Spoiler
Sensor Sissy Yaml
sensor:
  - platform: solax_x1_mini
    ac_power:
      name: "${name} ac power"
    energy_today:
      name: "${name} energy today"
    energy_total:
      name: "${name} energy total"
    dc1_voltage:
      name: "${name} dc1 voltage"
    dc2_voltage:
      name: "${name} dc2 voltage"
    dc1_current:
      name: "${name} dc1 current"
    dc2_current:
      name: "${name} dc2 current"
    ac_current:
      name: "${name} ac current"
    ac_voltage:
      name: "${name} ac voltage"
    ac_frequency:
      name: "${name} ac frequency"
    temperature:
      name: "${name} temperature"
    runtime_total:
      name: "${name} runtime total"
    mode:
      name: "${name} mode"
    error_bits:
      name: "${name} error bits"
    grid_voltage_fault:
      name: "${name} grid voltage fault"
    grid_frequency_fault:
      name: "${name} grid frequency fault"
    dc_injection_fault:
      name: "${name} dc injection fault"
    temperature_fault:
      name: "${name} temperature fault"
    pv1_voltage_fault:
      name: "${name} pv1 voltage fault"
    pv2_voltage_fault:
      name: "${name} pv2 voltage fault"
    gfc_fault:
      name: "${name} gfc fault"

und die hier mal nur ein Auszug für einen Wert (Grid Voltage) aus dem Boost Script:

Spoiler
Sensor Boost Yaml
- platform: modbus_controller
    id: inverter_grid_voltage
    modbus_controller_id: solax0
    name: "${name} grid voltage"
    address: 0x404
    register_type: read
    value_type: U_WORD
    unit_of_measurement: V
    device_class: voltage
    state_class: measurement
    accuracy_decimals: 1
    filters:
      - multiply: 0.1
    on_value:
      - mqtt.publish_json:
          topic: !lambda return str_sprintf("W/%s/pvinverter/%d/Ac/Voltage", id(vrm_portal_id).c_str(), id(sensor_id));
          payload: |-
            root["value"] = id(inverter_grid_voltage).state;
      - mqtt.publish_json:
          topic: !lambda return str_sprintf("W/%s/pvinverter/%d/Ac/L1/Voltage", id(vrm_portal_id).c_str(), id(sensor_id));
          payload: |-
            root["value"] = id(inverter_grid_voltage).state;
      - mqtt.publish_json:
          topic: !lambda return str_sprintf("W/%s/pvinverter/%d/Ac/L2/Voltage", id(vrm_portal_id).c_str(), id(sensor_id));
          payload: |-
            root["value"] = 0;
      - mqtt.publish_json:
          topic: !lambda return str_sprintf("W/%s/pvinverter/%d/Ac/L3/Voltage", id(vrm_portal_id).c_str(), id(sensor_id));
          payload: |-
            root["value"] = 0;

welche Teile davon sind jetzt spezifisch für den Boost?

Würde sowas funktionieren da ja die Feld und Typdefinition bei Sebastians Script nicht aus einem String herausgeschnitten und konvertiert werden muss:

sensor:
  - platform: solax_x1_mini
   ...
    ac_voltage:
      name: "${name} ac voltage"
      id: inverter_grid_voltage
      on_value:
      - mqtt.publish_json:
          topic: !lambda return str_sprintf("W/%s/pvinverter/%d/Ac/Voltage", id(vrm_portal_id).c_str(), id(sensor_id));
          payload: |-
            root["value"] = id(inverter_grid_voltage).state;
      - mqtt.publish_json:
          topic: !lambda return str_sprintf("W/%s/pvinverter/%d/Ac/L1/Voltage", id(vrm_portal_id).c_str(), id(sensor_id));
          payload: |-
            root["value"] = id(inverter_grid_voltage).state;
      - mqtt.publish_json:
          topic: !lambda return str_sprintf("W/%s/pvinverter/%d/Ac/L2/Voltage", id(vrm_portal_id).c_str(), id(sensor_id));
          payload: |-
            root["value"] = 0;
      - mqtt.publish_json:
          topic: !lambda return str_sprintf("W/%s/pvinverter/%d/Ac/L3/Voltage", id(vrm_portal_id).c_str(), id(sensor_id));
          payload: |-
            root["value"] = 0;

 

Diese r Beitrag wurde geändert Vor 2 Jahren von Udod
Diese r Beitrag wurde geändert Vor 1 Jahr 2 mal von Udod

   
AntwortZitat
saugnapf
(@saugnapf)
Heroischer Stromgenerator
Beigetreten: Vor 3 Jahren
Beiträge: 1329
Themenstarter  

Es wäre etwas angenehmer, wenn du deine codes in einen spoiler packen würdest. Das spart endloses scrollen.

Habe ich das richtig verstanden, du hast einen Solax X1 Mini? Und du möchtest die .yaml für den Solax X1 boost so anpassen, dass es für den Mini passt?

Und das wäre nix für dich?

https://github.com/syssi/esphome-solax-x1-mini

6x 300Wp = 1.8kWp an 3x EVT560 MicroInverter - MultiPlus-II GX mit 4x PylonTech US2000 (je 2,4kWh)

Hier klicken, wenn du Kollegen in deiner Umgebung finden möchtest.


   
AntwortZitat
 Udod
(@udod)
Vorsichtiger Stromfühler
Beigetreten: Vor 2 Jahren
Beiträge: 18
 
Diese r Beitrag wurde geändert Vor 1 Jahr 5 mal von Udod
Diese r Beitrag wurde geändert Vor 8 Monaten 2 mal von Udod

   
AntwortZitat
 Udod
(@udod)
Vorsichtiger Stromfühler
Beigetreten: Vor 2 Jahren
Beiträge: 18
 

Hi Zusammen,

sorry das ich den Thread hier wieder hochholen muss. Mit einem der letzten Updates zeigt mir der ESP weder die Daten über den Webserver an, noch werden MQTT Nachrichten erzeugt.

Dadurch passt natürlich wieder die Anzeige im VRM Portal nicht mehr.

Hat jemand das selbe Problem? (ESPHome 2024.2.1)

Wenn ich mir das logfile anschauen

Spoiler
Logfile

[14:29:19][I][solax_x1_mini:224]: Status frame received
[14:29:19][V][sensor:043]: 'solax-x1-mini temperature': Received new state 25.000000
[14:29:19][D][sensor:094]: 'solax-x1-mini temperature': Sending state 25.00000 °C with 0 decimals of accuracy
[14:29:19][V][json:038]: Attempting to allocate 512 bytes for JSON serialization
[14:29:19][V][json:058]: Size after shrink 88 bytes
[14:29:19][V][mqtt:474]: Publish(topic='solax-x1-mini/sensor/solax-x1-mini_temperature/state' payload='25' retain=1)
[14:29:19][V][sensor:043]: 'solax-x1-mini energy today': Received new state 3.400000
[14:29:19][D][sensor:094]: 'solax-x1-mini energy today': Sending state 3.40000 kWh with 1 decimals of accuracy
[14:29:19][V][json:038]: Attempting to allocate 512 bytes for JSON serialization
[14:29:19][V][json:058]: Size after shrink 16 bytes
[14:29:19][V][mqtt:474]: Publish(topic='W/48e7da881457/pvinverter/2/Ac/Energy/Forward' payload='{"value":3.4}' retain=0)
[14:29:19][V][json:038]: Attempting to allocate 512 bytes for JSON serialization
[14:29:19][V][json:058]: Size after shrink 16 bytes
[14:29:19][V][mqtt:474]: Publish(topic='W/48e7da881457/pvinverter/2/Ac/L1/Energy/Forward' payload='{"value":3.4}' retain=0)
[14:29:19][V][json:038]: Attempting to allocate 512 bytes for JSON serialization
[14:29:19][V][json:058]: Size after shrink 16 bytes
[14:29:19][V][mqtt:474]: Publish(topic='W/48e7da881457/pvinverter/2/Ac/L2/Energy/Forward' payload='{"value":0}' retain=0)
[14:29:19][V][json:038]: Attempting to allocate 512 bytes for JSON serialization
[14:29:19][V][json:058]: Size after shrink 16 bytes
[14:29:19][V][mqtt:474]: Publish(topic='W/48e7da881457/pvinverter/2/Ac/L3/Energy/Forward' payload='{"value":0}' retain=0)
[14:29:19][V][json:038]: Attempting to allocate 512 bytes for JSON serialization
[14:29:19][V][json:058]: Size after shrink 92 bytes
[14:29:19][V][mqtt:474]: Publish(topic='solax-x1-mini/sensor/solax-x1-mini_energy_today/state' payload='3.4' retain=1)
[14:29:19][V][sensor:043]: 'solax-x1-mini dc1 voltage': Received new state 295.700012
[14:29:19][D][sensor:094]: 'solax-x1-mini dc1 voltage': Sending state 295.70001 V with 1 decimals of accuracy
[14:29:19][V][json:038]: Attempting to allocate 512 bytes for JSON serialization
[14:29:19][V][json:058]: Size after shrink 92 bytes
[14:29:19][V][mqtt:474]: Publish(topic='solax-x1-mini/sensor/solax-x1-mini_dc1_voltage/state' payload='295.7' retain=1)
[14:29:19][V][sensor:043]: 'solax-x1-mini dc2 voltage': Received new state 0.000000
[14:29:19][D][sensor:094]: 'solax-x1-mini dc2 voltage': Sending state 0.00000 V with 1 decimals of accuracy
[14:29:19][V][json:038]: Attempting to allocate 512 bytes for JSON serialization
[14:29:19][V][json:058]: Size after shrink 88 bytes
[14:29:19][V][mqtt:474]: Publish(topic='solax-x1-mini/sensor/solax-x1-mini_dc2_voltage/state' payload='0.0' retain=1)
[14:29:19][V][sensor:043]: 'solax-x1-mini dc1 current': Received new state 1.300000
[14:29:19][D][sensor:094]: 'solax-x1-mini dc1 current': Sending state 1.30000 A with 1 decimals of accuracy
[14:29:19][V][json:038]: Attempting to allocate 512 bytes for JSON serialization
[14:29:19][V][json:058]: Size after shrink 88 bytes
[14:29:19][V][mqtt:474]: Publish(topic='solax-x1-mini/sensor/solax-x1-mini_dc1_current/state' payload='1.3' retain=1)
[14:29:19][V][sensor:043]: 'solax-x1-mini dc2 current': Received new state 0.000000
[14:29:19][D][sensor:094]: 'solax-x1-mini dc2 current': Sending state 0.00000 A with 1 decimals of accuracy
[14:29:19][V][json:038]: Attempting to allocate 512 bytes for JSON serialization
[14:29:19][V][json:058]: Size after shrink 88 bytes
[14:29:19][V][mqtt:474]: Publish(topic='solax-x1-mini/sensor/solax-x1-mini_dc2_current/state' payload='0.0' retain=1)
[14:29:19][V][sensor:043]: 'solax-x1-mini ac current': Received new state 1.700000
[14:29:19][D][sensor:094]: 'solax-x1-mini ac current': Sending state 1.70000 A with 1 decimals of accuracy
[14:29:19][V][json:038]: Attempting to allocate 512 bytes for JSON serialization
[14:29:19][V][json:058]: Size after shrink 16 bytes
[14:29:19][V][mqtt:474]: Publish(topic='W/48e7da881457/pvinverter/2/Ac/Current' payload='{"value":1.7}' retain=0)
[14:29:19][V][json:038]: Attempting to allocate 512 bytes for JSON serialization
[14:29:19][V][json:058]: Size after shrink 16 bytes
[14:29:19][V][mqtt:474]: Publish(topic='W/48e7da881457/pvinverter/2/Ac/L1/Current' payload='{"value":1.7}' retain=0)
[14:29:19][V][json:038]: Attempting to allocate 512 bytes for JSON serialization
[14:29:19][V][json:058]: Size after shrink 16 bytes
[14:29:19][V][mqtt:474]: Publish(topic='W/48e7da881457/pvinverter/2/Ac/L2/Current' payload='{"value":0}' retain=0)
[14:29:19][V][json:038]: Attempting to allocate 512 bytes for JSON serialization
[14:29:19][V][json:058]: Size after shrink 16 bytes
[14:29:19][V][mqtt:474]: Publish(topic='W/48e7da881457/pvinverter/2/Ac/L3/Current' payload='{"value":0}' retain=0)
[14:29:19][V][json:038]: Attempting to allocate 512 bytes for JSON serialization
[14:29:19][V][json:058]: Size after shrink 88 bytes
[14:29:19][V][mqtt:474]: Publish(topic='solax-x1-mini/sensor/solax-x1-mini_ac_current/state' payload='1.7' retain=1)
[14:29:19][V][sensor:043]: 'solax-x1-mini ac voltage': Received new state 236.100006
[14:29:19][D][sensor:094]: 'solax-x1-mini ac voltage': Sending state 236.10001 V with 1 decimals of accuracy
[14:29:19][V][json:038]: Attempting to allocate 512 bytes for JSON serialization
[14:29:19][V][json:058]: Size after shrink 16 bytes
[14:29:19][V][mqtt:474]: Publish(topic='W/48e7da881457/pvinverter/2/Ac/Voltage' payload='{"value":236.1}' retain=0)
[14:29:19][V][json:038]: Attempting to allocate 512 bytes for JSON serialization
[14:29:19][V][json:058]: Size after shrink 16 bytes
[14:29:19][V][mqtt:474]: Publish(topic='W/48e7da881457/pvinverter/2/Ac/L1/Voltage' payload='{"value":236.1}' retain=0)
[14:29:19][V][json:038]: Attempting to allocate 512 bytes for JSON serialization
[14:29:19][V][json:058]: Size after shrink 16 bytes
[14:29:19][V][mqtt:474]: Publish(topic='W/48e7da881457/pvinverter/2/Ac/L2/Voltage' payload='{"value":0}' retain=0)
[14:29:19][V][json:038]: Attempting to allocate 512 bytes for JSON serialization
[14:29:19][V][json:058]: Size after shrink 16 bytes
[14:29:19][V][mqtt:474]: Publish(topic='W/48e7da881457/pvinverter/2/Ac/L3/Voltage' payload='{"value":0}' retain=0)
[14:29:19][V][json:038]: Attempting to allocate 512 bytes for JSON serialization
[14:29:19][V][json:058]: Size after shrink 88 bytes
[14:29:19][V][mqtt:474]: Publish(topic='solax-x1-mini/sensor/solax-x1-mini_ac_voltage/state' payload='236.1' retain=1)
[14:29:19][V][sensor:043]: 'solax-x1-mini ac frequency': Received new state 49.980000
[14:29:19][D][sensor:094]: 'solax-x1-mini ac frequency': Sending state 49.98000 Hz with 2 decimals of accuracy
[14:29:19][V][json:038]: Attempting to allocate 512 bytes for JSON serialization
[14:29:19][V][json:058]: Size after shrink 92 bytes
[14:29:19][V][mqtt:474]: Publish(topic='solax-x1-mini/sensor/solax-x1-mini_ac_frequency/state' payload='49.98' retain=1)
[14:29:19][V][sensor:043]: 'solax-x1-mini ac power': Received new state 389.000000
[14:29:19][D][sensor:094]: 'solax-x1-mini ac power': Sending state 389.00000 W with 0 decimals of accuracy
[14:29:19][V][json:038]: Attempting to allocate 512 bytes for JSON serialization
[14:29:19][V][json:058]: Size after shrink 16 bytes
[14:29:19][V][mqtt:474]: Publish(topic='W/48e7da881457/pvinverter/2/Ac/Power' payload='{"value":389}' retain=0)
[14:29:19][V][json:038]: Attempting to allocate 512 bytes for JSON serialization
[14:29:19][V][json:058]: Size after shrink 16 bytes
[14:29:20][V][mqtt:474]: Publish(topic='W/48e7da881457/pvinverter/2/Ac/L1/Power' payload='{"value":389}' retain=0)
[14:29:20][V][json:038]: Attempting to allocate 512 bytes for JSON serialization
[14:29:20][V][json:058]: Size after shrink 16 bytes
[14:29:20][V][mqtt:474]: Publish(topic='W/48e7da881457/pvinverter/2/Ac/L2/Power' payload='{"value":0}' retain=0)
[14:29:20][V][json:038]: Attempting to allocate 512 bytes for JSON serialization
[14:29:20][V][json:058]: Size after shrink 16 bytes
[14:29:20][V][mqtt:474]: Publish(topic='W/48e7da881457/pvinverter/2/Ac/L3/Power' payload='{"value":0}' retain=0)
[14:29:20][V][json:038]: Attempting to allocate 512 bytes for JSON serialization
[14:29:20][V][json:058]: Size after shrink 84 bytes
[14:29:20][V][mqtt:474]: Publish(topic='solax-x1-mini/sensor/solax-x1-mini_ac_power/state' payload='389' retain=1)
[14:29:20][V][sensor:043]: 'solax-x1-mini energy total': Received new state 4001.600098
[14:29:20][D][sensor:094]: 'solax-x1-mini energy total': Sending state 4001.60010 kWh with 1 decimals of accuracy
[14:29:20][V][json:038]: Attempting to allocate 512 bytes for JSON serialization
[14:29:20][V][json:058]: Size after shrink 96 bytes
[14:29:20][V][mqtt:474]: Publish(topic='solax-x1-mini/sensor/solax-x1-mini_energy_total/state' payload='4001.6' retain=1)
[14:29:20][V][sensor:043]: 'solax-x1-mini runtime total': Received new state 6954.000000
[14:29:20][D][sensor:094]: 'solax-x1-mini runtime total': Sending state 6954.00000 h with 0 decimals of accuracy
[14:29:20][V][json:038]: Attempting to allocate 512 bytes for JSON serialization
[14:29:20][V][json:058]: Size after shrink 92 bytes
[14:29:20][V][mqtt:474]: Publish(topic='solax-x1-mini/sensor/solax-x1-mini_runtime_total/state' payload='6954' retain=1)
[14:29:20][V][sensor:043]: 'solax-x1-mini mode': Received new state 2.000000
[14:29:20][D][sensor:094]: 'solax-x1-mini mode': Sending state 2.00000 with 0 decimals of accuracy
[14:29:20][V][json:038]: Attempting to allocate 512 bytes for JSON serialization
[14:29:20][V][json:058]: Size after shrink 76 bytes
[14:29:20][V][mqtt:474]: Publish(topic='solax-x1-mini/sensor/solax-x1-mini_mode/state' payload='2' retain=1)
[14:29:20][V][text_sensor:013]: 'solax-x1-mini mode name': Received new state Normal
[14:29:20][D][text_sensor:064]: 'solax-x1-mini mode name': Sending state 'Normal'
[14:29:20][V][json:038]: Attempting to allocate 512 bytes for JSON serialization
[14:29:20][V][json:058]: Size after shrink 92 bytes
[14:29:20][V][mqtt:474]: Publish(topic='solax-x1-mini/sensor/solax-x1-mini_mode_name/state' payload='Normal' retain=1)
[14:29:20][V][sensor:043]: 'solax-x1-mini error bits': Received new state 0.000000
[14:29:20][D][sensor:094]: 'solax-x1-mini error bits': Sending state 0.00000 with 0 decimals of accuracy
[14:29:20][V][json:038]: Attempting to allocate 512 bytes for JSON serialization
[14:29:20][V][json:058]: Size after shrink 84 bytes
[14:29:20][V][mqtt:474]: Publish(topic='solax-x1-mini/sensor/solax-x1-mini_error_bits/state' payload='0' retain=1)
[14:29:20][V][text_sensor:013]: 'solax-x1-mini errors': Received new state
[14:29:20][D][text_sensor:064]: 'solax-x1-mini errors': Sending state ''
[14:29:20][V][json:038]: Attempting to allocate 512 bytes for JSON serialization
[14:29:20][V][json:058]: Size after shrink 84 bytes
[14:29:20][V][mqtt:474]: Publish(topic='solax-x1-mini/sensor/solax-x1-mini_errors/state' payload='' retain=1)
[14:29:20][D][solax_x1_mini:267]: CT Pgrid: 0 W
[14:29:20][W][component:214]: Component solax_modbus took a long time for an operation (1.04 s).
[14:29:20][W][component:215]: Components should block for at most 20-30ms.

gibt es nur zwei Warnings am Ende mit denen ich nichts anfangen kann. Aber insgesamt bekommt der ESP die Daten vom Solix WR.
Sie werden nur nicht im Webserver angezeigt noch per MQTT übertragen.

 

 

Gruß

Udo

 

Diese r Beitrag wurde geändert Vor 8 Monaten 2 mal von Udod

   
AntwortZitat
 Udod
(@udod)
Vorsichtiger Stromfühler
Beigetreten: Vor 2 Jahren
Beiträge: 18
 

Ich antworte mir mal selber, der Fehler liegt an der Firmware des Cerbo GX, anscheinend ist mit Firmwareversion >=3.2 der MQTT Server gewechselt worden.
Offensichtlich funktioniert der neue MQTT nicht mehr mit dem Code (falls jemand weiß wie die Nachrichten formatiert werden muss, bitte um Info).

https://github.com/victronenergy/dbus-mqtt?tab=readme-ov-file

Diese r Beitrag wurde geändert Vor 8 Monaten 2 mal von Udod

   
AntwortZitat
(@und-mehr)
Heroischer Stromgenerator
Beigetreten: Vor 3 Jahren
Beiträge: 1148
 

Steht das nicht in deinem Link?

Important notice

UPDATE 2024-02-15: Since Venus OS version 3.20, this project has been replaced with dbus-flashmq.

..,-


   
AntwortZitat
 Udod
(@udod)
Vorsichtiger Stromfühler
Beigetreten: Vor 2 Jahren
Beiträge: 18
 

@und-mehr 

ja genau, steht in dem Link. Da ich den Code für notwendigen Anpassungen für flashmq für ESPHome nicht kenne funktioniert mein ESP eben nicht mehr.
Die Informationen von Victron sind für mich leider zu generisch als das ich die notwendigen Anpassunge für den ESP Code ableiten könnte. Zwischen dem Cerbo und dem ESP hängt ja auch noch ein "Übersetzer" https://github.com/victronenergy/dbus-flashmq?tab=readme-ov-file#connecting-to-the-vrm-mqtt-servers dieser wurde anscheinend schon angepasst und sollte mit den neuen (und den alten) Firmwareversionen kompatibel sein.

Es muss also am ESP code liegen. Ich vermute mal das ich nicht der Einzige bin der davon betroffen ist (Solax und Growattnutzer die ihre WR im VRM anzeigen lassen wollen).

Falls also jemand weiß an welchen Stellen der Code angepasst werden muss damit er mit flashmq kompatibel ist wäre ich sehr dankbar.

 

 

Diese r Beitrag wurde geändert Vor 8 Monaten von Udod

   
AntwortZitat
Seite 7 / 7
Teilen: