diff --git a/components/sensor/images/6897d.jpg b/components/sensor/images/6897d.jpg new file mode 100644 index 000000000..0da8ad2d3 Binary files /dev/null and b/components/sensor/images/6897d.jpg differ diff --git a/components/sensor/xgzp68xx.rst b/components/sensor/xgzp68xx.rst new file mode 100644 index 000000000..a9b5c6c2f --- /dev/null +++ b/components/sensor/xgzp68xx.rst @@ -0,0 +1,56 @@ +CFSensor XGZP68xx Series Differential Pressure Sensor +===================================================== + +.. seo:: + :description: Instructions for setting up the CFSensor XGZP68xx Series Differential Pressure sensor. + :image: 6897d.jpg + :keywords: XGZP68xx, XGZP6897, XGZP6899, XGZP6899D, XGZP6897D + +The XGZP68xx Differential Pressure sensor allows you to use digital differential pressure sensors such as the 6899D +(`datasheet `__) or +6897D Series (`datasheet `__) +sensors with ESPHome. The sensors pressure ranges are specified in the datasheets. + +Calibrating the sensor can be done by checking the value that is returned when +the ports are open to the air. This value should be 0. If it is not, you can use the offset option to correct the +reading. For example, if your sensor is reading -40Pa when the ports are disconnected, you can set the offset to 40. + +.. figure:: images/6897d.jpg + :align: center + :width: 30.0% + + XGZP6897D Differential Pressure Sensor. + (Credit: `CFSensor `__, image cropped and compressed) + +.. _Sparkfun: https://www.sparkfun.com/products/17874 + +To use the sensor, set up an :ref:`I²C Bus ` and connect the sensor to the specified pins. + +.. code-block:: yaml + + # Example configuration entry + # It uses a filter offset to calibrate the sensor + sensor: + - platform: xgzp68xx + temperature: + name: "Temperature" + pressure: + name: "Differential Pressure" + filters: + - offset: 40.5 + +Configuration variables: +------------------------ + +- **temperature** (*Optional*): All options from :ref:`Sensor `. +- **pressure** (*Optional*): All options from :ref:`Sensor `. +- **k_value** (*Optional*, int): The K value comes from the datasheet. It will default to 4096 if not specified, which is appropriate for a sensor with a range of +/- 0.5kPa. +- **update_interval** (*Optional*, :ref:`config-time`): The interval to check the sensor. Defaults to ``60s``. + + +See Also +-------- +- `esphome-pressure device `__ +- :ref:`sensor-filters` +- :apiref:`sdp3x/sdp3x.h` +- :ghedit:`Edit` diff --git a/images/6897d.jpg b/images/6897d.jpg new file mode 100644 index 000000000..a2b3cf0ec Binary files /dev/null and b/images/6897d.jpg differ diff --git a/index.rst b/index.rst index ac97e0df4..24e7af3f5 100644 --- a/index.rst +++ b/index.rst @@ -342,6 +342,7 @@ Environmental TMP117, components/sensor/tmp117, tmp117.jpg, Temperature TMP1075, components/sensor/tmp1075, tmp1075.jpg, Temperature HYT271, components/sensor/hyt271, hyt271.jpg, Temperature & Humidity + XGZP68xx Series, components/sensor/xgzp68xx, 6897d.jpg, Differential Pressure Light