Vistapool Integration

Do I understand correctly that it is no longer possible to integrate the vistapool cloud in HA (using the vistapool wifi device)?
That means the only way to get vistapool data in HA is using modbus and direct communication (PI with usb adapter or HF2211 )?

I want to order the vistapool wifi device, but if I can’t use it for HA integration I don’t think I’m interested.

You are right. Latest API changes disabled cloud access. Modbus works great though, and you can use either an ethernet or wifi modbus module.

1 Like

Correct, buying a vistapool wifi device would be a waste of money since they disabled cloud API access.
Using MODBUS is the only way to get data from the sugar valley now.
I never got the HF2211 to work, but the PI + usb adapter solution is still working fine for me.

1 Like

There is a tasmota project that talks to it directly, exposes sensors and also switches for the various parts.
https://tasmota.github.io/docs/NeoPool/

Can anyone share their full configuration (modbus)? The one shared by @kajmaj is using the old modbus syntax I think.

I am planning to use a pi with RS485 dongle in combination with ser2net. This way my HA server can use modbus communication to the remote pi.

Current, working, modbus sensors reading data from Vistapool Hidrolife:

modbus:
- name: bazen
  type: tcp
  host: 192.168.1.3
  port: 8899
  delay: 5
  timeout: 5
  sensors:
    - name: MBF_MEASURE_PH #  hodnota pH
      slave: 1
      address: 258
      input_type: holding
      data_type: uint16
      scale: 0.01
      precision: 2
      scan_interval: 90
      unit_of_measurement: pH
#    - name: MBF_PAR_PH1 #  horni hranice pH
#      slave: 1
#      address: 1284
#      input_type: holding
#      data_type: uint16
#      scale: 0.01
#      precision: 1
#    - name: MBF_PAR_PH2  #   dolni hranice pH
#      slave: 1
#      address: 1285
#      input_type: holding
#      data_type: uint16
#      scale: 0.01
#      precision: 1
    - name: MBF_MEASURE_TEMPERATURE #  teplota vody
      slave: 1
      address: 262
      input_type: holding
      data_type: uint16
      unit_of_measurement: °C
      scale: 0.1
      precision: 1
      scan_interval: 90
    - name: MBF_PH_STATUS #  AL3, stav pH, peristaltika 
      slave: 1
      address: 263
      input_type: holding
      data_type: uint16
      scan_interval: 90
    - name: MBF_PAR_FILTRATION_STATE # stav filtrace (zap/vyp)
      slave: 1
      address: 1057
      input_type: holding
      data_type: uint16
      scan_interval: 90
    - name: MBF_PAR_FILT_MANUAL_STATE # MBF_PAR_FILT_MANUAL_STATE-stav filtrace zap/vyp
      slave: 1
      address: 1043
      input_type: holding
      data_type: uint16
      scan_interval: 90
    - name: MBF_PAR_FILT_MODE #  režim filtrace
      slave: 1
      address: 1041
      input_type: holding
      data_type: uint16
      scan_interval: 90
    - name: MBF_RELAY_STATE #  stav jednotlivych rele
      slave: 1
      address: 270
      input_type: holding
      data_type: uint16
    - name: MBF_PAR_HIDRO_COVER_ENABLE #  aktivace krytu 1/0
      slave: 1
      address: 1068
      input_type: holding
      data_type: uint16
      scan_interval: 90
    - name: MBF_PAR_HIDRO_COVER_REDUCTION # redukce hydrolyzy v % 
      slave: 1
      address: 1069
      input_type: holding
      data_type: uint16
      scan_interval: 90
    - name: MBF_HIDRO_STATUS # stav systemu hydrolyzy 
      slave: 1
      address: 269
      input_type: holding
      data_type: uint16 
      scan_interval: 90
1 Like

Hello,

Excuse my English, I’m Spanish.
It is not clear to me, for it to work in HA I have to buy vistapool? or do I have to use this option with tasmota (Sugar Valley NeoPool Controller - Tasmota)? The tasmota option is far from my knowledge.

Thanks for the help

Helo here another spanish with the same problem.

This part its in spanish, sorry.

Hola tio.

Yo voy a intentarlo con esa opción con Tasmota, si quieres podemos compartir experiencias.

Saludos.

Brilliant,

Well, I’ll try, I’m waiting for it to arrive and install the equipment, as soon as I have it, I’ll start.

At the moment I can start by buying the TTL UART to RS485 converter.

let’s go!

@Yoryino @keteflips This is your best bet. It’s been working flawlessly for me. Just hook up 4 wires to the Vistapool and you are ready to go.

Or get the WiFi version if don’t have LAN connection at the pool house.

1 Like

thank you very much for the help, HGY HF-5111B purchased, as soon as it arrives, I go to the next level. :wink:

@uspino

Just hook up 4 wires to the Vistapool and you are ready to go

4 wires to the Vistapool? :face_with_monocle:

1 Like

:flushed: You are right, 2 wires to the Vistapool, 2 to the power supply.

Hello, thank you all for sharing your experience. Personally i finally manage to get data via Modbus does still struggling to get the right address (and bit) for the cover and the led.
Does anyone know in what register this info is ?
Thanks for the help.

From their docs:

Register 0x010E
Name MBF_RELAY_STATE
Description This register contains the status of each configurable relays:
0 0x0001 Status relay 1 (1 on; 0 off) (normally assigned to ph)
1 0x0002 Status relay 2 (1 on; 0 off) (normally assigned to filtration)
2 0x0004 Status relay 3 (1 on; 0 off) (normally assigned to lightning)
3 0x0008 Status relay 4
4 0x0010 Status relay 5
5 0x0020 Status relay 6
6 0x0040 Status relay 7

Hope it helps

Thanks for your answer Uspino. but then how do i get to each status relay ?
I use to do the following for the other sensors such as address 262 for the temp, 
sensors:
     - name: Pool_relay_270
        slave: 1
        address: 270
        input_type: holding
        scan_interval: 300

should i do something like this ?
{{ states('sensor.pool_relay_270') | int | bitwise_and(2) }} to get the status of relay 3 ?

What do you want to control by “cover”?
!!! MBF_RELAY_STATE is not for relay control !!! if you try to write there, you can brick or, in the better case, soft brick the device.
Each bit in this register works as “binary sensor”
this is how I read it (working templates):
ph peristalic pump state {{ states('sensor.MBF_RELAY_STATE')|int(0) // 1 % 2 }}
filtration relay state {{ states('sensor.MBF_RELAY_STATE')|int(0) // 2 % 2 }}

For controlling LED (single color) write sequence to 4 registers is needed :wink:
First column is for ON, third for OFF sequence.

Dear Kajmaj, thanks for your answer and indeed, i forgot to say that my objective was first to read. Writing is for later (maybe :slight_smile: ).

If i understand correctly the answer to my question is 

lights are on if {{ states('sensor.MBF_RELAY_STATE') | int(0)  //  4 % 2 == 1 }}
if this is true, you make my day 

Your assumption regarding light is correct :slight_smile:

1 Like

Hello,

I have just installed the Sugar valey equipment and I am worried about making a mistake, I would appreciate it if you could confirm if the connection configuration is correct, I attach images, there are 5 pins in the connection module.