Changes to ASEKO Pool Live and API that will affect the current integration

Ah, I see. This is the Aseko Pool Controller you are using I think, rather than the dosing unit?

The information above seems to be correct. I quickly threw together a Node-Red to check the information. With the position of the serial number I quickly came up with the following:

My dosing unit connects to my node red:

The unit always sends two packets. One of 27 bytes, which corresponds with the datagram above, and one of 120 bytes.

With the serial number I was able to find out some information in the 120 bytes packet as well. Most is double information but I also found temperature in the 120 bytes packets. This is my buffer parsers for the 27 bytes packet

I have Asin Aqua Salt : ASIN AQUA Salt en - Aseko Pool Technology

@jmnemonicj Sorry have to edit my reply. Went through your posts and noticed that the image over the ports might be the controller and not the dosing unit?

However the dosing unit might also have an RS485 port. Or I’ll try your suggestion on picking up the data via the IP port into Node-Red.

It is very little info or blogs on this product online. I am very grateful that you are sharing your knowledge with us. BIG Thank you. I am getting to work ASAP. :smile:

Hi, Asin Aqua Salt is controller and dosing unit all in one, plz check: Changes to ASEKO Pool Live and API that will affect the current integration - #13 by jmnemonicj

The image I posted is internal diagram from user guide (Aseko - Files ), just for purpose we can make local serial RS485 connection for sniffing the comm protocol.

My first step…

Weird that I never thought that this Aseko device would have a web UI. :lying_face: never crossed my mind. Pretty stupid.
@tipofthesowrd Thanks for knocking on my head and bringing this option to my attention. Now it’s a completely new ballgame. :thinking:

(Device is Aseko, Asin Net)
First step, get the data flow into Home Assistant via Node-Red (creating MQTT sensors) to monitor the current data from the Aseko Asin sensors.

This is what I’ve done:
In the Aseko Web UI: Changed the Aseko Local IP settings from DHCP to a static IP (to keep all comms steady)
In the Aseko Web UI: Changed the Aseko setting for Serial Port “Remote Server Adds” to my HA server (with Node-Red) IP address.

In NODE-RED:
Screenshot 2024-09-11 at 15.02.12

In Node-red the “TCP-IN” Node is Listening to the default port 47524 (stream of Buffer). I am getting data almost every second.

Screenshot 2024-09-11 at 15.02.28

Tried to identify where the correct data is in the Buffer. First used what was posted but got the wrong data. Spent some time going through the Buffer to parse. So I am starting with the main sensors for my first version. This is what I found. (Only receiving the 120 bytes packet, haven’t seen 27… yet).

In my function node:

const buffer = msg.payload;
const serialNumber = buffer.readUInt32BE(0);
const pH = buffer.readUInt16BE(14) / 100.0;
const redox = buffer.readUInt16BE(16);
const temperature = buffer.readUInt16BE(25) / 10.0;

msg.payload = {
    serialNumber: serialNumber,
    pH: pH,
    redox: redox,
    temperature: temperature
};

Next I’ll try to see what else I can find.
Anyone that manage to identify the data in the Buffer… please share so we can create an overview table for everyone who wants to go down this route.

Prio now is to find and parse the state of water flow to the probes.

From the Aseko Asin NET model. (If streams are different.)

Finding the data for Status of “Water Flow” to the probes.

My re-search and dig for the correct part to parse.
So how is it presented. As boolean or text. In the HA integration it turns up as “OK”. And the ASCII values are O=0x4F, K = 0x4B

If Boolean Flags? Looking at the offsets 6-9, 18-19, 22-23, etc. (Multiple occurrences of 0xFF) Could 255 be true as in Active?

or… Potential Text for Status (“OK”): Offsets 23-24 (0x50 0x58)**
The hex values 0x50 and 0x58 are not directly “OK” in ASCII (0x4F 0x4B for “OK”)

Anyone else having a thought?

> EDIT 15 SEP 2024
Haven’t figured out the “Water Flow”… need more time for that…

Listening to the streams coming out from the TCP port I got errors in Node-Red so I setup a switch to filter the different packages that seem to be sent out. Confirming what has been identified in previous posts in this thread there are different sizes on these packages.

  • First and most common 120. (Using, is where I get my data for the common sensors inc Redox. Works ok from what I can see without a deep dive into it.)
  • Second there is a 14
  • Third a 128 sized package
  • Then 106 sized starts to pop up
  • Later a 112 sized

So would be interesting what the different ones are containing and what function.

Hi All

In the link you will find a dump with several transfers via TCP. Unfortunately, I can neither recognize the serial number (110157093) nor pool values. Does anyone know how this is coded exactly? is the data processed in binary form? Thank you

Hi, adding my 2 cents, I found the following:
offset 20 might be Salinity * 10
offset 73 pool volume?
offset 74-75 startup delay in seconds? - in my case app shows 8 minutes, that’s 480 seconds, that’s 1 and 224 on 74-75

EDIT:
20 is definitely Salinity * 10
46-51 is date and time (YY MO DD HH MM SS)
the same data again on 86-91
68 Backwash every N days
69 Backwash starts at HH
70 Backwash starts at MM
71 Backwash takes N * 10 secs

1 Like

Hello everyone, there is information also here “Add support for ASIN AQUA Home after major update. · Issue #125657 · home-assistant/core · GitHub” and milanmeu is already on the subject. Have a nice evening.

Regarding this post. Prev Post with image of the connectors on the board.

I found this image of the board in the “Home” model user guide 2024 ver (owners manuals) under the page “Accessories Connection”. Not sure that all models have the same functions?

We have the smaller unit called “NET”. The cheaper slimmed down model. An option to connect other functions to the board is not shown in the manual (Except You can connect an external screen though.) Doesn’t mean that some of the connectors doesn’t exist. It doesn’t have built in WiFi, however not an issue as I prefer stable connections with Ethernet cables. Connecting via TCP stream now to capture the data streams.

ASEKO Pool Manuals (Downloads)

Hi,

even the “NET” unit has RS485 connector for External display, as you have found in the user guide:

When I asked technician at Aseko (I got the cell phone no. from my pool wholeseller) about possibility (or the whole protocol description) to control my pool pump through my dosing unit through the cloud app few months ago, he answered there is no such functionality implemented in the cloud api (maybe it was just the way how to avoid to send me the protocol, i don’t know).
That’s why I focused on RS485 connection after then. The cloud api has been changed completely now, we will see later when populated.

The external display can read all the necessary parameters (External Touch Display en - Aseko Pool Technology ), but can control the pool pump (on/off) and other functionalities of dosing unit as well.
Focusing on cloud api protocol by sniffing the TCP packets is easy way, but it could happen the protocol itself will be limited (as stated by the technician) for our units. Maybe that’s the reason there are two mobile apps, Pool Live and Pool remote. Pool remote app can definitely control pool pump.
Cloud api endpoint for my unit is ipool.aseko.com, but for Pool remote units it should be iremote.aseko.com (check: iPool REMOTE change address - Aseko Pool Technology ). Different endpoints = different protocols?, I don’t know.

BTW Aseko has small app to setup the Kx cloud communication module, you can download it here: Aseko - Files.
My config is as follows:

It seems K1 device is the dosing unit itself and USK-K6 is cloud api communication module. The device and module are connected locally through LAN? It seems so, but I thought it is RS485 interconnection (as checked at the screenshot checkbox) .

But of course you can use web interface to setup USR-K6 as well.

2 Likes

I like the idea of a locally connected solution. Do you think it would be possible to keep the cloud connectivity by having nodeRED copying the TCP stream back to Aseko.com?

This is good although at the moment I am only seeing water flow and free chlorine entries, and not the other ones I expect (particularly water temperature and pH). My model is an Asin Aqua Net with CLF probe.

@nickloman1
Don’t know where you’re looking. The regular sensors are the easy ones.
See Link

I also thought about how to forward the data to Aseko. Like a passthrough via Node-Red for an example.

Oh apols, I was talking about the updated cloud API in latest HA.

I am sure I will be able to replicate what you have done in nodeRED, thanks for the tips!

I was wondering if it was as easy as just connecting a TCP-in to a TCP-out to forward the messages.

1 Like

Hi,

Are there any new in regards to this integration?

From reading through this thread I can’t see if we have a stable configuration that could be used as integration?

I gather that I should use serial over TCP - my system also have an IP and is connected.

But could one of you brilliant people that have figured out how to actually use it, maybe write a short write-up of how to get it working, so I can communicate with the system again?

That would be super awesome!

Hi kidnor.

I was following your steps and selected Static IP in the Aseko Web UI. After clicking on Reboot the device does not connect to my network anymore.

Any idea what this might be and how I could solve?

Thanks.

Is someone any further here? Can someone post a complete example of what he/she has so far? Thank you.

Id did that with a simple TCP Out node directly behind the TCP In node. Works fine until now.