dhmsjs / pyjacuzzi

Python interface to Jacuzzi brand spas via WiFi (e.g. using Prolink, not SmartTub)
Apache License 2.0
5 stars 0 forks source link

Jacuzzi J345 #1

Open BlackAngel2109 opened 1 year ago

BlackAngel2109 commented 1 year ago

Just want to say thanks for the progress thus far on this project!

So far this is the only thing that has gotten any valid responses from hot tub. I am looking forward to more progress towards Home Assistant interfacing.

I can control all aspects of the J345 connected with the factory Prolink Wifi module, the lasted version of the ProLink app is terrible and I cannot reliably control my hot tub.

Looking forward to more developement.

dhmsjs commented 1 year ago

You're welcome and thank you for the feedback on using it with your J345. Currently I am working on understanding the differences between encrypted and unencrypted control boards. I haven't tried integrating with HomeAssistant but from HyperactiveJ's work it looks like that is not too difficult.

Do you have problems with Prolink randomly "going to sleep" -- not responding to connection requests? That is one of my biggest complaints at this point and it is apparently true with their phone app too. I haven't been able to connect with my tub for several weeks now.

BlackAngel2109 commented 1 year ago

So far I haven't noticed any issues with sleep but to be honest I haven't monitored it that much.

If it were in part of my Home Assistant setup I would've noticed it.

I mainly used the Prolink for keeping track of water changes but the app is totally useless after the last update for me.

I tried using HyperactiveJ's "Encrypted" Sundance 780" stuff but couldn't get much from my tub. So I'll assume mine is unencrypted?

dhmsjs commented 1 year ago

If your system works with jacuzzi.py then it is definitely not encrypted.

Jackbrown1993's system is not encrypted but he is using a generic wifi to RS485 box. HyperactiveJ's system is encrypted and he uses the RS485 box. My system is unencrypted and uses the Prolink box.

HyperactiveJ also has worked out the interface to HomeAssistant. I am pretty sure that is completely unrelated to the encryption and interface box issues. Shouldn't be hard to make jacuzzi.py to work with that part of his code, but I haven't tried yet.

pddc had an unencrypted system and Prolink. But he shorted out the control board and the replacement he bought was encrypted. I believe he now has an unencrypted control board too. And he got the RS485 box to see if he could abandon Prolink. So I think pddc has all options.

dhmsjs commented 1 year ago

By the way do you know that the Prolink app maintenance timers (like the water change timer) are nothing more than simple countdown timers, correct?

In other words the app doesn't try to do anything fancy like keep track of how much the tub is being used, etc. They simply count down to zero and then warn you. So conceivably you could do the same thing all in Home Assistant, without actually connecting to the tub at all.

BlackAngel2109 commented 1 year ago

Yeah I figured that but it was convenient, plus I would use the app to check on temps. Like I say it is totally unusable for me now.

dhmsjs commented 1 year ago

Understood. And I feel your pain. :-)

BlackAngel2109 commented 11 months ago

I've been keeping an eye on all of the options but haven't seen too many updates on any. Guess it's not hot tub weather for most working on their projects.

dhmsjs commented 11 months ago

Yes I suspect others are busy with summer obligations.

My limitation is that I do not have a spa with both Prolink and an encrypted controller -- so I am relying on others who do to perform any testing of the encrypted interface. Non-encrypted with Prolink is mostly working as far as I know.

The encryption/decryption part works but plenty of basic control & monitoring of an encrypted controller does not. It just requires brute-force working through the differences between encrypted status and command messages to resolve the bugs. Hard to do without having the actual controller to test changes on.

Similarly, I don't have a direct RS485 interface (yet anyway) so I have to rely on others who do in order to test anything there. It looks like @HyperactiveJ has most of that worked out so I'm not directing my attention there currently.

HyperactiveJ also has worked out the interface to Home Assistant (using mqtt). I think it should be relatively straightforward to do the same with jacuzzi.py -- I'm pretty sure it is just repackaging the commands and replies into mqtt format.

BlackAngel2109 commented 11 months ago

Presently I just have the Prolink adpater, I think it's not encrypted.

I tried Jackbrown1993's but I can only get the temp from the tub and nothing else.

I thought about trying a RS485 adapter but just haven't yet.