Control your Jandy equipment from your PC with a $15 adapter

Re: Control your Jandy equipment from your PC with a $15 ada

jbuehl.

Thanks for the document. Now that I know that pin 4 is ground I might see if that fixes my transmit issue.

I will also install a python stack to give your version a try.

thanks again

Dave
 
Re: Control your Jandy equipment from your PC with a $15 ada

I am currently running mine without the ground - just 2 wires - and it works fine. The picture I posted is from a while back and isn't how I have it connected. The ground and +5 seem to only be needed to supply power to remote panels, but it can't hurt. I'm betting on your problem being a software issue :)
Also, should you be able to put any address, or do I have to get it from the stream? Or is it a guess and check?
VegasMike - The address needs to be one of the values in the range that the controller recognizes as an AllButton panel, which is 08-0B. Unless you actually have one of those physical panels connected to your controller that it will conflict with, any value in that range will work.
 
Re: Control your Jandy equipment from your PC with a $15 ada

J,

The only type of software issue I can imagine it is would be a windows/windows driver issue...

I have quadruple checked the ack packet I am sending
The Jandy simulators are also unable to be recognized by the controller.

I will try a new usb stick

Cheers
 
Re: Control your Jandy equipment from your PC with a $15 ada

unfortunately I have the same problem. I dont know if our equipment is newer so its a different protocol or what. I am seeing data on the stream, but the company's simulator isn't working nor is jbuehls.

How can I tell what firmware my panel has? I dont have any panels - just a Jandy PDA which says PDA 5.0, JBOX 4.0
 
Re: Control your Jandy equipment from your PC with a $15 ada

RS485 : opening RS485 port /dev/ttyUSB0
RS485 : synchronized
RS485 : ready
RS485 : --> 1002 68 0c 11566234 83 1003
RS485 : --> 1002 00 0d 000000 1f 1003
RS485 : --> 1002 59 00 6b 1003
RS485 : --> 1002 68 0c 11566234 83 1003
RS485 : --> 1002 00 0d 000000 1f 1003
RS485 : --> 1002 5a 00 6c 1003
RS485 : --> 1002 68 0c 11566234 83 1003
RS485 : --> 1002 00 0d 000000 1f 1003
RS485 : --> 1002 5b 00 6d 1003
RS485 : --> 1002 68 0c 11566234 83 1003
RS485 : --> 1002 00 0d 000000 1f 1003
RS485 : --> 1002 60 00 72 1003
RS485 : --> 1002 68 0c 11566234 83 1003
RS485 : --> 1002 00 0d 000000 1f 1003
RS485 : --> 1002 61 00 73 1003
RS485 : --> 1002 68 0c 11566234 83 1003
RS485 : --> 1002 00 0d 000000 1f 1003
RS485 : --> 1002 62 00 74 1003
RS485 : --> 1002 68 0c 11566234 83 1003
RS485 : --> 1002 00 0d 000000 1f 1003
RS485 : --> 1002 63 00 75 1003
RS485 : --> 1002 68 0c 11566234 83 1003
RS485 : --> 1002 00 0d 000000 1f 1003
RS485 : --> 1002 69 00 7b 1003
RS485 : --> 1002 68 0c 11566234 83 1003
RS485 : --> 1002 00 0d 000000 1f 1003
RS485 : --> 1002 6a 00 7c 1003
RS485 : --> 1002 68 0c 11566234 83 1003
RS485 : --> 1002 00 0d 000000 1f 1003
RS485 : --> 1002 6b 00 7d 1003
RS485 : --> 1002 68 0c 11566234 83 1003
RS485 : --> 1002 00 0d 000000 1f 1003
RS485 : --> 1002 38 00 4a 1003
RS485 : --> 1002 68 0c 11566234 83 1003
RS485 : --> 1002 00 0d 000000 1f 1003
RS485 : --> 1002 39 00 4b 1003
RS485 : --> 1002 68 0c 11566234 83 1003
RS485 : --> 1002 00 0d 000000 1f 1003
RS485 : --> 1002 3a 00 4c 1003
RS485 : --> 1002 78 45 0005 d4 1003
RS485 : --> 1002 00 1f 450005b402 31 1003
RS485 : --> 1002 78 43 cd 1003
RS485 : --> 1002 00 1f 430b000000 7f 1003
RS485 : --> 1002 78 46 000003 d3 1003
RS485 : --> 1002 00 20 46000003303131300300 40 1003
RS485 : --> 1002 68 0c 11566234 83 1003
RS485 : --> 1002 00 0d 000000 1f 1003
RS485 : --> 1002 3b 00 4d 1003
RS485 : --> 1002 68 0c 11566234 83 1003
RS485 : --> 1002 00 0d 000000 1f 1003
RS485 : --> 1002 50 00 62 1003
RS485 : --> 1002 68 0c 11566234 83 1003
RS485 : --> 1002 00 0d 000000 1f 1003
RS485 : --> 1002 51 00 63 1003
RS485 : --> 1002 80 00 92 1003
RS485 : --> 1002 68 0c 11566234 83 1003
RS485 : --> 1002 00 0d 000000 1f 1003
RS485 : --> 1002 52 00 64 1003
 
Re: Control your Jandy equipment from your PC with a $15 ada

Sorry, here is with RAW


RS485 : opening RS485 port /dev/ttyUSB0
RS485 : synchronized
RS485 : ready
RS485 : --> 1002 68 0c 11566234 83 1003
RS485 : 1002680c115662348310031002000d00
RS485 : --> 1002 00 0d 000000 1f 1003
RS485 : --> 1002 69 00 7b 1003
RS485 : 00001f1003100269007b10031002680c
RS485 : --> 1002 68 0c 11566234 83 1003
RS485 : 115662348310031002000d0000001f10
RS485 : --> 1002 00 0d 000000 1f 1003
RS485 : --> 1002 6a 00 7c 1003
RS485 : 0310026a007c10031002680c11566234
RS485 : --> 1002 68 0c 11566234 83 1003
RS485 : --> 1002 00 0d 000000 1f 1003
RS485 : 8310031002000d0000001f100310026b
RS485 : --> 1002 6b 00 7d 1003
RS485 : --> 1002 80 00 92 1003
RS485 : 007d1003100280009210031002680c11
RS485 : --> 1002 68 0c 11566234 83 1003
RS485 : 5662348310031002000d0000001f1003
RS485 : --> 1002 00 0d 000000 1f 1003
RS485 : --> 1002 38 00 4a 1003
RS485 : 100238004a10031002680c1156623483
RS485 : --> 1002 68 0c 11566234 83 1003
RS485 : --> 1002 00 0d 000000 1f 1003
RS485 : 10031002000d0000001f100310023900
RS485 : --> 1002 39 00 4b 1003
RS485 : --> 1002 68 0c 11566234 83 1003
RS485 : 4b10031002680c115662348310031002
RS485 : --> 1002 00 0d 000000 1f 1003
RS485 : --> 1002 3a 00 4c 1003
RS485 : 000d0000001f100310023a004c100310
RS485 : --> 1002 68 0c 11566234 83 1003
RS485 : 02680c115662348310031002000d0000
RS485 : --> 1002 00 0d 000000 1f 1003
RS485 : --> 1002 3b 00 4d 1003
RS485 : 001f100310023b004d10031002680c11
RS485 : --> 1002 68 0c 11566234 83 1003
RS485 : 5662348310031002000d0000001f1003
RS485 : --> 1002 00 0d 000000 1f 1003
RS485 : --> 1002 50 00 62 1003
RS485 : 100250006210031002680c1156623483
RS485 : --> 1002 68 0c 11566234 83 1003
RS485 : --> 1002 00 0d 000000 1f 1003
RS485 : 10031002000d0000001f100310025100
RS485 : --> 1002 51 00 63 1003
RS485 : --> 1002 68 0c 11566234 83 1003
RS485 : 6310031002680c115662348310031002
RS485 : --> 1002 00 0d 000000 1f 1003
RS485 : --> 1002 52 00 64 1003
RS485 : 000d0000001f10031002520064100310
RS485 : --> 1002 68 0c 11566234 83 1003
RS485 : 02680c115662348310031002000d0000
RS485 : --> 1002 00 0d 000000 1f 1003
RS485 : --> 1002 53 00 65 1003
RS485 : 001f1003100253006510031002680c11
RS485 : --> 1002 68 0c 11566234 83 1003
RS485 : 5662348310031002000d0000001f1003
RS485 : --> 1002 00 0d 000000 1f 1003
RS485 : --> 1002 58 00 6a 1003
RS485 : 100258006a10031002680c1156623483
RS485 : --> 1002 68 0c 11566234 83 1003
RS485 : --> 1002 00 0d 000000 1f 1003
RS485 : 10031002000d0000001f100310025900
RS485 : --> 1002 59 00 6b 1003
RS485 : --> 1002 68 0c 11566234 83 1003
RS485 : 6b10031002680c115662348310031002
RS485 : --> 1002 00 0d 000000 1f 1003
RS485 : --> 1002 5a 00 6c 1003
RS485 : 000d0000001f100310025a006c100310
RS485 : --> 1002 68 0c 11566234 83 1003
RS485 : 02680c115662348310031002000d0000
RS485 : --> 1002 00 0d 000000 1f 1003
RS485 : --> 1002 5b 00 6d 1003
RS485 : 001f100310025b006d10031002680c11
RS485 : --> 1002 68 0c 11566234 83 1003
RS485 : 5662348310031002000d0000001f1003
RS485 : --> 1002 00 0d 000000 1f 1003
RS485 : --> 1002 60 00 72 1003
RS485 : 100260007210031002680c1156623483
RS485 : --> 1002 68 0c 11566234 83 1003
RS485 : --> 1002 00 0d 000000 1f 1003
RS485 : 10031002000d0000001f100310026100
RS485 : --> 1002 61 00 73 1003
RS485 : --> 1002 68 0c 11566234 83 1003
RS485 : 7310031002680c115662348310031002
RS485 : --> 1002 00 0d 000000 1f 1003
RS485 : --> 1002 62 00 74 1003
RS485 : 000d0000001f10031002620074100310
RS485 : --> 1002 68 0c 11566234 83 1003
RS485 : 02680c115662348310031002000d0000
RS485 : --> 1002 00 0d 000000 1f 1003
RS485 : --> 1002 63 00 75 1003
RS485 : 001f1003100263007510031002680c11
RS485 : --> 1002 68 0c 11566234 83 1003
RS485 : 5662348310031002000d0000001f1003
RS485 : --> 1002 00 0d 000000 1f 1003
RS485 : --> 1002 69 00 7b 1003
RS485 : --> 1002 81 00 93 1003
RS485 : 100269007b1003100281009310031002
RS485 : --> 1002 68 0c 11566234 83 1003
RS485 : 680c115662348310031002000d000000
RS485 : --> 1002 00 0d 000000 1f 1003
RS485 : --> 1002 6a 00 7c 1003
RS485 : 1f100310026a007c10031002680c1156
RS485 : --> 1002 68 0c 11566234 83 1003
RS485 : --> 1002 00 0d 000000 1f 1003
RS485 : 62348310031002000d0000001f100310
RS485 : --> 1002 6b 00 7d 1003
 
Re: Control your Jandy equipment from your PC with a $15 ada

Hmm... Maybe you are right that it is an issue with firmware that doesn't support older panels. Looking at the probe messages which look like "1002 xx 00 yy 1003" I don't see any where xx is 08-0b which is the address of the panel that my code is emulating. All of the probes I see are to 3x, 5x, 6x, 7x, and 8x. It looks like you have two devices with addresses 68 and 78 which are talking back to the controller, but I don't know what the commands are.
 
Re: Control your Jandy equipment from your PC with a $15 ada

Hi

Thanks for all your hard work.

I have a ftdi rs485 to USB adapter that I want to link to a Zodiac TRi-PH chlorinator, I don't have any controllers or panels. And the chlorinator is the only "smart" piece of pool equipment I have.

So is it feasible for me to monitor and control the SWG from a Linux PC with the code here, I am more than happy in Linux?

Thanks again.

Richard
 
Mike,

I think we are both in the same boat as I have a PDA system. The PDA compatible firmware must disallow a one touch and cause it to be ignored. I have an aquapure system and I do see that device(s) putting out data. Maybe the answer is to use the address range for the JBOX and emulate that?
 

Enjoying this content?

Support TFP with a donation.

Give Support
Mike,

I think we are both in the same boat as I have a PDA system. The PDA compatible firmware must disallow a one touch and cause it to be ignored. I have an aquapure system and I do see that device(s) putting out data. Maybe the answer is to use the address range for the JBOX and emulate that?

Yes, I believe us PDA guys would have to start from scratch. Out of curiosity I called on the iAquaLink and even they told me we would have to first replace the board and then install the accessory. So my options are to upgrade the board and finish on this path, or just go with the iAqualink. Either way it is a more expensive endeavor than the people who were lucky enough to have boards that worked from the start.
 
So started visiting this again...it does turn out the the JDA/PDAA uses a different protocol....

The PDA/JDA runs as device 60. The master will also probe 61. I set up the emulator there and have been working on the interface.

Basically to emulate this, you have to just send the key commands (select/up/down/back/1/2) and know what menu you are on by scanning the LONGMSG/04 messages.

One issue I have is I am getting a lot of noise on the line. Bad checksums, extra bytes, STX's without ETX's... Gets worse when the pump is running

I am just using the +/- RS-485 wires and its a 30 ft of shielded twisted pair 485 wire. I do have the shield connected to ground on the jandy (disconnected on the PC side so as not to have a voltage diff). Maybe I will try disconnecting the shield from the jandy gnd.
 
Guys, I have recently found this thread and I am REALLY impressed with all the work you have all done.

I have been thinking of reverse engineering the all button and spa-link for a while now since my spa-link bit the bullet a while back and a replacement simply does not justify the cost to me at the moment.

In addition to this I am about to upgrade my pump to a variable speed pump and was looking for options to include a variable speed pump whilst not replacing the controller. In that quest I came across a pump controller board for the Inteli pump which allows it to interface to the Jandy controller and still ensure correct pump speeds for each pool function (full speed when heaters on etc...)

So, I am now at the point where I think I will keep the control panel for the all button but basically add the pump & controller then replace the indoor all button control pad with a Beaglebone Black with a 7" display. This will allow me to add at will additional remotes (cheap iOS/android devices) at will and use the web interface. I work at Texas Instruments directly with the guys who designed Beaglebone, so I think I have access to the right support there :)

From what I can gather so far though, I think I am best staying with my older all button than updating the main controller to either the iAqualink or PDA systems since they seem to have different protocols. Is this a valid observation?

My guess is that they ran out of code space on the host processor and decided to split into 2 branches rather than upgrading the processor which would likely have forced them to go through certification etc... again.

Agent-P, I noticed that on Jan 5th you mentioned you are doing exactly what I am looking to do but with a Pi. Were you able to put everything up on GitHub? I would really like to see your updates, your web interface is great and I would love to use it as a foundation for mine if possible.

So, since I am embarking down this path is there anything I can do to help and contribute back to you guys? Any data I can capture etc...?

BR,
Steve
 
Re: Control your Jandy equipment from your PC with a $15 ada

Hi

Thanks for all your hard work.

I have a ftdi rs485 to USB adapter that I want to link to a Zodiac TRi-PH chlorinator, I don't have any controllers or panels. And the chlorinator is the only "smart" piece of pool equipment I have.

So is it feasible for me to monitor and control the SWG from a Linux PC with the code here, I am more than happy in Linux?

Thanks again.

Richard

I'm wondering the same. I have a stand alone Aquarite salt generator and want to mostly get statuses from it, but occasionally send it a "super-chlorinate" command. All the code I've seen floating around the internet has been about controlling controllers, not the actual devices themselves. I tried plugging into the RS485 bus and squirting a couple of probe commands I found at all the device IDs I could generate, but nothing responded. And, of course, since the device is a RS485 slave, it won't send data unless asked for it.

My ultimate goal is to get an Arduino board talking to it. I already have the board talking to some 1Wire(tm) sensors I installed int the pipes to get water temp, collector temp, and solar panel discharge temps. It'll control one of those actuators to turn the solar on and off as well as toggle a contactor to drive the pump.
 
Now I've done a bit a poking at the chlorinator and it seems that the RS-485 port isn't even operational. I put my meter across the RS-485 connector and saw no voltage across the A/B pins nor the +10/GND pins. My chlorinator is barely 2 years old and has never had anything plugged into the RS-485 port, so I don't think anything fried it. I can't tell if RS485 is an optional installation or bog standard.
 
So...I got the PDA licked in Java/tomcat. It will run on either windows or linux/raspberry pi.

1. The trick to getting a response from an Probe/Ack is to use device 0x61 or higher. As mentioned earlier, the PDA is 0x60
2. The PDA protocol is completely different and a bit sucky. What you have to do is emulate the key clicks. (select, up, down, back, button 1, button 2). You then watch for the current screen you are on and what the selected line number is when a message line comes in
3. The code I did currently supports basic on/off and status. Most devices it will navigate to the Equipment ON/OFF menu but it will do Lights on and Jet pump for me by sending KEY ONE and TWO respectively. The code is smart enough to go up or down on the menu. I did this in a simple XML servlet that my OpenHab controller uses for the following UI.
4. The servlet is stateful so it can do stuff like store the last aquapure status and water temp, stuff that you usually only see when the pump is running.

I probably could have purchased a new modern pool controller for the time I sunk into this...but victory feels good.

BTW, now that I have this openhab enabled, there is some crazy cool stuff I can do...like send me a text message when I have issue with AquaPure...Or when my hot tub is heated to the desired temperature....

openhab2.jpgopenhab1.jpg
 
I bought a Raspberry Pi and would like to see if it's possible to interface the PDA version of the Aqalink (using the USB/RS485 connector). I followed this post and was up until 2AM trying to make stuff work but got a little lost in what's needed for code on the RPi. What are all the files I need on the RPi? (pyaqualink?) to make this work? I got lost in what's used for an RS8/One Touch and what works and what doesn't. I know this project is a little over my head but hoping that someone can point me in the right direction (other than buying the Autelis device). TIA.
 
Re: Control your Jandy equipment from your PC with a $15 ada

unfortunately I have the same problem. I dont know if our equipment is newer so its a different protocol or what. I am seeing data on the stream, but the company's simulator isn't working nor is jbuehls.

How can I tell what firmware my panel has? I dont have any panels - just a Jandy PDA which says PDA 5.0, JBOX 4.0

I know this is an older thread, but I stumbled upon this info and thought it might be helpful for others. Sorry if this isn't the right place in the thread.

JANDY PPD REVISION CODES*

A Programmable Peripheral Device (PPD) with revision letter C to HH will operate with all PCBs with a 44 pin*
socket.*
A Revision I or II PPD will only operate with a PCB which has a 44 pin socket and is a Revision I PCB.*
A Revision J or newer PPD will only fit into a PCB with a 52 pin socket (second generation of PCB).*
1994-Rev. A = Alpha testing.*
1995-Rev. B = Beta testing.*
1996-Rev. C = First production AquaLink RS.*
1996-Rev. D = Allowed Cleaner JVA socket to be assigned to an auxiliary by turning on dip switch 7.*
1996-Rev. E = Programmed ON times not recognized after freeze protection activates.*
1996-Rev. F = RS 2/6 Sharing a heater support, light dimming on RS 4.*
1997 – Rev. G = First support for SpaLink RS, Cleaner JVA can be assigned without turning on dip 7.*
1997 – Rev. GG = Cancel button locks-up system.*
1997 – Rev. GGG = Correction to GG.*
1998 – Rev. H = First support f or LX / RS 485 connection, memory expansion to 128K of ROM, SpaLink reads*
pool temperature and OFF when the system is not on.*
1998 – Rev. HH = Corrects time calibration problem with Rev. H.*
1998 – Rev. HH 232 = Support for RS 232 Serial Adapter.*
2000 – Rev. I = First support for OneTouch, includes serial adapter support. Note Rev I will only operate in a Rev.*
I PCB.*
2000 – Rev. II = Corrects problem with auxiliaries assigned to f reeze on OneTouch.*
2002 – Rev. J = Change to 52 PIN PPD and new socket on AquaLink RS PCB.*
2002 – Rev. JJ = Corrects problem with auxiliaries assigned to freeze on OneTouch.*
2003 – Rev. K = Support for FlowLink, items manually turned on will reactivate after going to Auto/Service/Time*
Out.*
2004 – Rev. L = Color Light Control, PC Docking, Laminar Light Pulse Control (LPC4), Chiller/Heat Pump*
operation, Run Time (circuits can be set to run manually f or 1 t o 10 minutes or for 10 minutes to 2 hours in 10*
minute increments). Will communicate directly with AquaPure Chlorine Generator only.*
2006 – Rev. M = Support for AquaPalm wireless remote, Change chlorine production from AquaPure. AquaPure*
(revision must be 11230A05 or newer). Assign OneTouch buttons to SpaLink RS buttons.*
2006 – Rev. MM = Corrects problem when entering into lights labels.*
2006 – Rev. MMM = Corrects problem associated with daylight savings which caused the AquaPalm to jump*
lines. Light dimming can be adjusted from AquaPalm.*

CPU REVISION CHANGES*

2007 – Rev. N = Complete change to PCB. The operating chip is no longer a PPD, it is now a CPU (Central*
Processing Unit) board. The AquaLink RS can be connected via the RS 485 line to a Jandy AE Heat Pump &/or a*
Jandy LXi Gas Heater.*
2008 – Rev O = Communication with Variable Speed pumps.*
2009 – Rev P = Communication with ChemLink, LM3, AutoClear Plus & DuoClear.*
2010 - Rev Q = first support for Touch Screen panel.
2012- *Rev R = internet control of Jandy Aqualink system via smartphone or web*
 
This is really a monster thread and its easy to get overwhelmed. I have the hardware and am a retired software engineer, so I'd like to cut to the chase.

Is the One Touch emulator still avaiable? Where? Is it still required? re better alternatives??
 

Enjoying this content?

Support TFP with a donation.

Give Support
Thread Status
Hello , This thread has been inactive for over 60 days. New postings here are unlikely to be seen or responded to by other members. For better visibility, consider Starting A New Thread.