Isaver pool pump speed control MODBUS => Waveshare USB to RS485

I put it on Github:

Enjoy :smiley:

1 Like

Absolute LEGEND.

Thank you

Hi, I have just installed this variable speed drive and all is working well. Thank you for your work on this. I have seen that the unit displays the power consumption in watts, is it possible to send this information back to HA?

No, this is not possible. I track the power consumption with an PZEM-004T.

OK Thanks I will just put a power meter on the feed to my pool tech space.

I am a noob +++.
I am only starting with HA on a raspberry pi.
I want to be able to control this frequency inverter through HA, and also set some automations later on.
I want to connect the saver with a usb to rs485 connector. That worked. HA ‘sees’ it on usb0.
If I’m right , the code provided here is written for using an esp (so wirelessly?) instead of a usb-connection. Is there a way to get somewhere this code for a direct usb connection ?

For starters, this is my configuration (chatgpt helped)
modbus:

  • name: “isaver”
    type: serial
    method: rtu
    port: /dev/ttyUSB0
    baudrate: 9600
    stopbits: 1
    bytesize: 8
    parity: N
    delay: 2
    timeout: 1

    sensors:

    • name: “Pump Power Consumption”
      slave: 1
      address: 0x1004
      input_type: holding
      unit_of_measurement: “W”
      data_type: uint16
      unique_id: “pump_power_consumption_sensor”

    • name: “Pump Frequency”
      slave: 1
      address: 0x1001
      input_type: holding
      unit_of_measurement: “Hz”
      data_type: uint16
      unique_id: “pump_frequency_sensor”

    switches:

    • name: “Pump On/Off”
      slave: 1
      write_type: holding
      address: 0x1000
      command_on: 1
      command_off: 0
      unique_id: “switch.pump_on_off_2”

(But it’s not working yet)

if someone wan’t to retrofit the external control (modbus,digital,analog) for the newer iSaverX models, like:

you can find this and also a more advanced esphome (8266) configuration here:

bye

I have Rapid X20 inverter. I’ve implemented the interface as described, but it doesn’t work as expected. The state of Modbus is “Online”, but the value of RPM is most of the time “0”, sometimes it shows different values like 512, 4096, 16384, 32768. I’ll be grateful for some advise how to improve it.
Here is my config:

esphome:
  name: isaver-my-pool
  friendly_name: iSaver My Pool
  on_boot:
    priority: -100
    then:
      - lambda: |-
          if (id(pump_rpm).state > 0) {
            id(pump_rpm).make_call().set_value(id(pump_rpm).state).perform();
          }

esp32:
  board: esp32dev
  framework:
    type: arduino

logger:

# Enable Home Assistant API
api:
  encryption:
    key: "XXXXXXXXXXXXX"

ota:
  - platform: esphome
    password: "XXXXXXXXXXXXX"

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

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "Isaver-Nasz-Basen"
    password: "XXXXXXXXXXXXX"

web_server:
  port: 80

captive_portal:

uart:
  tx_pin: GPIO17
  rx_pin: GPIO16
  baud_rate: 1200
  stop_bits: 1
  data_bits: 8
  parity: NONE
  id: modbus_uart
  debug:
    after:
      delimiter: "\n"

output:
  - platform: gpio
    pin: GPIO05
    id: modbus_write_enable

text_sensor:
  - platform: template
    name: "Modbus Status"
    id: modbus_status

number:
  - platform: template
    name: "Pool Pump RPM"
    id: pump_rpm
    min_value: 0
    max_value: 2900
    step: 1
    set_action:
      then:
        - lambda: |-
            id(modbus_write_enable).turn_on();
            uint16_t rpm = (uint16_t)x;
            if (rpm < 1200) {
              rpm = 1;
            }
            uint8_t rpm0 = (rpm >> 8) & 0xFF;
            uint8_t rpm1 = rpm & 0xFF;
            uint8_t data[6] = {0xAA, 0xD0, 0x0B, 0xB9, rpm0, rpm1};
            uint16_t crc = 0xFFFF;
            for (int i = 0; i < 6; i++) {
              crc ^= data[i];
              for (int j = 0; j < 8; j++) {
                if (crc & 0x0001) {
                  crc >>= 1;
                  crc ^= 0xA001;
                } else {
                  crc >>= 1;
                }
              }
            }
            uint8_t crc0 = crc & 0xFF;
            uint8_t crc1 = (crc >> 8) & 0xFF;
            uint8_t packet[8] = {0xAA, 0xD0, 0x0B, 0xB9, rpm0, rpm1, crc0, crc1};
            auto uart = id(modbus_uart);
            uart->write_array(packet, 8);
            uart->flush();
            id(modbus_write_enable).turn_off();

sensor:
  - platform: template
    name: "Current Pool Pump RPM"
    id: pump_rpm_state
    unit_of_measurement: "RPM"
    accuracy_decimals: 0
    update_interval: never
    force_update: false

interval:
  - interval: 2s
    then:
      - lambda: |-
          id(modbus_write_enable).turn_on();
          uint8_t data[6] = {0xAA, 0xC3, 0x07, 0xD1, 0x00, 0x00};
          uint16_t crc = 0xFFFF;
          for (int i = 0; i < 6; i++) {
            crc ^= data[i];
            for (int j = 0; j < 8; j++) {
              if (crc & 0x0001) {
                crc >>= 1;
                crc ^= 0xA001;
              } else {
                crc >>= 1;
              }
            }
          }
          uint8_t crc0 = crc & 0xFF;
          uint8_t crc1 = (crc >> 8) & 0xFF;
          uint8_t packet[8] = {0xAA, 0xC3, 0x07, 0xD1, 0x00, 0x00, crc0, crc1};
          auto uart = id(modbus_uart);
          while(uart->available() > 0) {
            uint8_t t;
            uart->read_array(&t, 1);
          }
          uart->write_array(packet, 8);
          uart->flush();
          id(modbus_write_enable).turn_off();
          uint32_t start_time = millis();
          while (uart->available() < 8 && (millis() - start_time) < 500) {
            delay(1);
          }
          if (uart->available() >= 7) {
            uint8_t response[7];
            uart->read_array(response, 7);
            id(modbus_status).publish_state("Online");
            float value = (float)((uint16_t)response[5] << 8 | (uint16_t)response[6]);
            if (value != id(pump_rpm_state).state) {
              id(pump_rpm_state).publish_state(value);
              id(pump_rpm).publish_state(value);
            }
          } else {
            id(modbus_status).publish_state("No Response");
          }

switch:
  - platform: template
    name: "Pool Pump Power"
    id: pump_power
    optimistic: true
    turn_on_action:
      - lambda: |-
          id(pump_rpm).make_call().set_value(2100).perform();
    turn_off_action:
      - lambda: |-
          id(pump_rpm).make_call().set_value(0).perform();

button:
  - platform: template
    name: "Pool Pump ECO"
    on_press:
      - lambda: |-
          id(pump_rpm).make_call().set_value(1350).perform();

  - platform: template
    name: "Pool Pump NORMAL"
    on_press:
      - lambda: |-
          id(pump_rpm).make_call().set_value(1700).perform();

  - platform: template
    name: "Pool Pump MAX"
    on_press:
      - lambda: |-
          id(pump_rpm).make_call().set_value(2900).perform();

and logs:

[22:18:04][D][uart_debug:114]: <<< 00:00:00:00:00:00:40:00:00:00:00:40:00:00:00:00:40:00:00:02:00:00:00:00:02:00:00:00:00:02:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:10:00:00:00:00:00:10:00:00:00:00:00:00:02:00:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:40:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:10:00:00:00
[22:18:04][D][uart_debug:114]: <<< 00:00:00:00:00:00:00:00:00:00:00:00:00:00:10:00:00:00:00:10:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:40:00:00
[22:18:04][D][uart_debug:114]: >>> AA:C3:07:D1:00:00:0D:4D
[22:18:04][D][text_sensor:069]: 'Modbus Status': Sending state 'Online'
[22:18:04][D][uart_debug:114]: <<< 00:00:00:00:00:00:00
[22:18:06][D][uart_debug:114]: <<< 00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:10:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:04:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00
[22:18:06][D][uart_debug:114]: <<< 02:10:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:40:00:00:00:00:00:00:00:02:00:00:00:00:02:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:FF
[22:18:06][D][uart_debug:114]: >>> AA:C3:07:D1:00:00:0D:4D
[22:18:06][D][text_sensor:069]: 'Modbus Status': Sending state 'Online'
[22:18:06][D][sensor:104]: 'Current Pool Pump RPM': Sending state 512.00000 RPM with 0 decimals of accuracy
[22:18:06][D][number:012]: 'Pool Pump RPM': Sending state 512.000000
[22:18:06][D][uart_debug:114]: <<< 00:00:00:00:00:02:00
[22:18:08][D][uart_debug:114]: <<< 00:00:00:02:00:00:00:00:00:10:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:04:00:00:00:00:00:00:00:00:00:40:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:20:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:04:00
[22:18:08][D][uart_debug:114]: <<< 00:00:00:40:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:20:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:C0
[22:18:08][D][uart_debug:114]: >>> AA:C3:07:D1:00:00:0D:4D
[22:18:08][D][text_sensor:069]: 'Modbus Status': Sending state 'Online'
[22:18:08][D][sensor:104]: 'Current Pool Pump RPM': Sending state 0.00000 RPM with 0 decimals of accuracy
[22:18:08][D][number:012]: 'Pool Pump RPM': Sending state 0.000000
[22:18:08][D][uart_debug:114]: <<< 00:00:00:00:00:00:00
[22:18:10][D][uart_debug:114]: <<< 00:00:00:10:00:00:00:00:00:00:00:00:00:10:00:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02:10:00:00:00:00:10:20:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:40:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:02:00
[22:18:10][D][uart_debug:114]: <<< 00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00:10:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:E0
[22:18:10][D][uart_debug:114]: >>> AA:C3:07:D1:00:00:0D:4D
[22:18:10][D][text_sensor:069]: 'Modbus Status': Sending state 'Online'
[22:18:10][D][uart_debug:114]: <<< 00:00:00:80:00:00:00
[22:18:12][D][uart_debug:114]: <<< 00:00:00:00:00:00:00:00:00:02:00:00:00:00:02:00:00:00:00:02:00:00:00:00:02:00:00:00:00:10:00:00:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:20:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00
[22:18:12][D][uart_debug:114]: <<< 00:00:10:00:00:00:00:10:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:40:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:10:00:02:00:FC
[22:18:12][D][uart_debug:114]: >>> AA:C3:07:D1:00:00:0D:4D
[22:18:12][D][text_sensor:069]: 'Modbus Status': Sending state 'Online'
[22:18:12][D][uart_debug:114]: <<< 00:00:00:00:00:00:00
[22:18:14][D][uart_debug:114]: <<< 10:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:40:00:00:00:00:40:00:00:02:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:00:10:00:00:00:00:00:00:00:00:02:00:00:10:02:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00
[22:18:14][D][uart_debug:114]: <<< 00:00:00:00:00:00:00:00:00:00:00:00:00:00:40:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:02:00:20:00:00:00:00:20:00:00:00:00:00:00:00:02:00:00:00:00:02:00:00:00:00:00:00:00:00:00:02:00:00:00:00:FE
[22:18:14][D][uart_debug:114]: >>> AA:C3:07:D1:00:00:0D:4D
[22:18:14][D][text_sensor:069]: 'Modbus Status': Sending state 'Online'
[22:18:14][D][uart_debug:114]: <<< 00:00:00:00:00:00:00
[22:18:16][D][uart_debug:114]: <<< 00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:40:00:00:00:01:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00:10:00:00:00:00:00:00:00:00:02:00:00:00:00:02:00:00:00:00:02:00:00:00:00:02:10:00:00:00:00:10:00:00:00:02:00:00:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:40:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:02:00:00:00:00:02
[22:18:16][D][uart_debug:114]: <<< 00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00
[22:18:16][D][uart_debug:114]: >>> AA:C3:07:D1:00:00:0D:4D
[22:18:16][D][text_sensor:069]: 'Modbus Status': Sending state 'Online'
[22:18:16][D][uart_debug:114]: <<< 00:00:00:00:00:00:00
[22:18:18][D][uart_debug:114]: <<< 00:00:02:00:00:00:00:00:00:00:00:00:02:00:00:00:00:02:00:00:00:00:00:00:00:00:00:02:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:10:00:00:00:00:00:00:00:01:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:08:00:00:00:00:20:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00
[22:18:18][D][uart_debug:114]: <<< 00:00:10:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:40:00:00:00:00:40:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00:E0
[22:18:18][D][uart_debug:114]: >>> AA:C3:07:D1:00:00:0D:4D
[22:18:18][D][text_sensor:069]: 'Modbus Status': Sending state 'Online'
[22:18:18][D][uart_debug:114]: <<< 00:00:00:01:00:00:00
[22:18:20][D][uart_debug:114]: <<< 00:00:02:00:00:00:00:00:00:00:00:00:02:00:00:00:00:02:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:08:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:10:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:10:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00
[22:18:20][D][uart_debug:114]: <<< 00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:00:00:20:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:02:00:00:00:F0
[22:18:20][D][uart_debug:114]: >>> AA:C3:07:D1:00:00:0D:4D
[22:18:20][D][text_sensor:069]: 'Modbus Status': Sending state 'Online'
[22:18:20][D][uart_debug:114]: <<< 00:00:00:00:00:00:00
[22:18:22][D][uart_debug:114]: <<< 00:00:00:00:00:00:00:01:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:10:00:00:00:00:10:00:02:00:00:10:00:00:00:00:00:00:00:00:00:10:00:00:00:00:00:00:00:00:00:00:00:00:10:00:00:00:00:10:00:00:00:00:00:00:00:00:00:00:00:10:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:40:00:00:00:00:40:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00
[22:18:22][D][uart_debug:114]: <<< 02:00:00:00:00:00:00:20:00:00:00:10:00:00:00:00:00:20:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00:00:00:02:00:00:00:00:02:00:00:00:00:00:10:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:FE
[22:18:22][D][uart_debug:114]: >>> AA:C3:07:D1:00:00:0D:4D
[22:18:22][D][text_sensor:069]: 'Modbus Status': Sending state 'Online'
[22:18:22][D][uart_debug:114]: <<< 00:00:00:00:00:00:00
[22:18:24][D][uart_debug:114]: <<< 00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:20:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:02:10:00:00:00:00:10:00:00:00:02:00:00:00:00:02:00:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:40:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:02:00:00:00:00:02:00:00:00:00:00:10:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00
[22:18:24][D][uart_debug:114]: <<< 00:00:00:00:00:00:00:02:00:00:00:00:00:10:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:02
[22:18:24][D][uart_debug:114]: >>> AA:C3:07:D1:00:00:0D:4D
[22:18:24][D][text_sensor:069]: 'Modbus Status': Sending state 'Online'
[22:18:24][D][uart_debug:114]: <<< 00:00:02:00:00:00:00
[22:18:26][D][uart_debug:114]: <<< 02:00:00:00:00:02:00:00:00:00:02:00:00:00:00:00:10:00:00:00:00:10:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:40:00:00:00:00:40:00:00:00:01:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:20:00:00:00:00:00:00:00:02:10:00:00:00:00:00:20:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00:10:00:00:00:02:00:00:00:00:00:10:00:00:02:02:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00
[22:18:26][D][uart_debug:114]: <<< 00:00:00:00:00:04:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:20:00:00:00:10:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00:00
[22:18:26][D][uart_debug:114]: >>> AA:C3:07:D1:00:00:0D:4D
[22:18:26][D][text_sensor:069]: 'Modbus Status': Sending state 'Online'
[22:18:26][D][uart_debug:114]: <<< 00:00:00:00:00:00:00
[22:18:28][D][uart_debug:114]: <<< 00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:00:00:40:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:10:20:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:02:00:00:00:00:00:10:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:40:00:00:00:00:00:00:00:00:00:08:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00
[22:18:28][D][uart_debug:114]: <<< 00:00:00:10:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:10:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00
[22:18:28][D][uart_debug:114]: >>> AA:C3:07:D1:00:00:0D:4D
[22:18:28][D][text_sensor:069]: 'Modbus Status': Sending state 'Online'
[22:18:28][D][sensor:104]: 'Current Pool Pump RPM': Sending state 512.00000 RPM with 0 decimals of accuracy
[22:18:28][D][number:012]: 'Pool Pump RPM': Sending state 512.000000
[22:18:28][D][uart_debug:114]: <<< 00:00:00:00:00:02:00
[22:18:30][D][uart_debug:114]: <<< 00:00:00:02:00:00:00:00:02:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:02:00:00:00:00:02:00:00:00:00:00:00:00:00:00:02:00:00:00:00:00:10:00:00:00:02:10:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:40:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:02:00:00
[22:18:30][D][uart_debug:114]: <<< 00:00:02:00:00:00:00:00:00:00:00:00:02:00:00:00:00:02:10:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:40:00:00:00:00:00:00:00:00:00:40:00:00:02:00:00:00:00:00:00:00:00:00:00:FF
[22:18:30][D][uart_debug:114]: >>> AA:C3:07:D1:00:00:0D:4D
[22:18:30][D][text_sensor:069]: 'Modbus Status': Sending state 'Online'
[22:18:30][D][sensor:104]: 'Current Pool Pump RPM': Sending state 0.00000 RPM with 0 decimals of accuracy
[22:18:30][D][number:012]: 'Pool Pump RPM': Sending state 0.000000
[22:18:30][D][uart_debug:114]: <<< 00:00:02:00:00:00:00
[22:18:32][D][uart_debug:114]: <<< 00:00:00:00:00:10:00:00:00:00:10:00:00:00:00:00:80:00:00:01:00:00:00:00:01:00:00:00:00:00:02:00:00:00:00:00:10:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00:00:00:02:00:00:00:00:00:00:20:00:00:00:10:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:10:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00
[22:18:32][D][uart_debug:114]: <<< 00:00:00:02:00:00:00:00:00:00:40:00:00:00:00:00:00:00:00:00:40:00:00:02:00:00:00:00:02:00:00:00:00:02:00:00:00:00:00:00:00:00:00:02:00:20:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00:10:00:80
[22:18:32][D][uart_debug:114]: >>> AA:C3:07:D1:00:00:0D:4D
[22:18:32][D][text_sensor:069]: 'Modbus Status': Sending state 'Online'
[22:18:32][D][uart_debug:114]: <<< 00:00:00:00:00:00:00
[22:18:34][D][uart_debug:114]: <<< 00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:04:00:00:02:00:00:00:00:00:00:00:00:00:00:10:04:00:00:00:10:00:00:00:02:00:00:00:00:00:00:02:00:00:00:00:00:10:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:02:00:00:00:00:02:00:00:00:00:02:10:00:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:40:00:00:00:00:40:00:00:00:00:40:00:00:00:00:00:00:00:02:00:00:00:00
[22:18:34][D][uart_debug:114]: <<< 00:00:00:00:00:02:00:00:00:00:00:00:00:00:00:02:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:00:10:00:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:E0
[22:18:34][D][uart_debug:114]: >>> AA:C3:07:D1:00:00:0D:4D
[22:18:34][D][text_sensor:069]: 'Modbus Status': Sending state 'Online'
[22:18:34][D][uart_debug:114]: <<< 00:00:00:02:00:00:00
[22:18:36][D][uart_debug:114]: <<< 00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:10:00:00:00:00:10:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:02:00:00:00:04:00:00:00:00:04:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:01:00:00:00:00:01:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:02:00:20:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:10
[22:18:36][D][uart_debug:114]: <<< 00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:40:00:00:00:00:40:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:02:00:00:00:00:02:00:00:00:00:F0
[22:18:36][D][uart_debug:114]: >>> AA:C3:07:D1:00:00:0D:4D
[22:18:36][D][text_sensor:069]: 'Modbus Status': Sending state 'Online'
[22:18:36][D][uart_debug:114]: <<< 00:00:00:00:00:00:00
[22:18:38][D][uart_debug:114]: <<< 00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:00:10:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00
[22:18:38][D][uart_debug:114]: <<< 00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:02:00:00:00:00:02:10:00:00:00:00:10:00:00:00:00:00:00:FE
[22:18:38][D][uart_debug:114]: >>> AA:C3:07:D1:00:00:0D:4D
[22:18:38][D][text_sensor:069]: 'Modbus Status': Sending state 'Online'
[22:18:38][D][uart_debug:114]: <<< 00:00:00:00:00:00:00
[22:18:40][D][uart_debug:114]: <<<