Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

AqualinkD Preventing Aqualink from Setting Correct Light Color #236

Open
John5373 opened this issue Jul 17, 2023 · 22 comments
Open

AqualinkD Preventing Aqualink from Setting Correct Light Color #236

John5373 opened this issue Jul 17, 2023 · 22 comments

Comments

@John5373
Copy link

I have AqualinkD set up with my Jandy LEDs using the Aqualink panel to set the color (lightMode = 0), however, Aqualink is unable to cycle to the correct color unless I shutdown the aqualinkd service. Watching the lights cycle through their colors, when AqualinkD is active, eventually one or more of the lights return to white part of the way through their cycle and then some of them are completely out of sync and the incorrect color.

@sfeakes
Copy link
Owner

sfeakes commented Jul 18, 2023

lightmode=0 means AqualinkD will set the light color, not the control panel. Sounds like you want the control panel to set the light mode (I assume that's what you mean by Aqualink), in which case you should be using a light mode other than 0 in AqualinkD configuration.

But in either case, AqualinkD will not interfere with the control panel setting the light mode. So having to shutdown AqualinkD for the control panel to set the light mode, probably means something else is going on. Or I am understanding you problem incorrectly.

The reason you need to set lightmode correctly is so AqualinkD can program the light. It needs to know how the control panel has it configured. So that setting will ONLY effect AqualinkD setting the light, it has no effect (or interference) on how the control panel controls sets the light.

@John5373
Copy link
Author

John5373 commented Jul 18, 2023

Sorry, my mistake, I have it set to LightMode=2, not 0, and it is causing problems

@sfeakes
Copy link
Owner

sfeakes commented Jul 18, 2023

If you configure AqualinkD to Debug log, and log to file. Then start AqualinkD, give it a minute or two to set itself with control panel. Then try to program the light from the control panel / iAqualink / keypad etc, stop AqualinkD and post the log. I can take a look and see if I can tell when the problem is.

@John5373
Copy link
Author

Thanks. Here's the log. Something is causing the lights to occasionally take too long to power cycle, which results in the lights resetting to white part of the way though the cycle.

aqualinkd.log

@sfeakes
Copy link
Owner

sfeakes commented Jul 19, 2023

I went over the logs, and I can’t see anything where AqualinkD is interfering with the control panel programming the light, in-fact AqualinkD has not even seen the light change state in those logs.
What device are you using the change the light state? Ie keypad / OneTouch / iAqualink etc?

@John5373
Copy link
Author

Same. I read through the log before I posted it looking for something regarding the lights but could not find anything.

I did this test with the Jandy iAqualink app, but fairly certain it did the same with AqualinkD.

Could it be related to MQTT?

@sfeakes
Copy link
Owner

sfeakes commented Jul 20, 2023

Since AqualinkD did not see the light even chance, it’s not related to MQTT.

Just to confirm the below is what you are experiencing.
AqualinkD not running, changing the light mode with iAqualink app, Light changes mode correctly.
AqualinkD running, changing the light mode with iAqualink app, Light does not cycle mode correctly.

@John5373
Copy link
Author

Correct. At a point in the cycle, the lights will stay off for too long and reset to white.

@John5373
Copy link
Author

John5373 commented Jul 22, 2023

Here's the full Serial Debug log if that helps...

aqualinkd2.log

I also disabled MQTT and still having the same issue.

aqualinkd4.log - AqualinkD Web GUI w no MQTT

@John5373
Copy link
Author

John5373 commented Jul 22, 2023

And same problem using the web interface of Aqualinkd

aqualinkd3.log

@sfeakes
Copy link
Owner

sfeakes commented Jul 24, 2023

I noticed on log 3 & 4 you used AqualinkD to set the light and not iAqualink. Both times it was set to “Disco Tech” and the control panel thought the light was already on “Disco Tech”, so it looked like it just turned it on rather than actually programming it.

I really can not see where AqualinkD is interfering with the light at any point, One thing to try would be to take AqualinkD out of extended programming, by commenting out or deleting this line in your config

“extra_device_id = 0x31”.

Make sure to restart aqualinkd once you take that line out. You should keep using the control panel to program the light and not AqualinkD, get that working first.
Other things to try.

  1. update AqualinkD to the latest version, you are a few behind.
  2. If the above makes no change, it would be worth knowing if the control panel can program the light with serial logger running rather than aqualinkd.

Stop aqualinkd, run serial logger, use iAqualink to program the light.

@John5373
Copy link
Author

Finally got around to working on this again...

Updating to the latest version did not fix the issue--see log 6

Removing "extended_device_id=0x31" and "extended_device_id_programming = yes" fixed the problem--see log 7

Unfortunately, as your documentation points out, this prevents me from setting my pump rpm, which is pretty much the primary reason I set up AqualinkD...

aqualinkd6.log

aqualinkd7.log

@John5373
Copy link
Author

I am able to re-enable "extended_device_id=0x31" only and the lights cycle properly. Also have access to my pump RPMs, so this may work. Not sure what I am missing by not having extended_device_id_programming.

@John5373
Copy link
Author

Nvm. Its not working with extended_device_id enabled. Same problem.

@John5373
Copy link
Author

John5373 commented Apr 8, 2024

Hey @sfeakes anyone else report this behavior? Would love to have local control, but this issue is driving me crazy--except every once and a while I get some lights on different colors than others, which actually looks pretty cool...

@sfeakes
Copy link
Owner

sfeakes commented Apr 8, 2024

Can you try upgrading to the latest version of AqualinkD, and adding the following in aqualinkd.conf rs485_frame_delay = 4. This will slow AqualinkD down a touch, just wondering if that may be causing an issue.
I doubt that will work, but the latest version has some better debug capabilities that may help.

@fd-80
Copy link

fd-80 commented Jan 21, 2025

I'm running an Aqualink Rev T.2 and I'm also encountering the above. Along with the Aqualink RS8 I have an iAqualink 3.0 connected to it. When trying to change lights with the Aqualinkd service started it often exhibits similar behavior as described by @John5373 - (ie the pause for a change is too long and it resets to the initial White mode). If I shut down the Aqualinkd service and change the light color in the iAqualink app it works fine.... but once I have the AqualinkD with the extended_device_id it does not change the light colour correctly.

@sfeakes
Copy link
Owner

sfeakes commented Jan 21, 2025

Can you post your aqualinkd.conf file. Also did you try the rs485_frame_delay posted above?

If that doesn't work, can you try using extended_device_id with a one Touch ID and not Aqualink Touch ID (so use one of 0x40, 0x41, 0x42, 0x43 and not 0x30, 0x31, 0x32, 0x33).

@fd-80
Copy link

fd-80 commented Jan 22, 2025

Sorry just thought I should also clarify I have a Jxi heater and the Jandi VSP pump which works well in Aqualinkd showing the RPM etc.

I tried the rs485_frame_delay to 4 and the light problem is still there (I even tried pushing that up higher to 20)

I've had to comment out the #enable_iaqualink=yes as when I enable it - it shuts down my iAqualink 3.0 (but I also am unsure whether I should have it enabled or not)

However when I change the extended_device_id to a Aqualink Touch ID the light colour change problem does not occur (but I lose the ability to use the OneTouch Buttons/Virtual buttons to turn the spa on 😢 ) so its definitely only a problem when using an Aqualink Touch ID

I've also tested using by disconnecting the iAqualink 3.0 from the 485 Bus - when I disconnect it and use an Aqualink Touch ID - the light colour change works correctly!

aqualinkd.conf here:
aqualinkd.conf.txt

@sfeakes
Copy link
Owner

sfeakes commented Jan 22, 2025

That confirms what I thought it might be. It's a problem with the panel running two iAqualink Touch protocols + iAqualink (2.0 or 3.0), it probably can't handle all the messages while it's programming a light. One thing to try would be to set AqualinkD extended_device_id to One touch (0x4?), fire up AqualinkD iAqualink Touch simulator, and set the light color through iAqualink 3.0 or iAqualink Touch panel / web. If that works, then I can look at reducing the number of messages AqualinkD uses on the Aqualink touch protocol. ( The Simulator will use less messages on the iAqualink Touch protocol)
Problem is either Panel firmware bug, (there are plenty of those I've had to code around) or the CPU isn't powerful enough.

It's been on my todo list to get virtual buttons working using the OneTouch protocol, so we could also get around it that way, it'll just be a little slower to turn them on/off.

@fd-80
Copy link

fd-80 commented Jan 23, 2025

Apologies I just realised I had a typo in my 4th paragraph but I believe you realised what I meant that I tried with the OneTouch protocol (extended_device_id=0x40) !

I just tried setting the 0x40 again and firing up the One Touch simulator and also the iAqualink app - using either and setting the light to say USA works correctly using both methods with this setup.

When returning to use a 0x3xextended_device_idit definitely causes the lighting issues (and to be fair also makes the iAqualink app work slowert to get updated)

@sfeakes
Copy link
Owner

sfeakes commented Jan 29, 2025

I just posted a development update if you want to try that. This should reduce the load on the control panel using ID's 0x3?, and I believe (or hope) this will fix the issue.

Since it's a dev update, you'll need to force latest if using the aqua.sh script to install.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants