hx711 - Driver for HX711 24-bit ADC for weigh scales

group hx711

ESP-IDF driver for HX711 24-bit ADC for weigh scales.

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

BSD Licensed as described in the file LICENSE

Enums

enum hx711_gain_t

Gain/channel.

Values:

enumerator HX711_GAIN_A_128

Channel A, gain factor 128.

enumerator HX711_GAIN_B_32

Channel B, gain factor 32.

enumerator HX711_GAIN_A_64

Channel A, gain factor 64.

Functions

esp_err_t hx711_init(hx711_t *dev)

Initialize device.

Prepare GPIO pins, power up device and set gain

Parameters:

dev – Device descriptor

Returns:

ESP_OK on success, ESP_ERR_TIMEOUT if device not found

esp_err_t hx711_power_down(hx711_t *dev, bool down)

Set device power up/down.

Parameters:
  • dev – Device descriptor

  • down – Set device power down if true, power up otherwise

Returns:

ESP_OK on success

esp_err_t hx711_set_gain(hx711_t *dev, hx711_gain_t gain)

Set device gain and channel.

Parameters:
  • dev – Device descriptor

  • gain – Gain + channel value

Returns:

ESP_OK on success, ESP_ERR_TIMEOUT if device not found

esp_err_t hx711_is_ready(hx711_t *dev, bool *ready)

Check if device ready to send data.

Parameters:
  • dev – Device descriptor

  • ready[out] true if data ready

Returns:

ESP_OK on success

esp_err_t hx711_wait(hx711_t *dev, size_t timeout_ms)

Wait for device to become ready.

Parameters:
  • dev – Device descriptor

  • timeout_ms – Maximum time to wait, milliseconds

Returns:

ESP_OK on success

esp_err_t hx711_read_data(hx711_t *dev, int32_t *data)

Read raw data from device.

Please call this function only when device is ready, otherwise communication errors may occur

Parameters:
  • dev – Device descriptor

  • data[out] Raw ADC data

Returns:

ESP_OK on success

esp_err_t hx711_read_average(hx711_t *dev, size_t times, int32_t *data)

Read average data.

Parameters:
  • dev – Device descriptor

  • times – Count of samples to read

  • data[out] Average ADC data

Returns:

ESP_OK on success

struct hx711_t
#include <hx711.h>

Device descriptor.