Vistapool Integration

Thanks Tobias! Well done finding the API endpoint for this, I think quite a few have been looking for that. I can confirm it is working with the Kripsol KLX system with the Vistapool Wifi module as well.
My biggest wish would be to have the filter on/off switch included as well, so I can automate the running hours and optimize for lowest electricity prices at Nordpool. Unfortunately my understanding of the google firestore API interface is limited so I was not able to explore enough to tell whether the filter entity is available in the interface.

Hi Guys,

Is there anybody who was able to change the pomp speed settings on the Sugar Valley Oxilife?
I have configured 3 different timeslots for the AUTO filtration mode, and on each timeslot I can change the pomp speeds between, M, S and H.
And also, is there anybody who was also able to switch between Manual (On/Off) and Auto modus?

This is what I already have in HA,


You can use these scripts for Auto / Manual Settings:

vistapool_manual_mode_on:
    sequence:
    - service: modbus.write_register
      data:
            hub: pool
            unit: 1
            address: 0x0411 # MBF_PAR_FILT_MODE (0 = Manual; 1 = Auto ; 3 = Smart)
            value: [0]
    - service: modbus.write_register
      data_template:
            hub: pool
            unit: 1
            address: 0x0413 # MBF_PAR_FILT_MANUAL_STATE (off = 0; on = 1)
            value: [1]
    - service: modbus.write_register
      data:
            hub: pool
            unit: 1
            address: 0x02F0 # MBF_SAVE_TO_EEPROM
            value: [1]
    - delay: 00:00:01
    - service: modbus.write_register
      data:
            hub: pool
            unit: 1
            address: 0x02F5    # MBF_EXEC
            value: [1]
 
              
vistapool_manual_mode_off:
    sequence:
        - service: modbus.write_register
          data:
            hub: pool
            unit: 1
            address: 0x0411 # MBF_PAR_FILT_MODE (0 = Manual; 1 = Auto ; 3 = Smart)
            value: [0]
        - service: modbus.write_register
          data_template:
            hub: pool
            unit: 1
            address: 0x0413 # MBF_PAR_FILT_MANUAL_STATE (off = 0; on = 1)
            value: [0]
        - service: modbus.write_register
          data:
            hub: pool
            unit: 1
            address: 0x02F0 # MBF_SAVE_TO_EEPROM
            value: [1]
        - delay: 00:00:01
        - service: modbus.write_register
          data:
            hub: pool
            unit: 1
            address: 0x02F5    # MBF_EXEC
            value: [1]
              
vistapool_auto_mode:
    sequence:
        - service: modbus.write_register
          data_template:
            hub: pool
            unit: 1
            address: 0x0413 # MBF_PAR_FILT_MANUAL_STATE (off = 0; on = 1)
            value: [0]
        - service: modbus.write_register
          data:
            hub: pool
            unit: 1
            address: 0x0411 # MBF_PAR_FILT_MODE (0 = Manual; 1 = Auto ; 3 = Smart)
            value: [1]
        - service: modbus.write_register
          data:
            hub: pool
            unit: 1
            address: 0x02F0 # MBF_SAVE_TO_EEPROM
            value: [1]
        - delay: 00:00:01
        - service: modbus.write_register
          data:
            hub: pool
            unit: 1
            address: 0x02F5    # MBF_EXEC
            value: [1]

I don’t have a variable speed pump, so I can’t help you there. Just look for the register and force a writing sequence like the ones above. Good luck.

Thanks Uspino,

Works fine here! :slight_smile:
Do you have also the code for changing the time slots?

Regards,

  Jurgen

I’m afraid you’ll have to dig into the registers pdf that is somewhere above in this thread. Forcing an eeprom writing of time slots might be a little tricky, but I’m sure it can be done.

Do you have any specific reason to use “Auto” mode? Isn´t it better to control pool by HA in '“Manual” mode?

Agreed :point_up_2: Plus, once you set manual mode you can turn on and off with the scheduler card and never have to go back to the unit.

1 Like

Indeed I could do that.
But than I need to find a way to control my pump speed, because at this moment I use the Auto mode together with the timeslots to control my pump speed. Because if I use my pool heater I set my pump to a specific speed that fits best for my heater.

But you are right, I could of course automate everything by controlling the Manual mode.

Ok then I will search for pump speed settings. :slight_smile:

@kajmaj , @jukkevp - please, can you help me - how can I turn on heating (relay 7/Aux4) from HA? It´s not clear for me… :frowning:
I understand, that I have to turn on filtration and heating together, of course. I can turn on filtration, based on your posts, but I dont know how to turn on heating.
Based on your post “how to control lighting”, I´m trying to find some solutin, but I’m at my wits end…

Will be this correct?:

heating_ON_OFF:
sequence:
- service: modbus.write_register
data:
hub: bazen
unit: 1
address: 1041 # Turn MODE to MANUAL
value: [0]
- service: modbus.write_register
data:
hub: bazen
unit: 1
address: 1043 # Turn filtration (pump) ON
value: [1]
- service: modbus.write_register
data:
hub: bazen
unit: 1
address: 1147 # assign timer function to Heating function
value: [4]
- service: modbus.write_register
data_template:
hub: bazen
unit: 1
address: 1136 # turn ON timer
value: [3] # [3] for ON [4] for OFF
- service: modbus.write_register
data:
hub: bazen
unit: 1
address: 752
value: [1]
- delay: 00:00:01
- service: modbus.write_register
data:
hub: bazen
unit: 1
address: 757
value: [1]

Be honest - I do not understand of your sequence :thinking:

Nonetheless, here is the magic for AUX 4:

I would suggest 2 separated scripts >> filtration and heating. And Vistapool CU in manual mode only.

1 Like

Hi, that was my second thought… :-). It was not clear for me, if I have to use the address of “Aux relay 4 - first interval” or use “lighting interval”, but assign it via address 1147, value 4 to the heating function…

Thank you for the magic, I will try it tomorrow.
Thanks.

@kajmaj - so, I tried it today, but I found a mistake, address 0x04E4 is not 1152, but 1252, so I hope that didnt break it…
But it´s not working with address 1252 too… :frowning:

Ups. Sorry, I did it again :sweat:. it is long time ago
In my case - Vistapool Hidrolife CU - is in the manual mode, filtration has own automation and heater as well because heater requires more conditions to run than filtration.

During initial testing I recognised that writes attempts in any other than manual mode caused soft brick of the CU. I use solely manual mode since that.

Hi @kajmaj, OK, but is it working in your Hidrolife or not? (turn on/off heating)
Of course, I used manual mode…

  • turn on manual mode
  • manually turn on filtration
  • write to eprom
  • delay 5s
  • assigned relay7 to the timer (Auxiliary relay 4), address 1252 to value 16384. But, why is not used value 4, because it means “Heating function of the machine”? (manual page 28)
  • enable “Always ON” of the timer, address 1241 to value 3
  • write to eprom

values of the addresses are correct, but no heating:
image

Because : 0x4000 CTIMER_FCT_AUXREL7 Auxiliary function assigned to relay 7 (0x4000 = 16384)

In my understanding, “heating function of the machine” is activating climate/heating mode function, not “heating/heater” as such. It is performed only once.
See *Note in the attached picture

What I did : Entered CU (from its own display/control) to service/installer menu and enabled Heating. Did not try to do it (activate heating function) remotely via modbus.

I realy do not understand what do you mean by this:

* turn on manual mode
* manually turn on filtration
* write to eprom
* delay 5s
* assigned relay7 to the timer (Auxiliary relay 4), address 1252 to value 16384. But, why is not used value 4, because it means “Heating function of the machine”? (manual page 28)
* enable “Always ON” of the timer, address 1241 to value 3
* write to eprom

Write to EPROM means steps 3-5 from the chart I´ve provided?

Am I understand correctly, if I turn on Clima function, it will be working? :slight_smile:
It means, do you have your Clima mode switched to ON?

your answer:
What I did : Entered CU (from its own display/control) to service/installer menu and enabled Heating. - heating is working for me without HA/modbus correctly, my filtration mode is “Heating”, whole season.

But I would like to turn ON/OFF heating based on information from FVE now…

Yes, it should. Yes I have.
At the moment my filtration is ON and heating OFF

With activated heating function you (CU) will gain control of assigned relay. Everytime you will perform steps in the first column it will turn ON and by the third column you will turn OFF relay. I have on the CU set up temperature to max, on the heater temperature to max and using HA climate to control heater (with some conditions where PV is amongst them) , HA automation + timers to control filtration.

OK, thank you for more information.
My status is:
image

but heating still not run… :frowning:

your answer: What I did : Entered CU (from its own display/control) to service/installer menu and enabled Heating. - is it other action, than change Filtration mode (register 1041)??? (sorry for stupid questions, but it´s not clear for me…). Is it a register 1044? It´s ON (value 1), so I expect that Heating function is enabled, or not?

I dont have a password to service menu, do you have it?

Let’s take it from another way:

In my case are following registers value 1044 = 0 (heating), 1045 = 7(assigned heating relay), 1042 = 2 (assigned filtration relay), 1041 = 0 (manual mode of filtration) (and I am not changing them since I started with it)

Password is ▲▼+ - ↵ (what you are going to do in the service menu is solely on your risk)

BTW
I checked my settings on the control panel and it seems that no need to go to the service menu. To assign AUX4 to Heating should be enough (that is why 1044 = 0)

From the service menu you can activate heating/climate i.e CU will control heater based on the water temperature. It might be better described in the user guide.

I was playing with it 4 years ago and it works without need to change sthg on the side of CU since that. So maybe I expressed sthg confusing meanwhile :thinking:

Hi, so, problem was register 1044, when I changed it to 0, it started heating :slight_smile:

Thank you for you help :+1: