Daemon to control Jandy Aqua Link RS pool equipment from any home automation hub (Alexa, Homekit, Home Assistant, smartthings, domoticz etc) or web browser.
Switch branches/tags
Nothing to show
Clone or download
shaun feakes shaun feakes
shaun feakes and shaun feakes 1.2.3
Latest commit 4b068ca Sep 23, 2018
Failed to load latest commit information.
extras . Sep 21, 2018
release 1.2.3 Sep 23, 2018
web 1.2.3 Sep 23, 2018
LICENSE.md first commit Dec 30, 2017
Makefile PDA Beta Sep 2, 2018
README.md 1.2.3 Sep 23, 2018
aq_mqtt.h Fix setpoint on pool only Sep 20, 2018
aq_programmer.c setpoint fix Sep 23, 2018
aq_programmer.h Release update Sep 12, 2018
aq_serial.c PDA Beta Sep 2, 2018
aq_serial.h 1.2.3 Sep 23, 2018
aqualink.h 1.2.3 Sep 23, 2018
aqualinkd.c 1.2.3 Sep 23, 2018
config.c 1.2.3 Sep 23, 2018
config.h 1.2.3 Sep 23, 2018
domoticz.h first commit Dec 30, 2017
init_buttons.c PDA Beta Sep 2, 2018
init_buttons.h first commit Dec 30, 2017
json_messages.c Release update Sep 12, 2018
json_messages.h Release update Sep 12, 2018
mongoose.c first commit Dec 30, 2017
mongoose.h first commit Dec 30, 2017
net_services.c 1.2.3 Sep 23, 2018
net_services.h 1.2.3 Sep 23, 2018
pda_menu.c Support Last Will Message Sep 7, 2018
pda_menu.h PDA update Sep 4, 2018
pda_test.c PDA Beta Sep 2, 2018
serial_logger.c . Sep 3, 2018
utils.c New Release Jul 29, 2018
utils.h New Release Jul 29, 2018
version.h 1.2.3 Sep 23, 2018



linux daemon to control Aqualink RS pool controllers. Provides web UI, MQTT client & HTTP API endpoints. So you can control your pool equiptment from any phone/tablet or computer, and should work with just about Home control systems, including Apple HomeKit, Samsung, Alexa, Google, etc home hubs.

It does not, and will never provide any layer of security. NEVER directly expose the device running this software to the outside world, only indirectly through the use of Home Automation hub's or other securty measures, e.g. VPNs.


If you like this project, you can buy me a cup of coffee :)

Please see Wiki for install instructions


Information on Control panel versions and upgrading the chips.

Started to document what I know about the Jandy RS485 protocol.

Builtin WEB Interface(s).

Default web interfaceSimple web interface
Both Interfaces
  • If you load the web page in a mobile device browser, then save to desktop an app will be created for you.
  • Order and options shown are configurable
Default Interfaces
  • The layout & functionality are a from Appple HomeKit interface, only this works in any browser or mobile device.
  • Customizable tile icons & background image. (can hide any tile)
  • Thermostst, SWG & Light tiles have more options (like setting heater setpoint, light mode etc) that can be accessed with a long press
  • Support live background imags (ie poll camera for still image every X seconds)

Old web UI, (Still in release if you prefer it)


Designed to mimic AqualinkRS6 All Button keypad, and just like the keypad you can use it to completley configure the master control panel

In Apple Home app.

  • (Salt Water Generator is configured as Thermostat as it's the closest homekit accessory type, so °=% and Cooling=Generating)
  • Full support for homekit scenes, so can make a "Spa scene" to turn spa on, set spa heater particular temperature, turn spa blower on, etc etc)

In Home Assistant

All Web interfaces.

Update in Release 1.2.3

  • Fix for setpoints on "Pool Only" configurations.

Update in Release 1.2.2

  • Support for Spa OR Pool OLNY mode with setpoints, (previous setpoints expected Spa & Pool mode)
  • Added support for MQTT Last Will Message
  • Fix spelling errors will effect your conficuration, and the install.sh script will not overwrite.
    • Please compare /var/www/aqualinkd/config.js to the new one, you will need to manualy edit or overide
    • MQTT spelling for enabled is now accurate, so anything using the /enabled message will nee to be changed
    • homekit will need to be changed. Please see the new homekit2mqtt.json or modify your existing one.

Updates in Release 1.2

  • PDA support in BETA. (Please see WiKi for details)
  • Fixed bug in posting Heater Emables topics to MQTT. (order was reversed)
  • Serial read change. (detect escaped DTX in packet, 1 in 10000 chance or happening)

Updates in Release 1.1

  • Changed the way AqualinkD reads USB, fixes the checksum & serial read too small errors that happened on some RS485 networks.
  • Figex bug in SWG would read "high voltage" and not "check cell"

Updates in release 1.0e

  • Web UI out of Beta
  • MQTT fix setpoints
  • Simulator is now more stable.
  • updates to serial logger
  • UI updates
  • bug fix in MQTT_flash (still not prefect fix)

Updates in Release 1.0c

  • New Simple interface.
  • Start of a RS8 Simulator :-
    • So you can program the AqualinkRS form a web interface and not control panel.
    • Please make sure all other browsers & tabs are not using AqualinkD. it doesn't support multiple devices when in simulator mode.
  • Fixed a few bugs.
  • -- Release 1.0b --
  • NEW WEB UI !!!!!!!!!!!!! (in beta)
  • Flash buttons on/off in homekit for enabeling / disabeling / cooldown period as they do on control panel
  • Full SWG support (setting %, not just reporting current state). Also reports Salt Cell status such as (no flow, low salt, high curent, clean cell, low voltage, water temp low, check PCB)
  • Update to thermostats, colors are now correct in homekit, green=enabeled, orange=heating, blue=cooling (SWG only)
  • Light show program mode should now support most vendors lights.
  • config changes for (spa temp as pool temp / light program mode options / enable homekit button flash)
  • updated to serial_logger.
  • freeze protect, heater temperature & SWG set-points have been added to support for standard HTTP requests (MQTT & WS always had support)

Please see Wiki for install instructions


Aqualink Versions tested

This was designed for Jandy Aqualink RS, so should work with AqualinkRS and iAqualink Combo controll panels. At the moment it will not work with Aqualink PDA / AquaPalm and NON Combo iAqualink. Below are varified versions (But should work with any AqualinkRS) :-

Version Notes
Jandy Aqualink 6524 REV GG Everything working
Jandy AquaLinkRS 8157 REV JJ Everything working
Jandy AquaLinkRS 8157 REV MMM Everything working
Jandy AquaLinkRS 8159 REV MMM Everything working
Jandy AquaLinkRS B0029221 REV T Everything working
Jandy AquaLinkRS B0029223 REV T.2 Everything working
Jandy AquaLinkRS B0029235 REV T.1 Everything working
Jandy iAqualink E0260801 REV R Everything working
AquaLink PDA / AquaPalm Beta available, Limited functionality, please see WiKi.

If you have tested a version not listed here, please let me know by opening an issue


Non Commercial Project

All non commercial projects can be run using our open source code under GPLv2 licensing. As long as your project remains in this category there is no charge. See License.md for more details.


If you like this project, you can buy me a cup of coffee :)