Integrate Sailer Friwasta via Modbus

Hello,
After setting up the sensor values ​​from my fresh water station via YAML and adding them to a dashboard, I am experimenting with various settings—such as temperatures. To do this, I have included the following code for the `number` entity in my Modbus YAML:

  - name: "Sailer Frischwasserstation"
    type: tcp
    host: 192.168.***.***
    port: 502
    sensors:
      - name: Friwa_Vorlauf
        slave: 1
        address: 5
        input_type: input
        unit_of_measurement: °C
        state_class: measurement
        scale: 0.1
        offset: 0
        precision: 1
        data_type: int16
      - name: Friwa_Warmwasser
        slave: 1
        address: 6
        input_type: input
        unit_of_measurement: °C
        state_class: measurement
        scale: 0.1
        offset: 0
        precision: 1
        data_type: uint16
      - name: Friwa_Zirkulation
        slave: 1
        address: 8
        input_type: input
        unit_of_measurement: °C
        state_class: measurement
        scale: 0.1
        offset: 0
        precision: 1
        data_type: uint16
      - name: Friwa_Rücklauf
        slave: 1
        address: 16
        input_type: input
        unit_of_measurement: °C
        state_class: measurement
        scale: 0.1
        offset: 0
        precision: 1
        data_type: uint16
      - name: Friwa_Soll
        slave: 1
        address: 186
        input_type: holding
        unit_of_measurement: °C
        state_class: measurement
        scale: 0.1
        offset: 0
        precision: 1
        data_type: uint32
# --- Durchfluss & Leistung ---
      - name: "Friwasta Frischwasserfluss"
        unique_id: friwasta_frischwasserfluss
        address: 230  # EA 0073 (Hex 73 = Dezimal 115)
        slave: 1
        input_type: holding
        unit_of_measurement: "l/min"
        state_class: measurement
        scale: 0.1
        precision: 1
        data_type: uint32
      - name: "Friwasta Aktuelle Leistung Primärpumpe Klein"
        unique_id: friwasta_leistung_primaerpumpe_klein
        address: 92  # EA 002E (Hex 2E = Dezimal 46)
        slave: 1
        input_type: holding
        unit_of_measurement: "%"
        state_class: measurement
        offset: 0
        precision: 1
        data_type: uint32
    binary_sensor:
      - name: "Friwasta Zirkulationspumpe Status"
        unique_id: friwasta_zirkulationspumpe_status
        address: 284  # Hex: EA 008F -> Dezimal 143 (Ausgang A5)
        slave: 1
        input_type: holding
        data_type: uint32
        device_class: running
    # --- SCHREIBBARE TEMPERATUREN (SCHIEBEREGLER) ---
    numbers:
      - name: "Frischwasser Solltemperatur"
        address: 186
        write_method: write_multiple_registers # Erzwingt den Funktionscode 16
        input_type: holding                    # Nutzt Funktionscode 03 zum Lesen
        data_type: uint32
        scale: 0.1                             # Dividiert beim Lesen durch 10 / Multipliziert beim Schreiben
        precision: 1                           # Zeigt eine Nachkommastelle an (z.B. 45.5 °C)
        unit_of_measurement: "°C"
        min_value: 30                          # Optional: Mindestwert zum Schutz vor Falscheingaben
        max_value: 90                          # Optional: Maximalwert zum Schutz vor Falscheingaben
        step: 0.5

Unfortunately, neither the number entities nor the binary sensor are being created—or at least I can’t find them (I’m still new to HA)…
Does anyone happen to have an idea? Many thanks in advance…

binary_sensors: with s.
Modbus doesn’t have numbers and even if it had, you are using address that is already used on sensors. You could use climates for temperature. Docs have example.

Thanks for the note regarding the numbers… however, according to the manufacturer’s instructions, the starting addresses for reading and writing the variables are identical, whereas the function codes are not:
Read: 03 00 BA 00 02
Write: 10 00 BA 00 02 04 00 00 02 58

@Karosm Are you sure that a fresh water station falls into the ‘Climate’ category?

No. And I don’t even know what that R/W register really is. Usually you have separate registers for actual temperature and set point. That’s how climates component is configured.

And I personally use modbus via esphome.