impulse_sensor - Driver for sensors with impulse output like fluid flow, shaft rotation, windspeed sensors. =================================================================

group impulse_sensor

ESP-IDF driver for impulse sensors.

Copyright (c) 2024 Jakub Turek qb4.dev@gmail.com

BSD Licensed as described in the file LICENSE

Defines

IMP_SENSOR_DEFAULT_SF

default scale factor

IMP_SENSOR_DEFAULT_MEAS_PERIOD

default measurement period[1sec]

Typedefs

typedef void *imp_sensor_t

Device descriptor.

Functions

esp_err_t imp_sensor_init(const imp_sensor_config_t *conf, imp_sensor_t *imp_sensor)

Init impulse sensor.

Parameters:
  • conf – Pointer to sensor config

  • imp_sensor[out] Pointer to created sensor object

Returns:

ESP_OK on success

esp_err_t imp_sensor_deinit(imp_sensor_t *imp_sensor)

Deinit impulse sensor.

Parameters:

imp_sensor – Pointer to sensor device

Returns:

ESP_OK on success

esp_err_t imp_sensor_get_value(imp_sensor_t *imp_sensor, float *value)

Deinit impulse sensor.

Parameters:
  • imp_sensor – Pointer to sensor device

  • value[out] Output value multiplied by scale factor

Returns:

ESP_OK on success

struct imp_sensor_config_t
#include <impulse_sensor.h>

Public Members

gpio_num_t input_pin

GPIO input pin.

const float scale_factor

scale factor

const uint32_t meas_period

measurement period[msecs]