NPI-19 Pressure Sensor
The npi19 sensor platform allows you to use your NPI-19 (datasheet,
product page) pressure sensors with ESPHome.

Configuration
I²C bus is required to be set up in your configuration for this sensor to work.
# Example configuration entry
sensor:
- platform: npi19
raw_pressure:
name: "Raw Pressure"
temperature:
name: TemperatureConfiguration variables
raw_pressure (Optional): The information for the pressure sensor. See Converting units.
All other options from Sensor.
temperature (Optional): The information for the temperature sensor. Readings in degrees celsius (°C).
All other options from Sensor.
i2c_id (Optional, ID): Manually specify the ID of the I²C Component. 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 to0x28.
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
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:
# Extract of configuration
filters:
- calibrate_linear:
- 1638 -> 0.5
- 14746 -> 4.5Calibrated
- Expose the sensor to a low known pressure, for example
5psi. - Observe the value of the raw pressure sensor, for example
1500. - Expose the sensor to a high pressure, for example
90psi. - Observe the value of the raw pressure sensor, for example
14500. - Use
calibrate_linearfilter to map the incoming value to the calibrated one:
# Extract of configuration
filters:
- calibrate_linear:
- 1500 -> 5.0
- 14500 -> 90.0Notes
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.