Usage Reporting

What the device sends to api.poolcontrol.io, what is kept, and how to turn it off.

Why it exists

To see how many devices are in use and which firmware versions they run, each device sends a small anonymous report twice a day. It is on by default and takes one click to turn off.

What the device sends

An HTTPS POST to https://api.poolcontrol.io/v1/usage, containing only:

It is sent about 30 seconds after boot, then every 12 hours. A failed report is dropped, not retried, so an unreachable server never affects the device.

What is stored

The server keeps the install ID and version, when that ID was first and last seen, and the country and continent Cloudflare works out from the connection. Nothing finer.

Not collected: anything about your pool, the bus or the device's configuration; IP addresses, city or region, network names or ISP. The server keeps no request logs.

Turning it off

Open the device's update page, http://poolcontrol-AABBCC.local/update, and untick Participate in anonymous usage reporting. It takes effect immediately and is remembered across reboots and updates.

The device then asks the server to delete everything it holds for that install, and keeps asking until the server confirms. If the device is offline, that happens once it's back. After that nothing is sent while reporting is off.

The code

Both sides are open source: the server is in api/, along with the queries run against the data, and the device side is main/usage_report.c.