Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Initial NPI-19 pressure sensor documentation #4105

Merged
merged 9 commits into from
Oct 7, 2024
Binary file added components/sensor/images/npi19.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
108 changes: 108 additions & 0 deletions components/sensor/npi19.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,108 @@
NPI-19 Pressure Sensor
===========================================

.. seo::
:description: Instructions for setting up NPI-19 pressure sensors with ESPHome
:image: npi19.jpg
:keywords: NPI-19 NPI19

The ``npi19`` sensor platform allows you to use your NPI-19 (`datasheet <https://www.amphenol-sensors.com/hubfs/AAS-920-699F-NovaSensor-NPI-19-I2C-061322-web.pdf>`__,
`product page <https://www.amphenol-sensors.com/en/novasensor/pressure-sensors/3358-npi-19-i2c>`__) pressure sensors with ESPHome.

.. figure:: images/npi19.jpg
:align: center
:width: 50.0%

NPI-19 Pressure Sensor.


Configuration
-------------
:ref:`I²C <i2c>` bus is required to be set up in your configuration for this sensor to work.

.. code-block:: yaml

# Example configuration entry
sensor:
- platform: npi19
raw_pressure:
name: "Raw Pressure"
temperature:
name: Temperature


Configuration variables
-----------------------

- **raw_pressure** (*Optional*): The information for the pressure sensor. See :ref:`npi19-converting`.

- All other options from :ref:`Sensor <config-sensor>`.

- **temperature** (*Optional*): The information for the temperature sensor. Readings in degrees celsius (°C).

- All other options from :ref:`Sensor <config-sensor>`.

- **i2c_id** (*Optional*, :ref:`config-id`): Manually specify the ID of the :ref:`I²C Component <i2c>`. Defaults to the default I²C bus.

- **address** (*Optional*, int): Manually specify the I²C address of the sensor.
All known sensors currently configured to ``0x28``. Defaults to ``0x28``.


.. _npi19-converting:

Converting units
-----------------

The NPI-19 pressure sensor is not calibrated to units, you have to convert the measurement to units yourself.

Estimated
*********

On page 1 of the `product application note <https://www.amphenol-sensors.com/hubfs/I2C%20NPI-19%20product%20application%20Note.pdf>`__
the value ``1638`` maps to approximately ``10%`` of the maximum value of the sensor (e.g. ``0.5`` psi for a ``5`` psi sensor);
the value ``14746`` maps to approximately ``90%`` of the maximum value of the sensor (e.g. ``4.5`` psi for a ``5`` psi sensor).
Use ``calibrate_linear`` filter to map these sensor values:

.. code-block:: yaml

# Extract of configuration
filters:
- calibrate_linear:
- 1638 -> 0.5
- 14746 -> 4.5

Calibrated
**********
1. Expose the sensor to a low known pressure, for example ``5`` psi.
2. Observe the value of the raw pressure sensor, for example ``1500``.
3. Expose the sensor to a high pressure, for example ``90`` psi.
4. Observe the value of the raw pressure sensor, for example ``14500``.
5. Use ``calibrate_linear`` filter to map the incoming value to the calibrated one:

.. code-block:: yaml

# Extract of configuration
filters:
- calibrate_linear:
- 1500 -> 5.0
- 14500 -> 90.0


Notes
-----

The NPI-19 I²C has a temperature output, however the manufacturer does
not specify its accuracy on the published datasheet. They indicate
that the sensor should not be used as a calibrated temperature
reading; it’s only intended for curve fitting data during
compensation.


See Also
--------

- :ref:`sensor-filters`
- `NPI-19 Product Page <https://www.amphenol-sensors.com/en/novasensor/pressure-sensors/3358-npi-19-i2c>`__
- `NPI-19 Datasheet <https://www.amphenol-sensors.com/hubfs/AAS-920-699F-NovaSensor-NPI-19-I2C-061322-web.pdf>`__
- `NPI-19 Product Application Note <https://www.amphenol-sensors.com/hubfs/I2C%20NPI-19%20product%20application%20Note.pdf>`__
- :ghedit:`Edit`
Binary file added images/npi19.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -480,6 +480,7 @@ Environmental
MPL3115A2, components/sensor/mpl3115a2, mpl3115a2.jpg, Temperature & Pressure
MS5611, components/sensor/ms5611, ms5611.jpg, Pressure
MS8607, components/sensor/ms8607, ms8607.jpg, Temperature & Humidity & Pressure
NPI-19, components/sensor/npi19, npi19.jpg, Pressure
NTC Thermistor, components/sensor/ntc, ntc.jpg, Temperature
PMWCS3, components/sensor/pmwcs3, pmwcs3.jpg, Soil moisture & Temperature
QMP6988, components/sensor/qmp6988, qmp6988_env3.png, Temperature & Pressure
Expand Down