--- title: "Klereo KNX table: DPTs, statuses and commands for Pool’nX" description: "Klereo reference table for KNX: sensors, outputs, pool modes, alert and probe codes, water setpoint, with DPTs, units and accepted values." canonical: https://wiki.can-nx.com/en/guides/pool-klereo-knx/ language: en product: Pool’nX audience: - administrateur - installateur context: "Pool’nX with a Klereo controller: Pool Status and Pool Commands tables" --- # Klereo KNX table: DPTs, statuses and commands for Pool’nX Context: Pool’nX with a Klereo controller: Pool Status and Pool Commands tables This reference table lists the statuses that a Pool’nX reads on a Klereo pool controller and the commands it passes on to it from the KNX bus: displayed name, key, DPT, unit and accepted values. It also gives the meaning of the pool modes, alert codes and probe codes. Klereo outputs (lighting, filtration, heating, auxiliaries) use a code that combines their mode and their state. Intended for the installer who prepares the KNX objects, the visualization or the logic of the pool. The procedure for entering addresses is described in [the KNX statuses](https://wiki.can-nx.com/en/guides/pool-knx-status/) and [the KNX commands](https://wiki.can-nx.com/en/guides/pool-knx-commands/). The key is also used by the [TCP client](https://wiki.can-nx.com/en/guides/pool-tcp-client/). ## Read the output mode and state code The **Lighting**, **Filtration**, **Heating** and **Auxiliary 1** to **Auxiliary 9** outputs are read and controlled with a DPT 5.010 value: the tens digit gives the mode, the units digit gives the state. The **Value** column shows the meaning followed by the code. | Value | Displayed label | | --- | --- | | 0 | **Manual Mode: Off** | | 1 | **Manual Mode: On** | | 10 | **Time Range Mode: Off** | | 11 | **Time Range Mode: On** | | 12 | **Time Range Mode** | | 20 | **Timer Mode: Off** | | 21 | **Timer Mode: On** | | 22 | **Timer Mode** | | 30 | **Regulated Mode: Off** | | 31 | **Regulated Mode: On** | **pH corrector**, **Disinfectant** and **Hybrid Disinfectant** use the same code, displayed as a number. ## Statuses sent on the KNX bus | Name | Key | DPT | Unit or value | | --- | --- | --- | --- | | **Water temperature** | `tempWater` | 9.001 | °C | | **Air temperature** | `tempAir` | 9.001 | °C | | **Internal temperature** | `tempInt` | 9.001 | °C | | **pH** | `pH` | 9.001 | pH | | **ORP** | `orp` | 14.027 | mV | | **Chlorine** | `chlorine` | 9.002 | mg/l | | **Salinite** | `salinity` | 14.056 | mg/l | | **TAC/TH** | `tacth` | 14.056 | mg/l | | **Turbidite** | `turbidite` | 14.056 | NFU | | **Pressure** | `pressure` | 14.066 | mbar | | **Water level** | `waterLevel` | 5.010 | % | | **Cover** | `coveringSec` | 6.010 | % | | **pH can**, **Disinfectant can** | `canPH`, `canTR` | 5.001 | %: 0 empty, 100 full | | **Pool mode**, **Treatment mode**, **pH mode**, **Heating mode** | `poolMode`, `traitMode`, `pHMode`, `heaterMode` | 5.010 | Klereo mode, see the pool modes | | **Chlorine setpoint** | `chlorineSetpoint` | 9.002 | mg/l | | **pH setpoint** | `pHSetpoint` | 9.002 | pH | | **ORP setpoint** | `ORPSetpoint` | 14.027 | mV | | **Water temperature setpoint** | `waterTempSetpoint` | 9.001 | °C | | **Lighting**, **Filtration**, **Heating** | `lighting`, `filtration`, `heating` | 5.010 | mode and state code | | **Auxiliary 1** to **Auxiliary 9** | `aux1` to `aux9` | 5.010 | mode and state code | | **pH corrector**, **Disinfectant**, **Hybrid Disinfectant** | `corpH`, `disinfectant`, `hybridDisinfectant` | 5.010 | mode and state code | | **Flow meter 1**, **Flow meter 2** | `debit1.meter`, `debit2.meter` | 13.001 | L | | **Alert number** | `alertCount` | 5.010 | number of active alerts | | **High alert** | `alertHigh` | 1.001 | 1 if an alert of level 5 or higher is active | | **Medium alert** | `alertMedium` | 1.001 | 1 if an alert of level below 5 is active | | **Alert Code 0** to **Alert Code 4** | `alertCode0` to `alertCode4` | 5.010 | Klereo alert code, see the alert codes | | **Alert Param 0** to **Alert Param 4** | `alertParam0` to `alertParam4` | 5.010 | alert parameter, probe code for alerts 1, 7, 8 and 10 | Alerts are sorted from most to least important: **Alert Code 0** holds the most important one. A row without a value is not sent: missing sensor, non-existent output, flow meter not configured as a meter, empty alert slot. Its address then keeps the last value received; read **Alert number** to know how many alerts are active. The **Flow meter 1 (disabled)** and **Flow meter 2 (disabled)** rows never have a value. A flow sensor configured in Klereo as a flow rate (m³/h) or as a flow switch sends no value on the bus. Only the water meter is passed on, in litres, and only if the pool has a Gen3 flow probe (probe code 15 or 24). Outputs and sensors renamed in Klereo appear under their Klereo name in the **Name** column; [the ETS export](https://wiki.can-nx.com/en/guides/pool-knx-ets-export/) uses the standard name. ## Read the pool modes **Pool mode**, **Treatment mode**, **pH mode** and **Heating mode** pass on the Klereo controller setting, without conversion. The **Value** column shows the number only. | Value | Pool mode | Treatment mode | pH mode | Heating mode | | --- | --- | --- | --- | --- | | 0 | Stop | No disinfectant | Stop | No heating | | 1 | Eco | Liquid chlorine | pH-Minus | Heating or heat pump by dry contact | | 2 | Normal | Generic electrolyser | pH-Plus | Heat pump controlled by bus | | 3 | Monitoring | Klereo 1 electrolyser | – | – | | 4 | Winterization | Oxygen | – | – | | 5 | Reserved | Bromine | – | – | | 6 | Installation | Klereo 2 electrolyser | – | – | | 7 | Reserved | Reserved | – | – | | 8 | – | Klereo 3 electrolyser | – | – | ## Read the alert and probe codes **Alert Code 0** to **Alert Code 4** carry the Klereo code of the alert. For codes 1, 7, 8 and 10, **Alert Param 0** to **Alert Param 4** give the probe concerned, at the same rank as the code. For example, if **Alert Code 0** is 7 and **Alert Param 0** is 17 (example), the pH Gen3 probe reports a minimum. | Alert code | Meaning | | --- | --- | | 0 | No alert | | 1 | Sensor out of order | | 2 | Relay configuration problem | | 3 | pH/ORP inversion | | 5 | Low battery | | 6 | Calibration | | 7 | Minimum | | 8 | Maximum | | 10 | Not received | | 21 | Memory fault | | 22 | Circulation problem | | 23 | Insufficient filtration time ranges | | 25 | High pH, ineffective disinfectant | | 26 | Undersized filtration | | 28 | Regulation stopped | | 29 | Manual filtration off | | 30 | Installation mode | | 31 | Shock treatment | | 34 | Regulation disabled | | 35 | Maintenance | | 36 | Daily limit | | 37 | Multisensor faulty | | 38 | Electrolyser link | | 39 | Bromine problem | | 40 | Electrolyser cell | | 41 | Heat pump link | | 42 | Sensor configuration problem | | 43 | Electrolyser safety | | 44 | Dosing pump maintenance | | 45 | Learning | | 46 | Analysis water flow | | 47 | Cover configuration | | 48 | Uncontrolled filtration | | 49 | Check the clock | | 50 | Heat pump E | | 51 | Heat pump P | | 52 | Heat pump F | | 53 | Filtration pump link | | 54 | Filtration pump | | 55 | Gen3 multisensor required | Codes missing from the table are reserved by Klereo. | Probe code | Probe | | --- | --- | | 0 | Box temperature | | 1 | Air 1 | | 2 | Water temperature | | 3 | pH Gen1 | | 4 | ORP Gen1 | | 5 | Pressure Gen1 | | 6 | pH can level | | 7 | Treatment can level | | 8 | Cover state | | 9 | pH Gen2 | | 10 | ORP Gen2 | | 11 | Chlorine Gen2 | | 12 | Water temperature Gen2 | | 13 | Pressure Gen2-A | | 14 | Pressure Gen2-B | | 15 | Flow 1 Gen3 | | 16 | Water temperature Gen3 | | 17 | pH Gen3 | | 18 | ORP Gen3 | | 19 | Air temperature 2 | | 20 | Air temperature 3 | | 21 | Pressure Gen3 | | 22 | Chlorine Gen3 | | 23 | Flocculant can | | 24 | Flow 2 Gen3 | | 25 to 31 | Air 4 to Air 10 | ## Commands received from the KNX bus | Name | Key | DPT | Accepted values | | --- | --- | --- | --- | | **Lighting** | `lighting` | 5.010 | 0, 1, 12, 22 | | **Filtration** | `filtration` | 5.010 | 0, 1, 12, 31 | | **Heating** | `heating` | 5.010 | 0, 31 | | **Auxiliary 1** to **Auxiliary 9** | `aux1` to `aux9` | 5.010 | 0, 1, 12, 22 | | **Water temperature setpoint** | `waterTempSetpoint` | 9.001 | 0 to 59 °C | | **Water temperature setpoint +/-** | `waterTempSetpoint+-` | 1.001 | 0: decrease by 1 °C; 1: increase by 1 °C | For an output, a value that is not in the list shows **invalid** followed by the value in the command table, and nothing is sent. A setpoint outside 0 to 59 °C is not passed on. The **+/-** command starts from the setpoint read: it has no effect as long as **Water temperature setpoint** has no value. After each command, Pool’nX waits for Klereo’s confirmation, then reads the pool again and resends the active statuses. ## Check the result 1. Send a test command, for example **1** (example) on the **Lighting** address. 2. In **Pool Commands**, the **Value** column shows **Manual Mode: On (1)**. 3. In **Pool Status**, **Lighting** shows the same state after Klereo’s confirmation, and the lighting switches on. If you run into difficulties, see [Pool’nX troubleshooting](https://wiki.can-nx.com/en/guides/pool-help/). French labels: **Température de l'eau**, **Température de l'air**, **Température interne**, **Redox**, **Chlore**, **Pression**, **Niveau d'eau**, **Couverture**, **Éclairage**, **Filtration**, **Chauffage**, **Auxiliaire 1**, **Debit mètre 1**, **Nombre d'alerte**, **Alerte importante**, **Alerte moyennement importante**, **Mode Piscine**, **Mode de traitement**, **Alerte Code 0**, **Alerte Param 0**, **Consigne de la température d'eau +/-**, **Mode Manuel: Arrêt**, **Mode Manuel: Marche**, **Mode Plage Horaire**, **Mode Minuterie**, **Mode Régulé: Marche**.