I’ve been working on a custom Lovelace card called Aquard.
It started as a way to better monitor my own Bestway Lay-Z-Spa using one of the inexpensive 7-in-1 WiFi water quality monitors that are widely available online.
Instead of looking at separate pH, ORP, TDS, EC and temperature values, Aquard combines them into a single, easy-to-read water status.
Although it was built around my own spa, the card was designed with a profile-based architecture so it can eventually support other water systems like swimming pools, aquariums and ponds.
The project is still in active development, but it’s already working well for my own setup and I thought it might be useful for others too.
I’d really appreciate any feedback, ideas, feature requests or suggestions from the Home Assistant community.
Hello, thanks for the great card. I expanded it with the help of Claude and Gemini. It now also shows appointments from my pool calendar, calculates when it needs to start heating, can run a temporary 15-minute filtration cycle, heat for a set amount of time, and shows how much chemistry I need to add. When it is set to heating mode, the drop turns red and has a slight animation.
I saved the whole thing in a .js file.
There are still a few small display issues I want to fix, but for now I think it’s great.
I’ll try to create a fork after the weekend or upload the file somewhere.
I wasn’t quite sure how to do it differently from my phone, so this is just a provisional upload for now. Screenshots of the card will follow in the fork over the next few days, and I’m planning to restructure it a bit more.
Alongside the card, I also had to create a number of helpers for the time-based controls — pre-heating, scheduling, etc.
• whirlpool_filter_soll_minuten – target daily filter runtime (minutes)
• whirlpool_filter_credit_heute – filter minutes already completed today
• whirlpool_vorheiz_reserve_minuten – safety buffer before a calendar event
• whirlpool_heizrate_grad_pro_stunde – heating rate (°C/hour) used for ETA calc
• whirlpool_heizen_auf_zeit_dauer – duration for “heat until fixed time” mode
Timers (timer)
• whirlpool_filtern_timer – tracks active filtration runtime
• whirlpool_heizen_auf_zeit_timer – tracks the scheduled heat-by-time countdown
Template sensors/binaries
• whirlpool_filter_rest_minuten – remaining filter minutes today
• whirlpool_naechster_termin_start – start time of next calendar event
• whirlpool_vorheiz_startzeit – calculated pre-heat start time
• whirlpool_vorheizen_noetig – whether pre-heating is currently needed
• whirlpool_filter_nachholen_noetig – whether filtering needs to catch up
• whirlpool_naechste_aktion – next scheduled action (human-readable)
• whirlpool_wasserpflege_noetig – whether water care/dosing is due
• whirlpool_zeit_bis_fertig – accurate “time until ready” sensor
Smoothing filters
• whirlpool_ph_geglättet – smoothed pH value
• whirlpool_orp_geglättet – smoothed ORP value
To The question.
I use a lay z spa Miami
I’ve read through the documents now. I have to admit, I have no idea what I’m doing here I basically just kept prompting until the card was exactly how I wanted it. I hope you can get some useful parts out of it for your project. It’s supposed to be a win for everyone, after all. Thank you for the great project I hope the adapter I designed for the pipe extension and water sensor connection fits just as well for you as it does for