-
Notifications
You must be signed in to change notification settings - Fork 8.4k
Add Tdk invensense icp201xx pressure sensor support #83914
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
Add Tdk invensense icp201xx pressure sensor support #83914
Conversation
|
The following west manifest projects have changed revision in this Pull Request:
✅ All manifest checks OK Note: This message is automatically posted and updated by the Manifest GitHub Action. |
92248ff to
4e866f3
Compare
4e866f3 to
90baab8
Compare
|
Hi @MaureenHelm , |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please consider using the dsp.h q31_t here
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
At some point, it requires pure floats to compute logarithm.
I don't think dsp.h provides such support.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does it? The DSP header provide mechanism for multiplying fixed points which can be just as accurate. I'm OK with you using floats, but it does make the driver much more compute header when CONFIG_FPU=n.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I still don't think you actually need a float, you should be able to use a fixed point API.
90baab8 to
aedacd0
Compare
b6dd1a6 to
a22f192
Compare
|
@yperess, your review status is still on "request changes", could you please review my answers and approve if they make sense to you? |
|
@yperess Thanks ! |
icp201xx are barometric pressure and temperature sensors. https://invensense.tdk.com/smartpressure Signed-off-by: Remi Buisson <[email protected]>
Use official TDK Invensense driver for icp201xx sensor in tdk_hal module. Signed-off-by: Remi Buisson <[email protected]>
Add I2C and SPI variants for icp201xx. Signed-off-by: Remi Buisson <[email protected]>
Polls and reports pressure, temperature and altitude data Signed-off-by: Remi Buisson <[email protected]>
Reports generic barometric sensor interrupts * Data ready interrupt * Pressure threshold interrupt * Pressure changed interrupt Signed-off-by: Remi Buisson <[email protected]>
e7f9806
a22f192 to
e7f9806
Compare
|
@yperess @teburd @ubieda @MaureenHelm : This PR required a rebase after your validation, sorry to ask you again :( |
|
@kartben Thanks ;) |
|
@rbuisson-invn can you please take care of https://github.com/zephyrproject-rtos/zephyr/actions/runs/14310267206/job/40103313166#step:11:1 |
nevermind - #88266 |
drivers: sensor: icp201xx: supports icp201xx sensors
dts: supports icp201xx invn pressure sensor
samples: sensor: pressure_polling: barometric pressure, temperature and altitude generic sample
samples: sensor: pressure_interrupt: barometric pressure sensor interrupts generic sample
module: HAL TDK module
Adds official TDK Invensense Inc. driver in TDK HAL module for icp201xx sensor.
Add generic samples supporting this driver.
Validated with custom setup: nrf52dk_nrf52832 + icp201xx EVB board
Build ok by running:
west twister -T samples\sensor\pressure_polling -T samples\sensor\pressure_interrupt -p nrf52dk/nrf52832
Signed-off-by: Remi Buisson [email protected]