INFO
Pool Control Pro — motor químico compartido admin / Solo / técnico.
🧪 Chemical calculator (v4)

Pool Control Pro shares @pool-control/chemical-dosing across phone consultation, Solo mode and technician work orders. v4 adds a technical audit report with €/year operating impact, configurable €/kWh tariff, plus v3: bromine, hydraulics, help modal, LSI, neutralizer and demo pools.
Dónde se usa
| Pantalla | Uso |
|---|---|
| Consulta química | Oficina / teléfono — plan completo, PDF, modo experto |
| Modo Solo | Misma calculadora con layout autónomo |
| Parte técnico | Paso 2 — dosis con tope por visita + stock furgoneta |
| Configuración química | Objetivos, producto por rol, coeficientes |
Pestañas de la consulta
| Tab | Content |
|---|---|
| Balance | pH, chlorine, TA, TH, CYA, salt, LSI, suggestions, simulation, expert mode |
| Bromine | Free bromine, BCDMH/DBDMH tablets, MPS oxidizer, neutralizer |
| Filtration & pump | Size flow, commercial filter Ø; compare with installed equipment |
| Piping | PVC velocity, friction loss, TDH, skimmers/returns (quick/standard/expert) |
| Heat pump | kW sizing by volume, bathing months, climate zone, cover (3 modes) |
Modal de ayuda
The ? button opens a scrollable guide (measurements, LSI, suggestions, bromine, hydraulics, disclaimer).
Bromo
New roles: BCDMH, DBDMH, MPS, bromine neutralizer (same thiosulfate as chlorine). Configurable free bromine target (~3 ppm pool, 4 spa).
Hidráulica
Pool record: water age, refill hardness, target turnover. Equipment (pump/filter): rated flow, filter type, diameter or area. Diagnostics: undersized pump/filter, mismatch.
LSI, TDS y dilución
LSI uses carbonate alkalinity (CYA corrected for pH). Water age estimates TDS. Dilution liters for high CYA/TH.
Extended demo catalog (SKU → role)
| SKU | Role / use |
|---|---|
| QN-001 | Chlorine/bromine neutralizer (thiosulfate) |
| QD-006 / QD-007 | BCDMH / DBDMH tablets |
| QD-008 | MPS oxidizer (bromine bank) |
| QD-001 / QD-002 | Liquid/granular shock (+ bromine oxidizer) |
| QR-001 … QR-005 | pH, TA, CYA, TH |
| QM-001 / QM-002 | Algaecide / flocculant |
| SE-001 | Salt |
Piscinas demo por escenario
solo-demo and AquaDemo include scenario pools (e.g. high CYA, undersized pump) with completed visits and preloaded readings. Restored after demo reset.
Dosing sequence
The engine assigns Step N and groups the plan in three phases:
| Phase | Content | Examples |
|---|---|---|
| 1. Balance | TA → pH → hardness | Bicarbonate, acid/soda, calcium chloride |
| 2. Sanitization | Chlorine/bromine and auxiliaries | Shock, FC maintenance, bromine tablets, MPS, floc, algaecide |
| 3. Stabilizers | CYA last | Stabilizer (low CYA) |
Key rules:
- Shock comes before free-chlorine maintenance when both apply.
- BROMINE_BANK_OXIDIZE (MPS) when free bromine < 1 ppm (inactive bank); if bromine ≥ 1 ppm but below target → tablets.
- Incompatibilities do not change step numbers but add wait times (
minWaitHours) in simulation and warnings.
Chemical incompatibilities
When the plan includes incompatible products the same day, Chemical safety appears (consultation, technician app, Bromine tab):
| Code | Products | Min wait |
|---|---|---|
| ACID_CHLORINE | pH acid + chlorine | 4 h |
| CALCIUM_ALKALINITY | Calcium chloride + bicarbonate | 24 h |
| CYA_SHOCK | Stabilizer + active chlorine | 24 h |
| FLOC_CHLORINE | Flocculant + chlorine | 12 h |
| ALGAECIDE_CHLORINE | Algaecide + high chlorine | 8 h |
| NEUTRALIZER_CHLORINE | Neutralizer + chlorine | 24 h |
| NEUTRALIZER_BROMINE | Neutralizer + active bromine | 24 h |
| BROMINE_OXIDIZER_TABLET | MPS + bromine tablets | 8 h |
| BROMINE_NEUTRALIZER_OXIDIZER | Neutralizer + bromine oxidizer | 24 h |
Formula coefficients (calibration)
Editable under Settings → Chemistry (see CALIBRATION.md):
| Coefficient | Default | Notes |
|---|---|---|
chlorineNeutralizerPerM3PerPpm | 2.5 | Thiosulfate (Easy-pool) |
breakpointMultiplier | 3.0 | Combined-chlorine shock |
| Bromine divisors | per profile | BCDMH/DBDMH tablets, MPS |
Indicative only — calibrate with your catalog and field protocol.
Technical audit report and energy costs
v4 includes an audit engine that turns diagnoses (chemistry, hydraulics, equipment) into an indicative annual economic impact (€/year), similar to professional pool calculators but integrated with the ERP.
Electricity tariff and filtration hours
| Where | Setting |
|---|---|
| Settings → Chemistry → Operating costs | Electricity tariff (€/kWh, default 0.20) and filtration hours/day (default 8) |
| Filtration & pump tab | Per-pool override: tariff, hours, pump motor plate kW |
| Heat pump tab | Installed kW if different from recommended sizing |
Without plate kW, the engine estimates power from flow and head. Overrides live in calculatorProfile.operating and can be proposed via Propose pool profile changes.
Audit panel in consultation
| View | Content |
|---|---|
| Quick | Badge “Estimated operating impact: ~X €/year” and global installation index |
| Expert mode | Findings table (priority, €/year), filtration/heat-pump energy breakdown, chemistry & hydraulics sub-scores |
Typical findings: oversized pump (excess kWh), undersized pump/filter, high CYA (extra chemicals), undersized heat pump.
Audit PDF report
Technical audit report button → AUDIT variant PDF with executive summary, prioritized findings and energy section. Figures are indicative (tariff, real runtime, inverter, climate).
Engine validation
pnpm calculator:scenario:check # 14 scenarios + auditMinImpact / auditFinding expectations
pnpm test:chemical-dosing