AVARMA WP - Monoblock R290

Guten Morgen,

bin neu hier in dem Forum und habe auch eine Avarma 12KW 230V WP.

Den einen oder anderen hier habe ich auch schon im Haustechnikforum getroffen. Nun ich versuche gerade das Ding per ModBus in HA einzubinden und hoffe auf Eure Hilfe.Ich habe sowas von gar keine Ahnung von ModBus…:sweat_smile: Habe mir enthusiastisch einen Waveshare RS232/485 TO WIFI POE ETH (B) gekauft, angeschlossen und habe nun das Problem, das Ding lässt sich wohl zur Ersteinrichtung nur per W-Lan ansprechen… mein PC hängt aber am Switch und hat kein W-Lan. Sonst muss ich mir wohl nen W-Lan Stick besorgen. Oder habe ich was übersehen?

Danke schon mal für Eure Hilfe.

I.d.R öffnet so ein Gerät für die Ersteinrichtung einen eigenen Hotspot und lässt sich per Web-Browser konfigurieren. - Ich würde es ggf. mit dem Handy versuchen.

Das esphome-modbus Yaml würde mich auch interessieren. Ich quäle mich schon ein paar Tage mit unterschiedlichen esp’s, wandlerboards und software zimlich erfolglos.

Ich hab jetzt eine funktionierende esphome.yaml dank gregor und chatgpt :slight_smile:

Noch nicht ganz perfekt aber schon ganz gut. Hier für alle die es interessiert:

esphome:

name: warmepumpe

friendly_name: Wärmepumpe

# Enable Home Assistant API

api:

encryption:

key: "Q1VAg5rLplDKpBaQQO/y+tKGxWNgGdLxak4rMeXVym8="

ota:

  • platform: esphome

    password: "021dbf80d3261960006fe029930f4ccc"

wifi:

ssid: !secret wifi_ssid

password: !secret wifi_password

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

ap:

ssid: "Warmepumpe Fallback Hotspot"

password: “nix"

captive_portal:

esp32:

board: esp32dev

framework:

type: arduino

# Logging (optional: DEBUG für Tests)

logger:

level: INFO

# Optional: Weboberfläche für Statusanzeige

web_server:

port: 80

# RS485 Verbindung (MAX485)

uart:

id: modbus_uart

tx_pin: 17

rx_pin: 16

baud_rate: 9600

parity: NONE

stop_bits: 1

# Modbus Master Konfiguration

modbus:

id: modbus1

uart_id: modbus_uart

send_wait_time: 500ms

# flow_control_pin: 4

# Avarma Wärmepumpe (Slave ID = 1)

modbus_controller:

  • id: avarma

    address: 1

    modbus_id: modbus1

    setup_priority: -10

    update_interval: 15s

# Sensoren – hier kannst du beliebig viele Register hinzufügen

sensor:

# Temperaturen

  • platform: modbus_controller

    modbus_controller_id: avarma

    name: "Außentemperatur"

    id: ambient_temp

    register_type: holding

    address: 4360

    value_type: S_WORD

    unit_of_measurement: "°C"

    accuracy_decimals: 1

    filters:

    • multiply: 0.1
  • platform: modbus_controller

    modbus_controller_id: avarma

    name: "Speichertemperatur"

    register_type: holding

    address: 4367

    value_type: S_WORD

    unit_of_measurement: "°C"

    accuracy_decimals: 1

    filters:

    • multiply: 0.1
  • platform: modbus_controller

    modbus_controller_id: avarma

    name: "Wasser Eintrittstemperatur"

    address: 4365

    register_type: holding

    value_type: S_WORD

    unit_of_measurement: "°C"

    accuracy_decimals: 1

    filters:

    • multiply: 0.1
  • platform: modbus_controller

    modbus_controller_id: avarma

    name: "Wasser Austrittstemperatur"

    address: 4366

    register_type: holding

    value_type: S_WORD

    unit_of_measurement: "°C"

    accuracy_decimals: 1

    filters:

    • multiply: 0.1
  • platform: modbus_controller

    modbus_controller_id: avarma

    name: "Raumtemperatur (T2)"

    address: 4384

    register_type: holding

    value_type: S_WORD

    unit_of_measurement: "°C"

    accuracy_decimals: 1

    filters:

    • multiply: 0.1
  • platform: modbus_controller

    modbus_controller_id: avarma

    name: "Coil Temperatur"

    address: 4358

    register_type: holding

    value_type: S_WORD

    unit_of_measurement: "°C"

    accuracy_decimals: 1

    filters:

    • multiply: 0.1
  • platform: modbus_controller

    modbus_controller_id: avarma

    name: "Discharge Temperatur"

    address: 4359

    register_type: holding

    value_type: S_WORD

    unit_of_measurement: "°C"

    accuracy_decimals: 1

    filters:

    • multiply: 0.1

# Drücke

  • platform: modbus_controller

    modbus_controller_id: avarma

    name: "Hochdruck"

    address: 4371

    register_type: holding

    value_type: U_WORD

    unit_of_measurement: "bar"

    filters:

    • multiply: 0.1
  • platform: modbus_controller

    modbus_controller_id: avarma

    name: "Niederdruck"

    address: 4372

    register_type: holding

    value_type: U_WORD

    unit_of_measurement: "bar"

    filters:

    • multiply: 0.1

# Kompressor & Pumpe

  • platform: modbus_controller

    modbus_controller_id: avarma

    name: "Kompressorfrequenz"

    address: 4373

    register_type: holding

    value_type: U_WORD

    unit_of_measurement: "Hz"

  • platform: modbus_controller

    modbus_controller_id: avarma

    name: "Kompressorstrom"

    address: 4379

    register_type: holding

    value_type: U_WORD

    unit_of_measurement: "A"

    filters:

    • multiply: 0.1
  • platform: modbus_controller

    modbus_controller_id: avarma

    name: "Wasserpumpen-Geschwindigkeit"

    address: 4611

    register_type: holding

    value_type: U_WORD

    unit_of_measurement: "%"

# Sollwerte

  • platform: modbus_controller

    modbus_controller_id: avarma

    name: "Raumtemperatur Soll"

    address: 4101

    register_type: holding

    value_type: S_WORD

    unit_of_measurement: "°C"

# filters:

# - multiply: 0.1

# Betriebsmodus (numerisch)

  • platform: modbus_controller

    modbus_controller_id: avarma

    name: "Betriebsmodus Code"

    id: avarma_mode_code

    address: 4612

    register_type: holding

    value_type: U_WORD

# Betriebsmodus als Text (automatisch übersetzt)

text_sensor:

  • platform: template

    name: "Betriebsmodus"

    lambda: |-

    if (id(avarma_mode_code).state == 0) return {"Aus"};

    else if (id(avarma_mode_code).state == 1) return {"Warmwasser"};

    else if (id(avarma_mode_code).state == 2) return {"Heizen"};

    else if (id(avarma_mode_code).state == 3) return {"Heizen + Warmwasser"};

    else return {"Unbekannt"};

# === SCHREIBBARE WERTE ===

number:

  • platform: modbus_controller

    modbus_controller_id: avarma

    name: "Raum Solltemperatur einstellen"

    address: 4101

    register_type: holding

    value_type: S_WORD

    unit_of_measurement: "°C"

    min_value: 15

    max_value: 30

    step: 0.5

# multiply: 100.0

write_lambda: |-

  return (int16_t)(x \* 1.0);
  • platform: modbus_controller

    modbus_controller_id: avarma

    name: "Warmwasser Solltemperatur einstellen"

    address: 4098

    register_type: holding

    value_type: S_WORD

    unit_of_measurement: "°C"

    min_value: 30

    max_value: 60

    step: 0.5

#multiply: 100.0

write_lambda: |-

  return (int16_t)(x \* 1.0);
  • platform: modbus_controller

    modbus_controller_id: avarma

    name: "Kompressor Min Frequenz einstellen"

    address: 8236

    register_type: holding

    value_type: U_WORD

    unit_of_measurement: "Hz"

    min_value: 10

    max_value: 60

    step: 1

  • platform: modbus_controller

    modbus_controller_id: avarma

    name: "Kompressor Defrost Frequenz einstellen"

    address: 8237

    register_type: holding

    value_type: U_WORD

    unit_of_measurement: "Hz"

    min_value: 10

    max_value: 60

    step: 1

  • platform: modbus_controller

    modbus_controller_id: avarma

    name: "DC Lüfter Max Speed einstellen"

    address: 8250

    register_type: holding

    value_type: U_WORD

    unit_of_measurement: "RPM"

    min_value: 1000

    max_value: 5000

    step: 100

1 „Gefällt mir“

Hallo,

ich habe eine ESPHome Komponente geschrieben mit der sich die Avarma ziemlich anstrengungslos und ohne Register-gefummel per ESPHome in Homeassistant einbinden lässt.

Das ganze lässt sich auch parallel zum Display am gleichen Kabel betreiben, wie das geht steht in der Doku :slight_smile:

VG und einen schönen Sonntag!

David

1 „Gefällt mir“

Wenn ihr zenrale Infos für die Avarma mal an einem Ort sammeln wollt, hab ich hier eine Wikiseite angelegt:

Am Aufbau so einer Infosammlung kann jeder mitarbeiten. Der Link zu Github kann da auch mit rein.

Was mich jetzt noch interessieren würde, wie hoch ist jetzt die Lautstärke, bei einer Anlage mit 9KW, und 12KW.

Meine Anlage würde auf die Nordseite kommen, direkt gegenüber vom Nachbarhaus, das ca. 9m

von mir entfernt steht. Möchte vermeiden das hier Beschwerden kommen. Kann mir das jemand mitteilen, wie laut die Anlage bei einem Abstand von 3m ist.

Das aktuelle Modell hat eine bessere Dämmung wie die Geräte der vorherigen Generation. Ich bin zufrieden und 9m Abstand zum Nachbarhaus sollten eigentlich genügen.

Eventuell solltest Du dir mal ein verbautes Gerät der letzten Generation in der Nähe anhören.