Controlling a Fairland Pool Heatpump eliminating Tuya

I also want to control my pool heatpump locally through a MQTT server, and found this nice solution. But I have some problems with the *.yaml file(errors during compiling).
Can someone explain which content is required in the *.yaml file, especially te the Wifi and MQTT parameters ?
I tried to copy the parameters from @deepstahl77 but with his parameters I receive errors during compiling.
And in the original Github project there are no Wifi/MQTT parameters remarked

I tried following configuration in a YAML Validator, and it seems to be that there are no errors.(Wifi/MQTT parameters need to be adjusted).

esphome:

name: ips-170-esp

friendly_name: IPS 170 ESP

esp8266: null
board: d1_mini_pro
wifi:
  ssid: MyHomeNetwork
  password: VerySafePassword
captive_portal: null

# Example configuration entry
mqtt:
  broker: 10.0.0.2
  username: livingroom
  password: !secret mqtt_password
web_server:
  port: 80
uart:
  id: mod_bus
  rx_pin: RX
  tx_pin: TX
  baud_rate: 9600
modbus:
  id: modbus1
modbus_controller:
  - id: fairland
    address: 1
    modbus_id: modbus1
    update_interval: 2s
switch:
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Power Switch
    id: pwp_power_switch
    register_type: coil
    address: 0
select:
  - platform: modbus_controller
    name: PWP Operating Mode
    id: pwp_operating_mode
    modbus_controller_id: fairland
    address: 0
    value_type: U_WORD
    optionsmap:
      Auto: 0
      Heating: 1
      Cooling: 2
  - platform: modbus_controller
    name: PWP Power Mode
    id: pwp_power_mode
    modbus_controller_id: fairland
    address: 1
    value_type: U_WORD
    optionsmap:
      Super Silence: 2
      Silence: 1
      Normal: 0
      Turbo: 3
number:
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Target Temperature Heating
    id: pwp_target_temperature_heating
    address: 3
    value_type: U_WORD
    unit_of_measurement: °C
    min_value: 18
    max_value: 32
    lambda: return (x-96) / 2 + 18;
    write_lambda: |-
      ESP_LOGD("main", "Modbus Number incoming value = %f", x);
      return ((x-18) * 2 + 96) * 1.0;
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Target Temperature Auto
    id: pwp_target_temperature_auto
    register_type: holding
    address: 2
    value_type: U_WORD
    unit_of_measurement: °C
    min_value: 18
    max_value: 32
    lambda: return (x-96) / 2 + 18;
    write_lambda: |-
      ESP_LOGD("main", "Modbus Number incoming value = %f", x);
      return ((x-18) * 2 + 96) * 1.0;
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Target Temperature Cooling
    id: pwp_target_temperature_cooling
    register_type: holding
    address: 4
    value_type: U_WORD
    unit_of_measurement: °C
    min_value: 18
    max_value: 32
    lambda: return (x-96) / 2 + 18;
    write_lambda: |-
      ESP_LOGD("main", "Modbus Number incoming value = %f", x);
      return ((x-18) * 2 + 96) * 1.0;
sensor:
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Speed Percentage
    id: pwp_speed_percentage
    register_type: read
    address: 0
    value_type: U_WORD
    unit_of_measurement: "%"
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: “Voltage of PFC”
    id: voltage_of_pfc
    register_type: read
    address: 2
    value_type: U_WORD
    unit_of_measurement: “V”
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Inlet water Temperature
    id: pwp_inlet_water_temperature
    register_type: read
    address: 3
    value_type: U_WORD
    unit_of_measurement: °C
    filters:
      - offset: -96
      - multiply: 0.5
      - offset: 18
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Outlet water Temperature
    id: pwp_outlet_water_temperature
    register_type: read
    address: 4
    value_type: U_WORD
    unit_of_measurement: °C
    filters:
      - offset: -96
      - multiply: 0.5
      - offset: 18
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Ambient Air Temperature
    id: pwp_ambient_air_temperature
    register_type: read
    address: 4
    value_type: U_WORD
    unit_of_measurement: °C
    filters:
      - offset: -96
      - multiply: 0.5
      - offset: 18
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Compressor Current
    id: pwp_compressor_current
    register_type: read
    address: 11
    value_type: U_WORD
    unit_of_measurement: A
    filters:
      - multiply: 0.1
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Compressor Running Frequency
    id: pwp_compressor_running_frequency
    register_type: read
    address: 10
    value_type: U_WORD
    unit_of_measurement: Hz
  - platform: template
    name: PWP Compressor Power
    id: pwp_compressor_power
    unit_of_measurement: W
    lambda: |-
      if (id(pwp_compressor_current).state) {
      return id(pwp_compressor_current).state * id(voltage_of_pfc).state;
      } else {
      return 0.0;
      }    
    update_interval: 1s
binary_sensor:
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Error E0
    id: pwp_error_E0
    register_type: discrete_input
    address: 48
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Error E1 - High Pressure Protection
    id: pwp_error_E1
    register_type: discrete_input
    address: 49
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Error E2 Low Pressure Protection
    id: pwp_error_E2
    register_type: discrete_input
    address: 50
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Warning E3 No Water Protection
    id: pwp_error_E3
    register_type: discrete_input
    address: 51
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Error E4 3 phase sequence protection
    id: pwp_error_E4
    register_type: discrete_input
    address: 52
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Warning E5 Power Supply Excesses Operation Range
    id: pwp_error_E5
    register_type: discrete_input
    address: 53
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Warning E6 Insufficient Water Flow
    id: pwp_error_E6
    register_type: discrete_input
    address: 54
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Error E7 Water Outlet Temp too high or too low
    id: pwp_error_E7
    register_type: discrete_input
    address: 55
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Error E8 High Exhaust Temp Protection
    id: pwp_error_E8
    register_type: discrete_input
    address: 56
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Error E9
    id: pwp_error_E9
    register_type: discrete_input
    address: 57
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Error EA Evaporator overheat protection
    id: pwp_error_EA
    register_type: discrete_input
    address: 58
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Warning EB Ambient Temperature too high or too low
    id: pwp_error_EB
    register_type: discrete_input
    address: 59
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Error EC
    id: pwp_error_EC
    register_type: discrete_input
    address: 60
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Warning  ED Anti-Freezing Reminder
    id: pwp_error_ED
    register_type: discrete_input
    address: 61
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Error EF
    id: pwp_error_EF
    register_type: discrete_input
    address: 62
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Error P0 Controller Communication Failure
    id: pwp_error_P0
    register_type: discrete_input
    address: 64
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Error P1 Water Inlet Temp Sensor Failure
    id: pwp_error_P1
    register_type: discrete_input
    address: 65
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Error P2 Water Outlet Temp Sensor Failure
    id: pwp_error_P2
    register_type: discrete_input
    address: 66
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Error P3 Gas Exhaust Temp Sensor Failure
    id: pwp_error_P3
    register_type: discrete_input
    address: 67
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Error P4 Evaporator Coil Pipe Temp Sensor Failure
    id: pwp_error_P4
    register_type: discrete_input
    address: 68
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Error P5 Gas Return Temp Sensor Failure
    id: pwp_error_P5
    register_type: discrete_input
    address: 69
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Error P6 Cooling Coil Pipe Temp Sensor Failure
    id: pwp_error_P6
    register_type: discrete_input
    address: 70
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Error P7 Ambient Temp Sensor Failure
    id: pwp_error_P7
    register_type: discrete_input
    address: 71
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Error P8 Cooling Plate Sensor Failiure
    id: pwp_error_P8
    register_type: discrete_input
    address: 72
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Error P9 Current Sensor Failure
    id: pwp_error_P9
    register_type: discrete_input
    address: 73
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Error PA Restart Memory Failure
    id: pwp_error_PA
    register_type: discrete_input
    address: 74
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Error PB
    id: pwp_error_PB
    register_type: discrete_input
    address: 75
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Error PC
    id: pwp_error_PC
    register_type: discrete_input
    address: 76
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Error PD
    id: pwp_error_PD
    register_type: discrete_input
    address: 77
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Error PE
    id: pwp_error_PE
    register_type: discrete_input
    address: 78
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Error PF
    id: pwp_error_PF
    register_type: discrete_input
    address: 79
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Error F0
    id: pwp_error_F0
    register_type: discrete_input
    address: 80
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Error F1 Compressor Drive Module Failure
    id: pwp_error_F1
    register_type: discrete_input
    address: 81
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Error F2 PFC Module Failure
    id: pwp_error_F2
    register_type: discrete_input
    address: 82
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Error F3 Compressor Start Failure
    id: pwp_error_F3
    register_type: discrete_input
    address: 83
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Error F4 Compressor Running Failure
    id: pwp_error_F4
    register_type: discrete_input
    address: 84
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Error F5 Inverter Board Over Current Protection
    id: pwp_error_F5
    register_type: discrete_input
    address: 85
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Error F6 Inverter Board Over Temperature Protection
    id: pwp_error_F6
    register_type: discrete_input
    address: 86
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Error F7 Current Protection
    id: pwp_error_F7
    register_type: discrete_input
    address: 87
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Error F8 Cooling Plate Overheat Protection
    id: pwp_error_F8
    register_type: discrete_input
    address: 88
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Error F9 Fan Motor Failure
    id: pwp_error_F9
    register_type: discrete_input
    address: 89
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Error FA PFC Module Over Current Protection
    id: pwp_error_FA
    register_type: discrete_input
    address: 90
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Error FB Power Filter Plate No-Power Protection
    id: pwp_error_FB
    register_type: discrete_input
    address: 91
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Error FC
    id: pwp_error_FC
    register_type: discrete_input
    address: 92
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Error FD
    id: pwp_error_FD
    register_type: discrete_input
    address: 93
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Error FE
    id: pwp_error_FE
    register_type: discrete_input
    address: 94
    device_class: PROBLEM
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: PWP Error FF
    id: pwp_error_FF
    register_type: discrete_input
    address: 95
    device_class: PROBLEM

Do you found a solution? I’ve a Protoss (RS485 to LAN) which I wants to use.

Can you share the error message, please?

With the LAN adapter, I think it’s better to use the MQTT module in home assistant. There should not be the need for an ESP and ESP-Home.

Below is an example of how I set up home assistant to communicate with my solar inverter via Modbus over LAN. First block is the communication setup. Here you’d configure your Modbus to LAN adapter. After that you add the modbus registers. I believe the syntax is identical to the one used in ESP-Home but haven’t tried it.

modbus:
  - name: Sungrow
    type: tcp
    host: !secret sungrow_modbus_host_ip_wr5
    port: !secret sungrow_modbus_port
    delay: 1
    timeout: 1


    sensors:
      - name: WR5 Daily PV Generation
        unique_id: wr5_daily_pv_generation
        slave: !secret sungrow_modbus_slave
        address: 5002 # reg 5003
        input_type: input

        data_type: uint16
        #swap: byte
        precision: 1
        unit_of_measurement: kWh
        device_class: energy
        state_class: total_increasing
        scale: 0.1
        scan_interval: 600

Hi All,

I’m trying to bring this solution to life, but rather with less success than more.
I have an ESP32 and a MAX485 TTL to RS485

I keep getting these CRC Check Failed errors.

Any idea what am doing wrong?

PS: noob here :slight_smile:

INFO ESPHome 2024.2.1
INFO Reading configuration /config/esphome/med-hsz-esp.yaml...
INFO Generating C++ source...
INFO Compiling app...
Processing med-hsz-esp (board: esp32dev; framework: arduino; platform: platformio/[email protected])
--------------------------------------------------------------------------------
HARDWARE: ESP32 240MHz, 320KB RAM, 4MB Flash
 - toolchain-xtensa-esp32 @ 8.4.0+2021r2-patch5
Dependency Graph
|-- AsyncTCP-esphome @ 2.0.1
|-- WiFi @ 2.0.0
|-- FS @ 2.0.0
|-- Update @ 2.0.0
|-- ESPAsyncWebServer-esphome @ 3.1.0
|-- DNSServer @ 2.0.0
|-- ESPmDNS @ 2.0.0
|-- noise-c @ 0.1.4
|-- ArduinoJson @ 6.18.5
Compiling .pioenvs/med-hsz-esp/src/main.cpp.o
Linking .pioenvs/med-hsz-esp/firmware.elf
RAM:   [=         ]  12.5% (used 41012 bytes from 327680 bytes)
Flash: [=====     ]  53.9% (used 989649 bytes from 1835008 bytes)
Building .pioenvs/med-hsz-esp/firmware.bin
Creating esp32 image...
Successfully created esp32 image.
esp32_create_combined_bin([".pioenvs/med-hsz-esp/firmware.bin"], [".pioenvs/med-hsz-esp/firmware.elf"])
Wrote 0x103060 bytes to file /data/build/med-hsz-esp/.pioenvs/med-hsz-esp/firmware-factory.bin, ready to flash to offset 0x0
========================= [SUCCESS] Took 17.27 seconds =========================
INFO Successfully compiled program.
INFO Connecting to 192.168.0.165
INFO Uploading /data/build/med-hsz-esp/.pioenvs/med-hsz-esp/firmware.bin (995424 bytes)
Uploading: [============================================================] 100% Done...

INFO Upload took 12.44 seconds, waiting for result...
INFO OTA successful
INFO Successfully uploaded program.
INFO Starting log output from 192.168.0.165 using esphome API
INFO Successfully connected to med-hsz-esp @ 192.168.0.165 in 7.313s
INFO Successful handshake with med-hsz-esp @ 192.168.0.165 in 0.264s
[18:13:47][I][app:102]: ESPHome version 2024.2.1 compiled on Mar  2 2024, 18:13:11
[18:13:47][C][wifi:577]: WiFi:
[18:13:47][C][wifi:409]:   Local MAC: 08:D1:F9:E7:54:A8
[18:13:47][C][wifi:414]:   SSID: 'TP-Link_1F87'[redacted]
[18:13:47][C][wifi:415]:   IP Address: 192.168.0.165
[18:13:47][C][wifi:417]:   BSSID: 34:60:F9:6B:1F:87[redacted]
[18:13:47][C][wifi:418]:   Hostname: 'med-hsz-esp'
[18:13:47][C][wifi:420]:   Signal strength: -80 dB ▂▄▆█
[18:13:47][C][wifi:424]:   Channel: 4
[18:13:47][C][wifi:425]:   Subnet: 255.255.255.0
[18:13:47][C][wifi:426]:   Gateway: 192.168.0.1
[18:13:47][C][wifi:427]:   DNS1: 0.0.0.0
[18:13:47][C][wifi:428]:   DNS2: 0.0.0.0
[18:13:47][C][logger:447]: Logger:
[18:13:47][C][logger:448]:   Level: DEBUG
[18:13:47][C][logger:449]:   Log Baud Rate: 115200
[18:13:47][C][logger:451]:   Hardware UART: UART1
[18:13:47][C][uart.arduino_esp32:137]: UART Bus 0:
[18:13:47][C][uart.arduino_esp32:138]:   TX Pin: GPIO1
[18:13:47][C][uart.arduino_esp32:139]:   RX Pin: GPIO3
[18:13:47][C][uart.arduino_esp32:141]:   RX Buffer Size: 256
[18:13:47][C][uart.arduino_esp32:143]:   Baud Rate: 9600 baud
[18:13:47][C][uart.arduino_esp32:144]:   Data Bits: 8
[18:13:47][C][uart.arduino_esp32:145]:   Parity: NONE
[18:13:47][C][uart.arduino_esp32:146]:   Stop bits: 1
[18:13:47][D][modbus_controller:043]: Modbus command to device=1 register=0x03 countdown=0 no response received - removed from send queue
[18:13:47][C][modbus:143]: Modbus:
[18:13:47][C][modbus:144]:   Flow Control Pin: GPIO4
[18:13:47][C][modbus:145]:   Send Wait Time: 250 ms
[18:13:47][C][modbus:146]:   CRC Disabled: NO
[18:13:47][C][modbus.number:083]: modbus.numberModbus Number 'PWP Target Temperature Heating'
[18:13:47][C][modbus.number:083]: modbus.number  Unit of Measurement: '°C'
[18:13:47][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:47][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:47][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:47][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:47][C][modbus.number:083]: modbus.numberModbus Number 'PWP Target Temperature Auto'
[18:13:47][C][modbus.number:083]: modbus.number  Unit of Measurement: '°C'
[18:13:47][C][modbus.number:083]: modbus.numberModbus Number 'PWP Target Temperature Cooling'
[18:13:47][C][modbus.number:083]: modbus.number  Unit of Measurement: '°C'
[18:13:47][C][template.sensor:022]: Template Sensor 'PWP Compressor Power'
[18:13:47][C][template.sensor:022]:   State Class: ''
[18:13:47][C][template.sensor:022]:   Unit of Measurement: 'W'
[18:13:47][C][template.sensor:022]:   Accuracy Decimals: 1
[18:13:47][C][template.sensor:023]:   Update Interval: 1.0s
[18:13:47][C][modbus_controller:298]: ModbusController:
[18:13:47][C][modbus_controller:299]:   Address: 0x01
[18:13:47][C][modbus_controller.switch:068]: modbus_controller.switchModbus Controller Switch 'PWP Power Switch'
[18:13:47][C][modbus_controller.switch:091]: modbus_controller.switch  Restore Mode: disabled 
[18:13:47][C][modbus_controller.select:009]: modbus_controller.selectModbus Controller Select 'PWP Operating Mode'
[18:13:47][C][modbus_controller.select:009]: modbus_controller.selectModbus Controller Select 'PWP Power Mode'
[18:13:47][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:47][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:47][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:47][C][modbus_controller.sensor:010]: modbus_controller.sensorModbus Controller Sensor 'PWP Speed Percentage'
[18:13:47][C][modbus_controller.sensor:010]: modbus_controller.sensor  State Class: ''
[18:13:47][C][modbus_controller.sensor:010]: modbus_controller.sensor  Unit of Measurement: '%'
[18:13:47][C][modbus_controller.sensor:010]: modbus_controller.sensor  Accuracy Decimals: 0
[18:13:47][C][modbus_controller.sensor:010]: modbus_controller.sensorModbus Controller Sensor 'PWP Inlet water Temperature'
[18:13:47][C][modbus_controller.sensor:010]: modbus_controller.sensor  State Class: ''
[18:13:47][C][modbus_controller.sensor:010]: modbus_controller.sensor  Unit of Measurement: '°C'
[18:13:47][C][modbus_controller.sensor:010]: modbus_controller.sensor  Accuracy Decimals: 0
[18:13:47][C][modbus_controller.sensor:010]: modbus_controller.sensorModbus Controller Sensor 'PWP Outlet water Temperature'
[18:13:47][C][modbus_controller.sensor:010]: modbus_controller.sensor  State Class: ''
[18:13:47][C][modbus_controller.sensor:010]: modbus_controller.sensor  Unit of Measurement: '°C'
[18:13:48][C][modbus_controller.sensor:010]: modbus_controller.sensor  Accuracy Decimals: 0
[18:13:48][C][modbus_controller.sensor:010]: modbus_controller.sensorModbus Controller Sensor 'PWP Ambient Air Temperature'
[18:13:48][C][modbus_controller.sensor:010]: modbus_controller.sensor  State Class: ''
[18:13:48][C][modbus_controller.sensor:010]: modbus_controller.sensor  Unit of Measurement: '°C'
[18:13:48][C][modbus_controller.sensor:010]: modbus_controller.sensor  Accuracy Decimals: 0
[18:13:48][C][modbus_controller.sensor:010]: modbus_controller.sensorModbus Controller Sensor 'PWP Compressor Current'
[18:13:48][C][modbus_controller.sensor:010]: modbus_controller.sensor  State Class: ''
[18:13:48][C][modbus_controller.sensor:010]: modbus_controller.sensor  Unit of Measurement: 'A'
[18:13:48][C][modbus_controller.sensor:010]: modbus_controller.sensor  Accuracy Decimals: 0
[18:13:48][D][sensor:094]: 'PWP Compressor Power': Sending state nan W with 1 decimals of accuracy
[18:13:48][C][modbus_controller.sensor:010]: modbus_controller.sensorModbus Controller Sensor 'PWP Compressor Running Frequency'
[18:13:48][C][modbus_controller.sensor:010]: modbus_controller.sensor  State Class: ''
[18:13:48][C][modbus_controller.sensor:010]: modbus_controller.sensor  Unit of Measurement: 'Hz'
[18:13:48][C][modbus_controller.sensor:010]: modbus_controller.sensor  Accuracy Decimals: 0
[18:13:48][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFD
[18:13:48][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:48][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:48][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:48][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Error E0'
[18:13:48][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:48][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Error E1 - High Pressure Protection'
[18:13:48][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:48][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Error E2 Low Pressure Protection'
[18:13:48][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:48][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Warning E3 No Water Protection'
[18:13:48][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:48][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Error E4 3 phase sequence protection'
[18:13:48][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:48][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Warning E5 Power Supply Excesses Operation Range'
[18:13:48][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:48][W][modbus:108]: Modbus CRC Check failed! 4040!=DFFF
[18:13:48][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:48][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Warning E6 Insufficient Water Flow'
[18:13:48][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:48][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Error E7 Water Outlet Temp too high or too low'
[18:13:48][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:48][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Error E8 High Exhaust Temp Protection'
[18:13:48][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:48][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Error E9'
[18:13:48][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:48][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Error EA Evaporator overheat protection'
[18:13:48][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:48][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Warning EB Ambient Temperature too high or too low'
[18:13:48][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:48][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Error EC'
[18:13:48][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:48][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:48][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:48][W][modbus:108]: Modbus CRC Check failed! 8047!=FFFF
[18:13:48][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Warning ED Anti-Freezing Reminder'
[18:13:48][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:48][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Error EF'
[18:13:48][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:48][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Error P0 Controller Communication Failure'
[18:13:48][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:48][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Error P1 Water Inlet Temp Sensor Failure'
[18:13:48][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:48][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Error P2 Water Outlet Temp Sensor Failure'
[18:13:48][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:48][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Error P3 Gas Exhaust Temp Sensor Failure'
[18:13:48][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:48][D][modbus_controller:043]: Modbus command to device=1 register=0x0A countdown=0 no response received - removed from send queue
[18:13:48][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Error P4 Evaporator Coil Pipe Temp Sensor Failure'
[18:13:48][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:49][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Error P5 Gas Return Temp Sensor Failure'
[18:13:49][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:49][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:49][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:49][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:49][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Error P6 Cooling Coil Pipe Temp Sensor Failure'
[18:13:49][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:49][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Error P7 Ambient Temp Sensor Failure'
[18:13:49][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:49][D][sensor:094]: 'PWP Compressor Power': Sending state nan W with 1 decimals of accuracy
[18:13:49][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Error P8 Cooling Plate Sensor Failiure'
[18:13:49][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:49][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Error P9 Current Sensor Failure'
[18:13:49][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:49][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Error PA Restart Memory Failure'
[18:13:49][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:49][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Error PB'
[18:13:49][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:49][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Error PC'
[18:13:49][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:49][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:49][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:49][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Error PD'
[18:13:49][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:49][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Error PE'
[18:13:49][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:49][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Error PF'
[18:13:49][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:49][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Error F0'
[18:13:49][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:49][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Error F1 Compressor Drive Module Failure'
[18:13:49][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:49][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Error F2 PFC Module Failure'
[18:13:49][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:49][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Error F3 Compressor Start Failure'
[18:13:49][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:49][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Error F4 Compressor Running Failure'
[18:13:49][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:49][W][modbus:108]: Modbus CRC Check failed! D041!=FFFF
[18:13:49][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:49][W][modbus:108]: Modbus CRC Check failed! 8101!=FFFF
[18:13:49][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Error F5 Inverter Board Over Current Protection'
[18:13:49][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:49][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Error F6 Inverter Board Over Temperature Protection'
[18:13:49][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:49][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Error F7 Current Protection'
[18:13:49][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:49][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Error F8 Cooling Plate Overheat Protection'
[18:13:49][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:49][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Error F9 Fan Motor Failure'
[18:13:49][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:49][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Error FA PFC Module Over Current Protection'
[18:13:49][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:49][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Error FB Power Filter Plate No-Power Protection'
[18:13:49][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:49][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:49][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:49][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:49][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Error FC'
[18:13:49][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:49][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Error FD'
[18:13:49][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:49][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Error FE'
[18:13:49][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:49][C][modbus_controller.binary_sensor:009]: Modbus Controller Binary Sensor 'PWP Error FF'
[18:13:50][C][modbus_controller.binary_sensor:009]:   Device Class: 'problem'
[18:13:50][C][captive_portal:088]: Captive Portal:
[18:13:50][C][web_server:168]: Web Server:
[18:13:50][C][web_server:169]:   Address: 192.168.0.165:80
[18:13:50][C][mdns:115]: mDNS:
[18:13:50][C][mdns:116]:   Hostname: med-hsz-esp
[18:13:50][D][sensor:094]: 'PWP Compressor Power': Sending state nan W with 1 decimals of accuracy
[18:13:50][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:50][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:50][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:50][C][ota:096]: Over-The-Air Updates:
[18:13:50][C][ota:097]:   Address: 192.168.0.165:3232
[18:13:50][C][ota:100]:   Using Password.
[18:13:50][C][ota:103]:   OTA version: 2.
[18:13:50][C][api:139]: API Server:
[18:13:50][C][api:140]:   Address: 192.168.0.165:6053
[18:13:50][C][api:142]:   Using noise encryption: YES
[18:13:50][D][modbus_controller:043]: Modbus command to device=1 register=0x00 countdown=0 no response received - removed from send queue
[18:13:50][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:50][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:50][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:50][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:50][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:50][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:50][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:50][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:50][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:51][D][sensor:094]: 'PWP Compressor Power': Sending state nan W with 1 decimals of accuracy
[18:13:51][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:51][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:51][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:51][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:51][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:51][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:51][D][modbus_controller:043]: Modbus command to device=1 register=0x30 countdown=0 no response received - removed from send queue
[18:13:51][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:51][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:51][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:52][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:52][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:52][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFB
[18:13:52][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:52][D][sensor:094]: 'PWP Compressor Power': Sending state nan W with 1 decimals of accuracy
[18:13:52][W][modbus:108]: Modbus CRC Check failed! 4040!=FFDF
[18:13:52][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFC
[18:13:52][W][modbus:108]: Modbus CRC Check failed! 8641!=FFFF
[18:13:52][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:52][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:52][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:52][W][modbus:108]: Modbus CRC Check failed! 4040!=FBFF
[18:13:52][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:53][D][sensor:094]: 'PWP Compressor Power': Sending state nan W with 1 decimals of accuracy
[18:13:53][D][modbus_controller:043]: Modbus command to device=1 register=0x40 countdown=0 no response received - removed from send queue
[18:13:53][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:53][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:53][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:53][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:53][W][modbus:108]: Modbus CRC Check failed! 8081!=FDFF
[18:13:53][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:53][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:53][W][modbus:108]: Modbus CRC Check failed! 4040!=FF7F
[18:13:53][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:53][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:53][W][modbus:108]: Modbus CRC Check failed! D041!=FFFF
[18:13:53][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:53][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:53][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:54][D][sensor:094]: 'PWP Compressor Power': Sending state nan W with 1 decimals of accuracy
[18:13:54][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:54][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:54][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:54][D][modbus_controller:043]: Modbus command to device=1 register=0x00 countdown=0 no response received - removed from send queue
[18:13:54][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:54][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:54][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:54][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:54][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:54][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:55][D][sensor:094]: 'PWP Compressor Power': Sending state nan W with 1 decimals of accuracy
[18:13:55][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:55][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFE
[18:13:55][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:55][W][modbus:108]: Modbus CRC Check failed! 4040!=DFFF
[18:13:55][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:55][W][modbus:108]: Modbus CRC Check failed! 8011!=FFFF
[18:13:55][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:55][W][modbus:108]: Modbus CRC Check failed! 80E1!=FFFF
[18:13:55][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:55][W][modbus:108]: Modbus CRC Check failed! 9841!=FFFF
[18:13:55][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:55][D][modbus_controller:043]: Modbus command to device=1 register=0x00 countdown=0 no response received - removed from send queue
[18:13:56][D][sensor:094]: 'PWP Compressor Power': Sending state nan W with 1 decimals of accuracy
[18:13:57][D][sensor:094]: 'PWP Compressor Power': Sending state nan W with 1 decimals of accuracy
[18:13:57][W][modbus:108]: Modbus CRC Check failed! 41C0!=FFFF
[18:13:57][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:57][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:57][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:57][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:57][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:57][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:57][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:57][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:57][W][modbus:108]: Modbus CRC Check failed! 8101!=FFFF
[18:13:57][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:57][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:57][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:57][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:57][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:57][W][modbus:108]: Modbus CRC Check failed! 47C0!=FFFF
[18:13:57][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:57][W][modbus:108]: Modbus CRC Check failed! 4040!=BFFF
[18:13:57][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:57][W][component:214]: Component modbus took a long time for an operation (0.11 s).
[18:13:57][W][component:215]: Components should block for at most 20-30ms.
[18:13:57][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:57][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:57][W][modbus:108]: Modbus CRC Check failed! 4040!=BFFF
[18:13:57][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:57][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:57][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:57][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:58][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:58][W][modbus:108]: Modbus CRC Check failed! 4040!=FFF7
[18:13:58][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:58][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:58][D][sensor:094]: 'PWP Compressor Power': Sending state nan W with 1 decimals of accuracy
[18:13:58][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:58][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:58][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:58][W][modbus:108]: Modbus CRC Check failed! E041!=FFFF
[18:13:58][D][modbus_controller:043]: Modbus command to device=1 register=0x00 countdown=0 no response received - removed from send queue
[18:13:58][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:58][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:58][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:58][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:58][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:58][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:58][W][modbus:108]: Modbus CRC Check failed! 4040!=FFFF
[18:13:58][W][modbus:108]: Modbus CRC Check failed! 804D!=FFFF
[18:13:59][D][sensor:094]: 'PWP Compressor Power': Sending state nan W with 1 decimals of accuracy



The error seems to be with compressor power. Are you getting the other values? Maybe the your board is different? Just guessing here though.

Does it work if you remove the entry for compressor power from the config?

@rstcologne did you use/copy register/coils from the domoticz-post?

I recently bought a pool inverter that came also across with a second RS485 socket and i’ve tried to use those registers/coils via usb RTU (for testing). Unfortunatly only holding registers work, but the results do not match anything from this domoticz-article.

Is there a way to find out correct registers, maybe with sniffing what that tuya-device is doing over RS485 - or do i have to contact the vendor - what might be nearly impossible - to find a modbus-register-table.

For me, copying the registers worked. I also contacted the vendor just in case and received a reply really quickly. The document received didn’t uncover anything new though.

Honestly I’m not too experienced with Modbus. I suppose you could program something that queries everything or try sniffing but I’m of no help with that. Sorry.

sorry for my late response :frowning:
I use a windows machine, I followed the instructions for installation step by step as described at: Installing ESPHome Manually — ESPHome
and this guide at youtube: https://www.youtube.com/watch?v=BX6tDsux_X4
The installation was sucessfull but when I try to run my esp.yaml file I receive error message(see below)

C:\esp>esphome run esp.yaml
INFO ESPHome 2023.12.9
INFO Reading configuration esp.yaml...
Failed config

esphome: None

  expected a dictionary.

I only want to create from *.yaml a binary file which I can flash to my wemos board.

Your latest message prompted me to look into your yaml again. Even though it’s valid yaml, I believe you have a syntax error (with respect to the syntax ESPHome expects).

You have this at the start:

esp8266: null
board: d1_mini_pro

Can you try this instead:

esp8266:
    board: d1_mini_pro

Make sure the line with board is indented the same way as other indentations.

I also don’t really understand why you try to compile manually. I suppose you have a home assistant instance somewhere. I find it much easier to use the ESP-Home environment in the HA UI to do the configurations, compile in the browser and then flash with Esphome flasher:

Just build in the UI with manual download selected and then use the flasher tool to flash.

No offense please, there might be valid reasons for you to do it the way you try to do it.

yes, the *yaml file I use is without “null” comands … but errors still available.

The whole backround of my intention is that I have a pool heatpump which I want to integrate in my smarthome via MQTT (Iobroker) or locally via WebIF(ESP board) and not through the integrated WLAN controller of the Pool heatpump into the internet.
I don´t have any ESPHome or Homeassistant system running.
I just installed it locally for compiling/flashing my ESP board, I thought this would be the best solution with minimum of expense instead of installing and configuring bigger toolings.
But it seems that I was wrong :frowning:

Hello everyone,
This is my first post :grin:
I tried to connect my unbranded heat pump which has a MWH298-V2 2017.04.21 card


It’s almost the same card used by deepstahl77 but the XH - connector is not present and the red DIP switch configuration is also different.

I’m using an ESP8266 AZDelivery, a DC-DC Buck Converter 4.5-28V and a Hailege TTL to RS485 485 to Serial UART.

ESP is online but there are no sensor data available
I tried almost everything : hardware_uart: UART0_SWAP, hardware_uart: UART0, increase modbus update_interval…

Everything failed :pensive:

After some email exchange with Fairland, I have to change the PC board…

We’ve just had one of these (Madimack InverEco branded) units installed - Still waiting for sparky to commission it tomorrow but had a dig inside. Ours has a MWH298 V2.1 pcb, with the modbus connector broken out to the external wifi module. it looks like the connector they use on wifi is AHUA 4 pin M12 series - still to be measured fully and see if I can grab some from ebay, This manufacturer product seems to be similar.
The Wifi module itself is a tuya WBR1 with an antenna on the front face of the package. Looks like it has a clone of an STM32F030C8 ARM M0 cpu onboard - that’s the model with 2 uarts, so I’m guessing one is modbus, the other talks to tuya. Strangely the PCB has the ‘wifi’ LED and a push button in the moddle, but there’s also 3 LEDs on the side that aren’t visible through the case. Googling for ‘MCH302’ (pcb screenprint) or ‘AWY40D’ (part number on back) didn’t bring anything interesting

I don’t have a 3D printer, so may try and make my interface version fit in their case - might be a challenge.

Photos if it’s of help to others at https://photos.app.goo.gl/UTgzzrPRBTL56rtm8 - see also the “Mr Silence full pool heater” thread

Hi all, I’ve been working on dropping my local Tuya config for an Esphome based control too. Your code @rstcologne has been of great help.
I’ve used devices from M5Stack, which saves you the soldering and just use out of the box solutions.

I’ve used a M5Stickc with an RS485 hat (which has a 12v-5v converter inside):

Most of the yaml is identical, I’ve just included it for future reference for others. Main difference is in the m5stickc config and the gpio ports:

esphome:
  name: pool-fairland-heatpump
  friendly_name: pool-fairland-heatpump
  
substitutions:
  ip: !secret pool_heatpump_ip

<<: !include .common.yaml

esp32:
  board: m5stick-c
  framework:
    type: arduino

# Enable logging
logger:
  baud_rate: 0
  hardware_uart: UART0
  level: INFO
  #level: VERBOSE #makes uart stream available in esphome logstream

uart:
  id: mod_bus
  tx_pin: GPIO0
  rx_pin: GPIO26
  baud_rate: 9600
  data_bits: 8
  stop_bits: 1
  parity: NONE
  # debug:
  #   direction: BOTH
  #   dummy_receiver: false
  #   after:
  #     delimiter: "\n"
  #   sequence:
  #     - lambda: UARTDebug::log_string(direction, bytes);
  
modbus:
  id: modbus1

modbus_controller:
  - id: fairland
    ## the Modbus device addr
    address: 0x0001
    modbus_id: modbus1
    update_interval: 5s
    

light:
  # Built-in Red Status LED Light. See https://esphome.io/components/light/status_led.html
  - platform: status_led
    name: "LED Light"
    restore_mode: ALWAYS_OFF
    pin:
      number: GPIO10
      inverted: true
# Built-in buttons. See https://esphome.io/components/button/
# binary_sensor:
#   - platform: gpio
#     pin:
#       number: GPIO37
#       inverted: true
#     id: button_a
#     name: Button A
#   - platform: gpio
#     pin:
#       number: GPIO39
#       inverted: true
#     id: button_b
#     name: Button B

# Built-in infrared transmitter. See https://esphome.io/components/remote_transmitter.html
# and https://m5stack.hackster.io/alessandro-polselli/turn-m5stickc-into-universal-ir-remote-home-automation-d3ec0d
remote_transmitter:
  pin: GPIO9
  carrier_duty_percent: 50%

# sensor:
#   - platform: axp192
#     address: 0x34
#     i2c_id: bus_a
#     model: M5STICKC
#     update_interval: 30s
#     battery_level:
#       name: "Battery Level"
#       id: "battery_level"

spi:
  clk_pin: GPIO13
  mosi_pin: GPIO15

i2c:
  - id: bus_a
    sda: GPIO21
    scl: GPIO22
    scan: True

# Fonts
font:
  - file: "gfonts://Roboto"
    id: roboto
    size: 12

# builtin 80x160 TFT
display:
  - platform: st7735
    model: "INITR_MINI160X80"
    cs_pin: GPIO5
    dc_pin: GPIO23
    reset_pin: GPIO18
    device_height: 80
    device_width: 160
    row_start: 1
    col_start: 1
    rotation: 270
    update_interval: 2s
    lambda: |-
      it.print(80, 0, id(roboto), TextAlign::TOP_CENTER, "M5Stickc Fairland Pool - Modbus");



###################################################
# Elements with Modbus Operation read 01 / write 05
# coil
###################################################
# 0	Power
# 1	compulsory defrosting
# 2~47	reserve
###################################################

switch:
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Power Switch"
    id: power_switch
    icon: "mdi:power"
    register_type: coil
    address: 0x0

###################################################
# Elements with Modbus Operation read 03 / write 06
# holding
###################################################
# address content	Range	Unit	Step length	Defaut	Illustration
# 0	mode selection 1	0~2				0:Auto,1:Heating,2:Cooling
# 1	mode selection 2	0~3		1	1	0:Normal,1:silence,2:Super silence, 3: Turbo
# 2	Temp setting under Auto mode	18~35	℃	1	25	
# 3	Temp setting under heating mode					
# 4	Temp setting under cooling mode	30~95	%	1	50	
# 5	Running mode of water pump	0~2		1	0	"0:Continuation 
# 1:Water temp control
# 2:time/water temp control
# "
# 6	Time setting of water pump (When under running mode 2)	10 ~ 120 	min	5	60	
# 7	The compressor runs continuously before defrosting enters	20~90	min	1	20	
# 8	Defrosting start temp	-10~10	℃	1	-1	
# 9	Defrosting running time	1~12	min	1	8	
# 10	Defrosting quit temp	0~30	℃	1	8	
# 11	Fixed speed mode selection					
# 12	reserve					
# 13	reserve					
# 14	Low temperature shutdown protection correction amount					
# 12	reserve					
# 13	reserve					
# 17	Electronic expansion valve overheat level(heating)	-10~20	℃	1	3	
# 18	Electronic expansion valve overheat level(cooling)	-10~20	℃	1	3	
# 19	Electronic expansion valve manual/auto	0~1		1	0	0:auto,1:Manual
# 20	Electronic expansion valve openning setting(heating)	50~240		2	100	
# 21	Electronic expansion valve openning setting(cooling)	50~240		2	100	
# 22	The medium frequency ratio selection					
# 23	reserve					
# 24	reserve					
# 25	Power off memory function	0~1		1	1	0: None;  1: Yes  
# 26	reserve					
# 27	reserve					
# 28	reserve					
# 29	reserve					
# 30	reserve					
# 31	reserve					
# 32	reserve					
###################################################

select:
  - platform: modbus_controller
    name: "Operating Mode"
    id: operating_mode
    icon: "mdi:fan"
    modbus_controller_id: fairland
    address: 0x0
    value_type: U_WORD
    optionsmap: 
      "Auto": 0
      "Heating": 1
      "Cooling": 2
    
  - platform: modbus_controller
    name: "Power Mode"
    id: power_mode
    icon: "mdi:fan"
    modbus_controller_id: fairland
    address: 0x1
    value_type: U_WORD
    optionsmap: 
      "Super Silence": 2
      "Silence": 1
      "Normal": 0
      "Turbo": 3

# Temperature Formula
# ((value - 96) / 2) + 18

number:
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Target Temperature Heating"
    id: target_temperature_heating
    icon: "mdi:sun-thermometer-outline"
    address: 0x3
    value_type: U_WORD
    unit_of_measurement: "°C"
    min_value: 18
    max_value: 32
    lambda: "return (x-96) / 2 + 18;"
    write_lambda: |- 
      ESP_LOGD("main", "Modbus Number incoming value = %f", x);
      return ((x-18) * 2 + 96) * 1.0;

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Target Temperature Auto"
    id: target_temperature_auto
    icon: "mdi:thermometer-auto"
    register_type: holding
    address: 0x2
    value_type: U_WORD
    unit_of_measurement: "°C"
    min_value: 18
    max_value: 32
    lambda: "return (x-96) / 2 + 18;"
    write_lambda: |- 
      ESP_LOGD("main", "Modbus Number incoming value = %f", x);
      return ((x-18) * 2 + 96) * 1.0;

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Target Temperature Cooling"
    id: target_temperature_cooling
    icon: "mdi:snowflake-thermometer"
    register_type: holding
    address: 0x4
    value_type: U_WORD
    unit_of_measurement: "°C"
    min_value: 18
    max_value: 32
    lambda: "return (x-96) / 2 + 18;"
    write_lambda: |- 
      ESP_LOGD("main", "Modbus Number incoming value = %f", x);
      return ((x-18) * 2 + 96) * 1.0;




###################################################
# Elements with Modbus Operation read 04 / write NA
# read
###################################################
# 0	Percentage of speed					
# 1	Target frequency of compressor					
# 2	Voltage of PFC					
# 3	Inlet water temp					
# 4	Outlet water temp					
# 5	Ambient air temp					
# 6	Dircharge temp					
# 7	Outer coil pipe temp					
# 8	Suction temp					
# 9	Inner coil pipe tem 					
# 10	Running frequency of compressor					
# 11	Current of compressor					
# 12	Cooling plate temp					
# 13	Electronic expansion valve opening					
# 14	DC fan speed					
# 15	Lower limit of setting temp of auto mode					
# 16	Upper limit of setting temp of auto mode					
# 17	Lower limit of setting temp of heating mode					
# 18	Upper limit of setting temp of heating mode					
# 19	Lower limit of setting temp of cooling mode					
# 20	Upper limit of setting temp of cooling mode					
# 21	Motherboard version code1					ASCII code
# 22	Motherboard version code2					ASCII code
# 23	Motherboard version code3					ASCII code
# 24	Motherboard version code4					ASCII code
# 25	Motherboard version code5					ASCII code
# 26	Model code1					ASCII code
# 27	Model code2 ('C'is heating and cooling version,‘H’is heating version)					ASCII code
# 28	Model code3					ASCII code
# 29	Model code4					ASCII code
# 30	Voltage of power supply		V	1		
# 31	The remaining time of Compressor shutdown protection 		S	1		
# 32	reserve					
###################################################

sensor:

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Speed Percentage"
    id: speed_percentage
    icon: "mdi:fan-speed-1"
    register_type: read
    address: 0x0
    value_type: U_WORD
    unit_of_measurement: "%"

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Voltage of PFC"
    id: voltage_of_pfc
    icon: "mdi:flash-triangle"
    register_type: read
    address: 0x2
    value_type: U_WORD
    unit_of_measurement: "V"
    
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Inlet water Temperature"
    id: inlet_water_temperature
    icon: "mdi:thermometer-chevron-up"
    register_type: read
    address: 0x3
    value_type: U_WORD
    unit_of_measurement: "°C"
    filters:
      - offset: -96
      - multiply: 0.5
      - offset: 18

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Outlet water Temperature"
    id: outlet_water_temperature
    icon: "mdi:thermometer-chevron-down"
    register_type: read
    address: 0x4
    value_type: U_WORD
    unit_of_measurement: "°C"
    filters:
      - offset: -96
      - multiply: 0.5
      - offset: 18

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Ambient Air Temperature"
    id: ambient_air_temperature
    icon: "mdi:home-thermometer-outline"
    register_type: read
    address: 0x5
    value_type: U_WORD
    unit_of_measurement: "°C"
    filters:
      - offset: -96
      - multiply: 0.5
      - offset: 18

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Compressor Current"
    id: compressor_current
    icon: "mdi:sine-wave"
    register_type: read
    address: 11
    value_type: U_WORD
    unit_of_measurement: "A"
    filters:
      - multiply: 0.1

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Compressor Running Frequency"
    id: compressor_running_frequency
    icon: "mdi:repeat-variant"
    register_type: read
    address: 10
    value_type: U_WORD
    unit_of_measurement: "Hz"

  - platform: template
    name: "Compressor Power"
    id: compressor_power
    icon: "mdi:lightning-bolt"
    unit_of_measurement: "W"
    lambda: |-
      if (id(compressor_current).state) {
      return id(compressor_current).state * id(voltage_of_pfc).state;
      } else {
      return 0.0;
      }    
    update_interval: 1s

###################################################
# Elements with Modbus Operation read 02 / write NA
# discrete_input
###################################################
# 0	Switch on/off
# 1	Defrosting
# 2	Temperature adjustment
# 3	Silence
# 4	Anti-freeze
# 5	Cooling mode selection
# 6	Remote controll
# 7	Water flow swtich
# 8	High pressure swtich
# 9	Low pressure swtich
# 10	Compressor
# 11	Outdorr fan motor
# 12	4-Way valve
# 13	Bypass valve
# 14	reserve
# 15	Heating element in the basis
# 16	reserve
# 17	Circulation pump
# 17~47	reserve
# 48	E0
# 49	E1
# 50	E2
# 51	E3
# 52	E4
# 53	E5
# 54	E6
# 55	E7
# 56	E8
# 57	E9
# 58	EA
# 59	EB
# 60	EC
# 61	ED
# 62	EE
# 63	EF
# 64	P0
# 65	P1
# 66	P2
# 67	P3
# 68	P4
# 69	P5
# 70	P6
# 71	P7
# 72	P8
# 73	P9
# 74	PA
# 75	PB
# 76	PC
# 77	PD
# 78	PE
# 79	PF
# 80	F0
# 81	F1
# 82	F2
# 83	F3
# 84	F4
# 85	F5
# 86	F6
# 87	F7
# 88	F8
# 89	F9
# 90	FA
# 91	FB
# 92	FC
# 93	FD
# 94	FE
# 95	FF
###################################################
binary_sensor:
  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Error E0"
    id: error_E0
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 48
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Error E1 - High Pressure Protection"
    id: error_E1
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 49
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Error E2 Low Pressure Protection"
    id: error_E2
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 50
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Warning E3 No Water Protection"
    id: error_E3
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 51
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Error E4 3 Phase Sequence Protection"
    id: error_E4
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 52
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Warning E5 Power Supply Excesses Operation Range"
    id: error_E5
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 53
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Warning E6 Insufficient Water Flow"
    id: error_E6
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 54
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Error E7 Water Outlet Temp too high or too low"
    id: error_E7
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 55
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Error E8 High Exhaust Temp Protection"
    id: error_E8
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 56
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Error E9"
    id: error_E9
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 57
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Error EA Evaporator overheat protection"
    id: error_EA
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 58
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Warning EB Ambient Temperature too high or too low"
    id: error_EB
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 59
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Error EC"
    id: error_EC
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 60
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Warning  ED Anti-Freezing Reminder"
    id: error_ED
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 61
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Error EF"
    id: error_EF
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 62
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Error P0 Controller Communication Failure"
    id: error_P0
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 64
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Error P1 Water Inlet Temp Sensor Failure"
    id: error_P1
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 65
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Error P2 Water Outlet Temp Sensor Failure"
    id: error_P2
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 66
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Error P3 Gas Exhaust Temp Sensor Failure"
    id: error_P3
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 67
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Error P4 Evaporator Coil Pipe Temp Sensor Failure"
    id: error_P4
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 68
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Error P5 Gas Return Temp Sensor Failure"
    id: error_P5
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 69
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Error P6 Cooling Coil Pipe Temp Sensor Failure"
    id: error_P6
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 70
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Error P7 Ambient Temp Sensor Failure"
    id: error_P7
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 71
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Error P8 Cooling Plate Sensor Failiure"
    id: error_P8
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 72
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Error P9 Current Sensor Failure"
    id: error_P9
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 73
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Error PA Restart Memory Failure"
    id: error_PA
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 74
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Error PB"
    id: error_PB
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 75
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Error PC"
    id: error_PC
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 76
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Error PD"
    id: error_PD
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 77
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Error PE"
    id: error_PE
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 78
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Error PF"
    id: error_PF
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 79
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Error F0"
    id: error_F0
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 80
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Error F1 Compressor Drive Module Failure"
    id: error_F1
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 81
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Error F2 PFC Module Failure"
    id: error_F2
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 82
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Error F3 Compressor Start Failure"
    id: error_F3
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 83
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Error F4 Compressor Running Failure"
    id: error_F4
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 84
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Error F5 Inverter Board Over Current Protection"
    id: error_F5
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 85
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Error F6 Inverter Board Over Temperature Protection"
    id: error_F6
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 86
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Error F7 Current Protection"
    id: error_F7
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 87
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Error F8 Cooling Plate Overheat Protection"
    id: error_F8
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 88
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Error F9 Fan Motor Failure"
    id: error_F9
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 89
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Error FA PFC Module Over Current Protection"
    id: error_FA
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 90
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Error FB Power Filter Plate No-Power Protection"
    id: error_FB
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 91
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Error FC"
    id: error_FC
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 92
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Error FD"
    id: error_FD
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 93
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Error FE"
    id: error_FE
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 94
    device_class: PROBLEM

  - platform: modbus_controller
    modbus_controller_id: fairland
    name: "Error FF"
    id: error_FF
    icon: "mdi:check-circle"
    register_type: discrete_input
    address: 95
    device_class: PROBLEM

1 Like

Hi, I have the same PCB as you. Did you manage to get the PCB with the blue connector?
Thank you

Thank you @rstcologne and @deepstahl77 for detailed explanation.
I have successfully upgraded a Pool-Systems IPS-90 (which do not had a Wi-Fi module before) using a ESP 8266 D1 mini. The only pitfall was, that the UART0 is occupied with the USB connector and I was not able to ‘share’ the TX,RX with the logger somehow. I decided to use the I2C connectors instead (using the UART software emulation):

uart:
  id: mod_bus
  rx_pin: GPIO4
  tx_pin: GPIO5
  #rx_pin: RX
  #tx_pin: TX
  baud_rate: 9600

Thomas - @deepstahl77 - could you please share you latest snipped of your lovelace implementation?

Regards
Sascha

We have a ‘madimack’ branded version of these - I’ve successfully got the sensor readings polling with a lilygo t-can485 (WIP, Will post to github once I have the holding registers pulled in (most likely as diagnostics). What I have discovered with this is that you need to make sure you add force_new_range: true at the specified read intervals (ie address 3,6,9,12 on the read registers) or you’ll get CRC errors

EDIT: My config’s available at GitHub - Elwell/pool-heatpump: ESPhome based control for a madimack branded pool heatpump

Hi all

I have a new Fairland X20-40CT, pne heck of a machine.

Wouldnt it be the easiest option to just buy a Waveshare RS485 to LAN Adapter and attach it to the heatpump?
Then setup MQTT…

Or is it not possible? Anyone tried?

Thanks

Dominik

Does anyone know if this works with the Evolution Proline from Poolmegastore? It also uses the Tuya app and is cheaper than the ips line. According to the docs it also has RS485 interfaces.