Calibration - TheRealFalseReality/aquapi GitHub Wiki

AquaPi Sensors & EZO Circuits Calibration Instructions

This guide provides step-by-step instructions to calibrate various AquaPi EZO circuits. Refer to official Atlas Scientific Documentation for detailed probe specifications and additional commands.

[!NOTE]

  • These instructions assume you are using the Home Assistant UI or the ESPHome Web Server.
  • Use entities under AquaPi Device Integrations in Home Assistant for easier calibration. Calibration commands can be sent using selector entities or the "Actions" feature under Developer Tools.
  • Proper probe handling is critical: Always rinse each probe with RO or distilled water after use, shake gently to remove air bubbles, and allow readings to stabilize for at least 30 seconds prior to calibration.
  • Check that the white connector is securely attached to EZO circuits, as loose connections can prevent detection.
  • Consider adding custom cards (see example at the end) for easy access to relevant calibration entities in Home Assistant.

Dallas Temperature

Calibrating the temperature sensor is optional but can improve accuracy.

Calibration Materials

  • Ice water (use a cup with plenty of ice).
  • Boiling water (exercise caution to prevent burns).

Calibration Steps

  1. Boiling Water Calibration:
    • Place the temperature probe in boiling water.
    • Wait 1–2 minutes for stabilization.
    • Record the temperature, which should read close to 100°C (adjust for altitude if necessary).
  2. Freezing Water Calibration:
    • Submerge the probe in ice water (ensure good ice coverage).
    • Position the probe in the middle of the cup, not touching the sides or bottom.
    • Wait 1–2 minutes for stabilization.
    • Record the temperature, which should read close to 0°C.
  3. Configure ESPHome Offsets:
    • Edit your ESPHome configuration file to adjust the recorded offsets:
      substitutions:
        cal_0: "Recorded Freezing Temp (e.g., 2.0)"
        cal_100: "Recorded Boiling Temp (e.g., 97.0)"
      
    • Restart the AquaPi and compare readings with an analog thermometer.

EZO-EC - Conductivity

Calibration Steps

  1. Set Output Units:
    Use the entity EC - Command Select to select Output Units - All (Default) and press the "Send Command" button.
  2. Dry Calibration @ 0 µS/cm:
    Select and send the Calibrate @ DRY command. This will reset all previous calibrations.
  3. Low Calibration @ 12,880 µS/cm:
    Select and send the Calibrate @ LOW = 12880 command. Note: Readings do not change after this step.
  4. High Calibration @ 80,000 µS/cm:
    Select and send the Calibrate @ HIGH = 80000 command. Readings will update after this step.
  5. Verify Calibration:
    Select Check Calibration. Confirm that sensor.aquapi_XXXXXX_ec_command_result outputs 2 if both points are calibrated.
  6. TDS Value Adjustment (Recommended):
    Select and send Set TDS Value to NaCl - 0.48 for more accurate results when measuring Total Dissolved Solids.

EZO-PH - pH

Calibration Steps

  1. Midpoint Calibration (7.0 pH solution):
    • Use pH - Command Select.
    • Select and send the Calibrate @ MID = 7 command.
  2. Low Calibration (4.0 pH solution):
    • Select and send the Calibrate @ LOW = 4 command.
  3. High Calibration (10.0 pH solution):
    • Select and send the Calibrate @ HIGH = 10 command.
    • Alternatively, you may use a 10.01 solution and corresponding command if available.
  4. Verify Calibration:
    • Select and send the Check Calibration command.
    • Verify that sensor.aquapi_XXXXXX_ph_command_result outputs:
      • 2 for a two-point calibration (Low + Mid).
      • 3 for a three-point calibration (Low, Mid, High).

EZO-DO - Dissolved Oxygen

Calibration Steps

  1. Set Output Units:
    Use the DO - Command Select entity to select Output Units - All (Default) and press the "Send Command" button.
  2. Air Calibration (9.09 mg/L):
    • Select and send the Calibrate @ DRY command (in the open air, at sea level). This will reset all previous calibrations.
  3. Low Calibration (0 mg/L or 0% O₂):
    • Submerge the sensor probe in 0 mg/L solution.
    • Select and send Calibrate @ 0% command for the circuit to recognize the zero-point calibration.
  4. Verify Calibration:
    • Select and send the Check Calibration command.
    • Confirm that sensor.aquapi_XXXXXX_do_command_result outputs 2 after both calibration steps.
  5. Saltwater Compensation (Recommended):
    • Select and send the Salinity Compensation @ 35ppt command for saltwater tanks.
    • Verify this setting using the Salinity Compensation Value command; the output will include the salinity in ppt.

EZO-ORP - Oxidation Reduction Potential

Calibration Steps

  1. Single-Point Calibration (225 mV Solution):
    • Use the ORP - Command Select entity.
    • Select and send the Calibrate @ 225 mV command. This will reset previous calibrations.
  2. Verify Calibration:
    • Select and send the Check Calibration command.
    • Confirm that sensor.aquapi_XXXXXX_orp_command_result outputs 1.

EZO-PMP - Peristaltic Dosing Pump

[!TIP] Set up the dosing pump with tubing and a graduated cylinder. Prime the pump with the Dose Continuously button before starting calibration.

Calibration Steps

  1. Set Initial Volume:
    • Enter a specific value (e.g., 10) into the Volume to Dose input field.
    • Use the Dose Volume button to dispense the liquid into the graduated cylinder.
  2. Measure Dispensed Volume:
    • Measure the actual dispensed volume (e.g., it might be 8.4 mL).
    • Input the measured value (e.g., 8.4) into the Volume to Dose field.
    • Press the Set Calibration Volume button to save this calibration.
  3. Test Calibration:
    • Enter a value into Volume to Dose (e.g., 10) and test the pump using the Dose Volume button.
    • If the dispensed amount is inaccurate, repeat the steps above to refine calibration.

Sensors Disabled by Default

The following EZO circuits are disabled by default in Home Assistant. Ensure you enable them in the Home Assistant UI before using them:

  • EZO-CO₂ Circuit (Carbon Dioxide)
  • EZO-HUM Circuit (Humidity)
  • EZO-O₂ Circuit (Dissolved Oxygen)
  • EZO-RTD Circuit (Temperature)

To enable them:

  1. Navigate to Settings > Devices & Services > Entities in Home Assistant.
  2. Filter by disabled_by_default.
  3. Enable the required entity.

Example Home Assistant Calibration Cards

Provide easy access to calibration commands and sensor values directly in Home Assistant.

Generic Sensor Calibration Card:

type: entities
entities:
  - entity: sensor.aquapi_XXXXXX_conductivity
    name: Conductivity Value
  - entity: sensor.aquapi_XXXXXX_ec_raw_value
    name: Raw Sensor Value
  - entity: sensor.aquapi_XXXXXX_ec_command_result
    name: Command Output
  - entity: select.aquapi_XXXXXX_ec_command_select
    name: Calibration Command Selector
  - entity: button.aquapi_XXXXXX_ec_command_send_selected
    name: Send Command
  - entity: button.aquapi_XXXXXX_ec_read
    name: Start Continuous Reading
header:
  type: graph
  entity: sensor.aquapi_XXXXXX_salinity
title: AquaPi - EC Sensor Calibration

Need More Help?