calibration - Multi-point calibration library

group calibration

ESP-IDF Multi-point calibration library.

Copyright (c) 2023 Ruslan V. Uss unclerus@gmail.com

BSD Licensed as described in the file LICENSE

Enums

enum calibration_method_t

Approximation methods.

Values:

enumerator CALIBRATION_LINEAR

Fast linear approximation.

The more points, the more accurate approximation

Functions

esp_err_t calibration_init(calibration_handle_t *handler, size_t count, calibration_method_t type)

Init calibration handle.

Allocates memory to store calibration points, fills handle structure.

Parameters:
  • handler – Pointer to calibration handle structure

  • count – Maximum number of calibration points

  • type – Approximation type

Returns:

ESP_OK on success

esp_err_t calibration_add_point(calibration_handle_t *handler, float code, float value)

Add calibration point.

Parameters:
  • handler – Pointer to calibration handle structure

  • code – Raw value

  • value – Calibrated value

Returns:

ESP_OK on success

esp_err_t calibration_add_points(calibration_handle_t *handler, const calibration_point_t *points, size_t count)

Add multiple calibration points.

Parameters:
  • handler – Pointer to calibration handle structure

  • points – Array of calibration points

  • count – Number of calibration points to add

Returns:

ESP_OK on success

esp_err_t calibration_get_value(calibration_handle_t *handler, float code, float *value)

Get calibrated value by raw value.

Parameters:
  • handler – Pointer to calibration handle structure

  • code – Raw value

  • value[out] Calculated calibrated value

Returns:

ESP_OK on success

esp_err_t calibration_free(calibration_handle_t *handler)

Free calibration handle.

Parameters:

handler – Pointer to calibration handle structure

Returns:

ESP_OK on success

struct calibration_point_t
#include <calibration.h>

Calibration point.

Public Members

float code

Raw value.

float value

Calibrated value.

struct calibration_handle_t
#include <calibration.h>

Calibration handler.

Public Members

calibration_method_t type

Approximation method.

calibration_point_t *points

Ordered list of calibration points.

size_t count

Maximum number of calibration points.

size_t filled

Current number of calibration points.