DanielNagy / astralpool_halo_chlorinator

Home Assistant custom component to interface with Astra Pool Halo pool chlorinators
MIT License
11 stars 1 forks source link

Fails to connect #9

Open jonathanwilletts opened 1 month ago

jonathanwilletts commented 1 month ago

I had this integration working for a few weeks. I have a BT Proxy setup on an SLZB-06 coordinator. HA can see and detect the integration but it won’t connect. I have deleted the pair and re-paired. I have reinstalled the BT Proxy setup IMG_0826 IMG_0827 IMG_0828

LOG: Detected code that calls async_forward_entry_setups for integration astralpool_halo_chlorinator with title: HCHLOR and entry_id: 01J340F9JMKXD05V1M0673H0XV, during setup without awaiting async_forward_entry_setups, which can cause the setup lock to be released before the setup is done. This will stop working in Home Assistant 2025.1. Please report this issue.

Logger: homeassistant.components.select Source: runner.py:190 integration: Select (documentation, issues) First occurred: 8:47:53 AM (2 occurrences) Last logged: 8:53:48 AM

Setup of select platform astralpool_halo_chlorinator is taking over 10 seconds.

Logger: homeassistant.components.binary_sensor Source: runner.py:190 integration: Binary sensor (documentation, issues) First occurred: 8:47:53 AM (2 occurrences) Last logged: 8:53:48 AM

Setup of binary_sensor platform astralpool_halo_chlorinator is taking over 10 seconds.

staticlama commented 1 month ago

I'm having the same problem. Halo was commissioned yesterday and integration worked initially - but post Halo firmware upgrade yesterday evening (V2.3 -> V2.4) it seems I have no values in HA.

I'm getting this error in the logs.

This error originated from a custom integration.

Logger: custom_components.astralpool_halo_chlorinator.coordinator
Source: custom_components/astralpool_halo_chlorinator/coordinator.py:90
integration: Astral Pool Halo Chlorinator (documentation, issues)
First occurred: 09:34:36 (73 occurrences)
Last logged: 10:13:14

Failed _gatherdata, giving up: 83
Failed _gatherdata, giving up: 84
Failed _gatherdata, giving up: 85
Failed _gatherdata, giving up: 86
Failed _gatherdata, giving up: 87
DanielNagy commented 1 month ago

@jonathanwilletts did you also upgrade to v2.4 firmware on the Halo?

@staticlama it looks like something has changed in the update.

staticlama commented 1 month ago

Confirming that I can still control the mode on my Chlorinator but all other data is unavailable. I've located a BT proxy in my pool equipment box - so BT signal is strong - but consequently the wifi signal isn't so good so also trying to balance those two.

DanielNagy commented 1 month ago

Confirming that I can still control the mode on my Chlorinator but all other data is unavailable. I've located a BT proxy in my pool equipment box - so BT signal is strong - but consequently the wifi signal isn't so good so also trying to balance those two.

What ble proxy software is being used on that zigbee stick of yours? if youre able to control it, but not recieveing data, it appears it isnt subscribing to the notification properly and passing it to HA.

Further more, Due to what i've discovered from @staticlama's post.. I'm going to make an annoncement shortly with my findings.

staticlama commented 1 month ago

Thanks for the quick responses Daniel, look forward to the post and hopefully it's positive.... I'm also trying to work out if I can do a firmware downgrade somehow.

DanielNagy commented 1 month ago

Thanks for the quick responses Daniel, look forward to the post and hopefully it's positive.... I'm also trying to work out if I can do a firmware downgrade somehow.

Unfortunately it seems unlikely.

I've made a post here. https://community.home-assistant.io/t/viron-astral-pool-chlorinatorgo-integration/375495/408

jonathanwilletts commented 1 month ago

@jonathanwilletts did you also upgrade to v2.4 firmware on the Halo?

@staticlama it looks like something has changed in the update.

I have upgraded to 2.4 as well unfortunately.

jonathanwilletts commented 1 month ago

Thanks for the quick responses Daniel, look forward to the post and hopefully it's positive.... I'm also trying to work out if I can do a firmware downgrade somehow.

Unfortunately it seems unlikely.

I've made a post here. https://community.home-assistant.io/t/viron-astral-pool-chlorinatorgo-integration/375495/408

I have the ability to connect my Halo via Cat5e. Can your integration work with this type of connection?

DanielNagy commented 1 month ago

I have upgraded to 2.4 as well unfortunately.

Bugger. Locked out now. See the community post above for further details.

staticlama commented 1 month ago

@jonathanwilletts did you also upgrade to v2.4 firmware on the Halo? @staticlama it looks like something has changed in the update.

I have upgraded to 2.4 as well unfortunately.

I’ve reached out to Astral via my installer. Suggest you try the same. Have expressed my disappointment and requested a firmware downgrade.

trev142 commented 1 month ago

Just out of interest, has anyone checked to see if the Halo requires the cloud service key generation if it doesn't have internet itself? Surely there isn't much point to a cloud verification if the Halo can't verify too?

Just a thought as I disconnect mine from the internet so it can't be accidentally updated - feel sorry for you guys who have already updated!

staticlama commented 1 month ago

Just out of interest, has anyone checked to see if the Halo requires the cloud service key generation if it doesn't have an internet itself? Surely there isn't much point to a cloud verification if the Halo can't verify too?

Just a thought as I disconnect mine from the internet so it can't be accidentally updated - feel sorry for you guys who have already updated!

Good thought. I can try out tomorrow and report back.

DanielNagy commented 1 month ago

Just out of interest, has anyone checked to see if the Halo requires the cloud service key generation if it doesn't have internet itself? Surely there isn't much point to a cloud verification if the Halo can't verify too?

I'd suggest they're using Public/Private key authentication, which would not require Halo to be connected to the cloud server. Ie, pretty much how JWT tokens work.

However, it certainly would be a good test.

Just a thought as I disconnect mine from the internet so it can't be accidentally updated - feel sorry for you guys who have already updated!

Good move on removing yours from wifi.

staticlama commented 1 month ago

Just an update - removing or blocking wifi/internet doesn’t work as expected.

DanielNagy commented 1 month ago

Yep, confirms they are using asymetric public/private key exchange that is trusted by the Halo.

If you set your mobile to aeroplane mode, run Halo Go app, a ugly pop up saying "Internet connection is required".

The new handshake with the cloud server during a bluetooth connection is quite simple to replicate within this Intergration. I've already worked it out infact. It requests a challenge response providing some details like firmware major/minor versions, and protocol version then hits a second authorisation using that receieved challenge, providing even more details like the bluetooth passcode to recieve the MAC to decrypt the payload.

The issue is that it no longer becomes a local solution, and will hit that endpoint every 60 seconds which could potentially impact real users of their platform which is where the problem lays as to why I'm not proceeding with it (see what happened with MyQ).

Heck, this change of theirs already impacts end users that have little, to no mobile/wifi coverage to their mobile device. Its quite poor form approach to moving forward with this.

staticlama commented 1 month ago

Wonder what the reason is behind locking down the Bluetooth - given you have to basically be within 10m to reliably connect.

If you did proceed, I’d be grateful to even get hourly stats and cumulative dose amount from the doser. Two useful bits of info the Halo app doesn’t provide when it does connect.

phrak commented 5 days ago

Wonder what the reason is behind locking down the Bluetooth - given you have to basically be within 10m to reliably connect.

If you did proceed, I’d be grateful to even get hourly stats and cumulative dose amount from the doser. Two useful bits of info the Halo app doesn’t provide when it does connect.

I wrote a Home Assistant sensor to track cumulative acid dosing over time.

https://community.home-assistant.io/t/viron-astral-pool-chlorinatorgo-integration/375495/320