SwimmingPool heatpump
Posted: Monday 11 July 2022 10:38
I wanted to share my work integration a swimmingpool heatpump into Domoticz. Eventhough others my have a different mark/model I think it could be helpfull to share my progress and information. I have a Fairland vertical heatpump (IXR36V) for my swimmingpool which can be controlled via an Fairland app. I think this model is available under different vendor names as well, and other Fairland heatpumps may share the same or similar controller.
I have contacting Fairland customer support I got the information that this heatpump has a Modbus connector on the controller print. Attached is a picture of the PCB highlighting this. It is marked with B A G 12. (B and A are the signal wires, G is the ground wire, and +12V is the 12V power). On my own PCB the layout was slightly different but B G +12 was readable). Normally only A and B are used. G and +12V can be used to supply power to your Modbus controller. Customer support gave me also an Excel document with all the Modbus registers/coils information.
This connector fits (4 pins JST XH2.54) https://nl.aliexpress.com/item/40001205 ... pt=glo2nld
In my pool box I installed a Protoss PW11-H Wifi Modbus controller which is connected to my home network. The wires A B from the PCB are connected to the 5 en 7 terminals. G and +12V are not used as the WIFI controller has it's own power already. The protoss has initially its own Wifi Access Point which you connect to. Then you can configure this Protoss (baudrate, wifi network, disabled Access point, password and which Protocol to use).
Then on my PI I used pymodbus to check the communication, that worked.
I tried the Modbus TCP plugin but I could not get it to work, probably because of my Domoticz version 2022.1. But I also did not like the setup that for every register/coil you want to read/write you have to create a new hardware device. So I started creating my own plugin in python. This creates automatically the devices I want to control and I have only 1 hardware device in Domoticz. I never done creating a plugin but it was not very complicated.
This plugin uses the pymodbus commands to read/write information from the heatpump. I can also set eg the running mode (smart/silent/turbo), temperature. From the documentation there is also a SuperSilent mode which I could not set from the standard App but via Modbus this works. In the mode is runs a max 20%. I can now see the inlet/outlet water temp, ambiant temp and the running speed. For the temperature I had to do some maths to get the correct temp. eg Modbus returns 112 which is 26C.
After this I continued to get the error status of the heatpump. Eg if the circulation pomp stops the heatpump stop as well because of the missing waterflow. Via Modbus I read these errors as well and domoticz will send out a notification with this error message. There is other device status available, which I do not exactly know where it is used file. At the moment I only log changes to a file.
In the next posts you find some screenshots
I have contacting Fairland customer support I got the information that this heatpump has a Modbus connector on the controller print. Attached is a picture of the PCB highlighting this. It is marked with B A G 12. (B and A are the signal wires, G is the ground wire, and +12V is the 12V power). On my own PCB the layout was slightly different but B G +12 was readable). Normally only A and B are used. G and +12V can be used to supply power to your Modbus controller. Customer support gave me also an Excel document with all the Modbus registers/coils information.
This connector fits (4 pins JST XH2.54) https://nl.aliexpress.com/item/40001205 ... pt=glo2nld
In my pool box I installed a Protoss PW11-H Wifi Modbus controller which is connected to my home network. The wires A B from the PCB are connected to the 5 en 7 terminals. G and +12V are not used as the WIFI controller has it's own power already. The protoss has initially its own Wifi Access Point which you connect to. Then you can configure this Protoss (baudrate, wifi network, disabled Access point, password and which Protocol to use).
Then on my PI I used pymodbus to check the communication, that worked.
I tried the Modbus TCP plugin but I could not get it to work, probably because of my Domoticz version 2022.1. But I also did not like the setup that for every register/coil you want to read/write you have to create a new hardware device. So I started creating my own plugin in python. This creates automatically the devices I want to control and I have only 1 hardware device in Domoticz. I never done creating a plugin but it was not very complicated.
This plugin uses the pymodbus commands to read/write information from the heatpump. I can also set eg the running mode (smart/silent/turbo), temperature. From the documentation there is also a SuperSilent mode which I could not set from the standard App but via Modbus this works. In the mode is runs a max 20%. I can now see the inlet/outlet water temp, ambiant temp and the running speed. For the temperature I had to do some maths to get the correct temp. eg Modbus returns 112 which is 26C.
After this I continued to get the error status of the heatpump. Eg if the circulation pomp stops the heatpump stop as well because of the missing waterflow. Via Modbus I read these errors as well and domoticz will send out a notification with this error message. There is other device status available, which I do not exactly know where it is used file. At the moment I only log changes to a file.
In the next posts you find some screenshots