Pool Control HTTP Command Reference

From Autelis

Jump to: navigation, search

Contents

HTTP Commands

Pool Control uses simple HTTP GET commands to pass status information and commands back and forth to clients. You can use these commands to integrate Pool Control into other network-enabled controllers and software packages. Access to these resources requires you to pass the username 'admin' and your password via HTTP Basic Authentication in the HTTP header for all requests.

Status Information

Status information can be retrieved from 'http://poolcontrol/status.xml' or 'http://your.ip.address/status.xml'.


This XML document contains all the status information available from Pool Control and can be easily parsed for individual values.


The document root node is <response>. It has three child nodes which contain the status values. They are: <system>, <equipment>, and <temp>. They are enumerated below along with their child nodes and possible values. NOTE: If a child node has a null value then it is not available because it is not supported by the specific Aqualink® model or configuration.

<response>

<system>
<runstate>
Definition: The current state of the Pool Control device
Possible values: 1-12
1 = Not Connected
2-7 = Startup Initialization Sequence
8 = Connected and Ready
9-12 = Connected and Busy Executing Command
</runstate>
<model>
Definition: The model number of the Aqualink® controller
Possible values: 4 digit
</model>
<dip>
Definition: The current state of the Aqualink® controller's dip switches
Possible values: 8 binary digits representing S1-S8 from left to right
0 = Off
1 = On
</dip>
<opmode>
Definition: The current state of the Aqualink® controller
Possible values: 0-2
0 = Auto
1 = Service
2 = Timeout
</opmode>
<vbat>
Definition: The voltage of the Aqualink® controller's battery
Possible values: positive integer
Note: Multiply by constant 0.01464 to get a true voltage value
</vbat>
<lowbat>
Definition: The current state of the Aqualink® controller's battery
Possible values: 0-1
0 = Normal
1 = Low
</lowbat>
<version>
Definition: The firmware version of the Pool Control device
Possible values: string
</version>
<time>
Definition: The time as kept by the Pool Control device
Possible values: Unix timestamp
</time>
</system>
<equipment>
<pump>
Definition: The current state of the filter pump
Possible values: 0-1
0 = Off
1 = On
</pump>
<pumplo>
Definition: The current state of the filter pump low speed
Possible values: 0-1
0 = Off
1 = On
</pumplo>
<spa>
Definition: The current state of the spa
Possible values: 0-1
0 = Off
1 = On
</spa>
<waterfall>
Definition: The current state of the waterfall
Possible values: 0-1
0 = Off
1 = On
</waterfall>
<cleaner>
Definition: The current state of the cleaner
Possible values: 0-1
0 = Off
1 = On
</cleaner>
<poolht2>
Definition: The current state of the pool heat setpoint 2
Possible values: 0-2
0 = Off
1 = Enabled
2 = On
</poolht2>
<poolht>
Definition: The current state of the pool heat
Possible values: 0-2
0 = Off
1 = Enabled
2 = On
</poolht>
<spaht>
Definition: The current state of the spa heat
Possible values: 0-2
0 = Off
1 = Enabled
2 = On
</spaht>
<solarht>
Definition: The current state of the solar heat
Possible values: 0-2
0 = Off
1 = Enabled
2 = On
</solarht>
<aux1>
Definition: The current state of aux1
Possible values: 6 possible integer values
0 = Off
1 = On
25 = 25% (Only if Aux is Dimmer)
50 = 50% (Only if Aux is Dimmer)
75 = 75% (Only if Aux is Dimmer)
100 = 100% (Only if Aux is Dimmer)
</aux1>
...
<aux15>
Definition: The current state of aux15
Possible values: 6 possible integer values
0 = Off
1 = On
25 = 25% (Only if Aux is Dimmer)
50 = 50% (Only if Aux is Dimmer)
75 = 75% (Only if Aux is Dimmer)
100 = 100% (Only if Aux is Dimmer)
</aux15>
</equipment>
<temp>
<poolsp>
Definition: The current pool setpoint
Possible values: positive integer
</poolsp>
<poolsp2>
Definition: The current pool setpoint 2
Possible values: positive integer
</poolsp2>
<spasp>
Definition: The current spa setpoint
Possible values: positive integer
</spasp>
<pooltemp>
Definition: The current pool temperature
Possible values: positive integer
Note: Only accurate when filter pump is running
</pooltemp>
<spatemp>
Definition: The current spa temperature
Possible values: positive integer
Note: Only accurate when spa is running
</spatemp>
<airtemp>
Definition: The current air temperature
Possible values: positive integer
</airtemp>
<solartemp>
Definition: The current solar temperature
Possible values: positive integer
Note: Only accurate when filter pump is running
</solartemp>
<tempunits>
Definition: The selected units for temperature
Possible values: one character
F = Fahrenheit
C = Celsius
</tempunits>
</temp>

</response>

Control Commands

Control commands can be sent through a HTTP GET request to 'http://poolcontrol/set.cgi' or 'http://your.ip.address/set.cgi'. A set command will return the text '1' indicating that the command was received. However you must check the status.xml information to see if the command was successful. Depending on the type of command, there may be a small delay in updating the status information. New commands should only be sent when Pool Control is in the 'Connected and Ready' runstate.


To change the value of something in the equipment listing, send a command similar to the following:

http://poolcontrol/set.cgi?name=pump&value=1
name = the XML node name of the equipment you want to adjust
value = the value you want to assign to the equipment
Note: You can only send 0(Off),1(Enabled) values to heaters. The system will turn them On based on setpoints.


To change the value of a setpoint in the temperature listing, send a command similar to the following:

http://poolcontrol/set.cgi?name=poolsp&temp=up
name = the XML node name of the setpoint you want to adjust
temp = can either be an integer value for temperature or 'up'/'dn' to adjust by 1 degree
Note: You cannot exceed the low and high temperature limits enforced by the Aqualink® system. Any temperatures outside the acceptable range will have no effect.


To activate or deactivate a macro (onetouch), send a command similar to the following:

http://poolcontrol/set.cgi?name=1tch3&value=1
name = the XML node name of the setpoint you want to adjust
value = the value you want to assign to the equipment (0=Off, 1=On)

Chemistry Information

Information from a chlorinator or chemical automation device can be retrieved from http://poolcontrol/chem.xml or http://your.ip.address/chem.xml

The document root node is <response>. It has two child nodes which contain the status values. They are enumerated below along with their child nodes and possible values. NOTE: If a child node has a null value then it is not available because it is not supported by the specific Jandy model or configuration.

<response>

<chem>
<avail>
Definition: Indicates what equipment is available
Possible values: 1 byte bitflag array (0=not available, 1=available), bit0=chlorinator, bit1=chem1, bit2=chem2
</avail>
<chlrp>
Definition: Pool chlorination setpoint
Possible values: 0-255
If MSb is set, super chlorinate is on
</chlrp>
<saltp>
Definition: Salt level
Possible values: 0-255
Note: For actual salt value in ppm multiply by 50
</saltp>
<chlrs>
Definition: Spa chlorination setpoint
Possible values: 0-255
If MSb is set, super chlorinate is on
</chlrs>
<salts>
Definition: Salt level
Possible values: 0-255
Note: For actual salt value in ppm multiply by 50
</salts>
<chlorerr>
Definition: Chlorinator error bitflags
Possible values: 4-bit value (0 = no errors)
Error strings from LSB to MSB: [ "Check Flow/PCB","Low Salt","High Salt", "General Fault" ]
</chlorerr>
<orp1>
Definition: ORP reading from unit 1
Possible values: 0-255
Note: For actual ORP value multiply by 10
</orp1>
<orp2>
Definition: ORP reading from unit 2
Possible values: 0-255
Note: For actual ORP value multiply by 10
</orp2>
<ph1>
Definition: PH reading from unit 1
Possible values: 0-255
Note: For actual PH value divide by 10
</ph1>
<ph2>
Definition: PH reading from unit 1
Possible values: 0-255
Note: For actual PH value divide by 10
</ph2>
<orpfd1>
Definition: ORP feed unit 1
Possible values: 0=off, 1=on
</orpfd1>
<orpfd2>
Definition: ORP feed unit 2
Possible values: 0=off, 1=on
</orpfd2>
<phfd1>
Definition: PH feed unit 1
Possible values: 0=off, 1=on
</phfd1>
<phfd2>
Definition: PH feed unit 2
Possible values: 0=off, 1=on
</phfd2>
</chem>

</response>

Control Commands

To change the value of a setpoint in the chem listing, send a command similar to the following:

http://poolcontrol/set.cgi?name=chlrp&chem=50
name = the XML node name of the setpoint you want to adjust (chlrp,chlrs,ph1,ph2,orp1,orp2)
chem = value of the chem setting
Note: Chlorination values are 0-100 & 101=Boost, PH values are 70-82 (10x value), ORP values are 20-90 (0.1x value)

To change the value of a chem feeder, send a command similar to the following:

http://poolcontrol/set.cgi?name=phfd2&value=1
name = the XML node name of the equipment you want to adjust (phfd1,phfd2,orpfd1,orpfd2)
value = the value you want to assign to the equipment
Note: You can only send 0(Off),1(On) values to feeders.


Variable Speed Pump Information

Information for variable speed pumps can be retrieved from http://poolcontrol/pumps.xml or http://your.ip.address/pumps.xml

The document root node is <response>. It has two child nodes which contain the status values. They are enumerated below along with their child nodes and possible values. NOTE: If a child node has a null value then it is not available because it is not supported by the specific Jandy model or configuration.

<response>

<pumps>
<vsp1>
Definition: Pump status
Possible values: 0-8 for current speed setting
</vsp1>
...
<vsp4>
</vsp4>
</pumps>

</response>


Control Commands

To change the value of a pump speed, send a command similar to the following:

http://poolcontrol/set.cgi?name=vsp1&speed=2
name = the XML node name of the setpoint you want to adjust (chlrp,chlrs,ph1,ph2,orp1,orp2)
speed = value of the speed setting (1-8)


Color Light Information

Information for color lights can be retrieved from http://poolcontrol/lights.xml or http://your.ip.address/lights.xml

The document root node is <response>. It has one child node which contains the type values. It is enumerated below along with the possible values.

<response>

<clights>
Definition: Comma separated list of aux circuit type
Possible values: 0-5 = [None, Jandy Colors, Jandy LED, SAM/SAL, Color Logic, Intellibrite]
</clights>

</response>

Note: Color lights will return a status of 0x81-0x8F (129-143) which represents the color index. Subtract 0x80 (128) to get the real index. The index will correspond to the color lists below depending on the light type. To select a color set the aux to a value between 1-15 representing the color index.

[ "Alpine White", "Sky Blue", "Cobalt Blue", "Caribbean Blue", "Spring Green", "Emerald Green", "Emerald Rose", "Magenta", "Garnet Red", "Violet", "Color Splash" ],
[ "Alpine White", "Sky Blue", "Cobalt Blue", "Caribbean Blue", "Spring Green", "Emerald Green", "Emerald Rose", "Magenta", "Violet", "Slow Splash", "Fast Splash", "USA!!!", "Fat Tuesday", "Disco Tech" ],
[ "White", "Light Green", "Green", "Cyan", "Blue", "Lavender", "Magenta", "Light Magenta", "Color Splash" ],
[ "Voodoo Lounge", "Deep Blue Sea", "Afternoon Skies", "Emerald", "Sangria", "Cloud White", "Twilight", "Tranquility", "Gemstone", "USA!", "Mardi Gras", "Cool Caberet" ],
[ "SAM", "Party", "Romance", "Caribbean", "American", "Cal Sunset", "Royal", "Blue", "Green", "Red", "White", "Magenta", "Hold", "Recall" ]
Personal tools