esphome / esphome/feature-requests

Convert honeywellabp2_i2c to generic I2C DP/Temperature component

Open
#2,716 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
No language data
Stars
450
Forks
29
PR merge metrics
No merged PRs in 30d

Description

There are several I2C and SPI based differential pressure sensors that operate with simmilar parameters to the Honeywell ABP2 sensors, but the lower cost variants tend to only have lower resolution (14-bit pressure, 11-bit temperature) sensors onboard as opposed to the honeywell 24-bit sensors.

Adding support to the component for setting the sensor resolution would enable the use of lower cost sensors available from several other manufacturers.

https://github.com/esphome/esphome/tree/dev/esphome/components/honeywellabp2_i2c

Describe the problem you have/What new integration you would like

The existing honeywellabp2_i2c and honeywellabp2 components only support 24-bit Pressure and 24-bit Temperature Sensors.

I would like to see additional optional lines in the YAML configuration where the user can enter the Pressure Sensor and Temperature sensor resolution (in bits).

The additional lines would adjust the max/min counts in the Pressure Transfer function calculation, the maximum counts value in the temperature calculation, and adjust the temperature and pressure counter encoding to match the sensor resolution.

Please describe your use case for this integration and alternatives you've tried:

I have modified these fixed values manually via an external component to test the same code with the MS4525DO differential pressure sensor with some success, but making these user defined variables via the esphome yaml would make this more available to more users.

I do not have the coding ability to implement this myself.

Additional context

Differential pressure sensors sold for drone autopilot systems as airspeed sensors and are commonly available in pressure ranges that would make them usable for air filter DP monitoring. These sensors are often lower resolution, but available in much narrower pressure ranges, and at much lower costs than the Honeywell sensors. Examples include:

MEAS Spec series (e.g. MS4525DO, MS5525)
mRo I2C Airspeed Sensor JST-GH MS4525DO (mRo store)
Digital Differential Airspeed Sensor Kit (Drotek).
EagleTree Airspeed MicroSensor V3 (eagletreesystems)
Sensirion SDP3x Airspeed Sensor Kit
Holybro Digital Air Speed Sensor

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start in esphome/components/honeywellabp2_i2c and review how the existing component handles the fixed pressure and temperature resolutions. Compare that behavior with the manually modified external component described in the issue, then verify that YAML settings adjust the transfer-function counts and sensor counter encoding for the requested resolutions.

Written by the indexing model from the issue text.

Assessment

Tech stack
yaml
Domain
embedded-iot
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.