max1704x: Driver for MAX17043/MAX17044/MAX17048/MAX17049 battery fuel gauge
Defines
- MAX1704X_I2C_ADDR
 Functions
- esp_err_t max1704x_init_desc(max1704x_t *dev, i2c_port_t port, gpio_num_t sda_gpio, gpio_num_t scl_gpio)
 Initialize device descriptor.
- Parameters:
 
dev – Device descriptor
port – I2C port
sda_gpio – SDA GPIO
scl_gpio – SCL GPIO
- Returns:
 
ESP_OKon success
- esp_err_t max1704x_free_desc(max1704x_t *dev)
 Free device descriptor.
- Parameters:
 dev – Device descriptor
- Returns:
 
ESP_OKon success
- esp_err_t max1704x_quickstart(max1704x_t *dev)
 Quickstart battery fuel gauge.
- Parameters:
 dev – Device descriptor
- Returns:
 
ESP_OKon success
- esp_err_t max1704x_get_voltage(max1704x_t *dev, float *voltage)
 Get battery voltage.
- Parameters:
 
dev – Device descriptor
voltage – Battery voltage
- Returns:
 
ESP_OKon success
- esp_err_t max1704x_get_soc(max1704x_t *dev, float *soc)
 Get state of charge.
- Parameters:
 
dev – Device descriptor
soc – State of charge
- Returns:
 
ESP_OKon success
- esp_err_t max1704x_get_crate(max1704x_t *dev, float *crate)
 Get rate of battery charge or discharge.
- Parameters:
 
dev – Device descriptor
crate – Rate of charge or discharge
- Returns:
 
ESP_OKon success
- esp_err_t max1704x_get_version(max1704x_t *dev, uint16_t *version)
 Get the production version of the chip.
- Parameters:
 
dev – Device descriptor
version – Production version
- Returns:
 
ESP_OKon success
- esp_err_t max1704x_get_config(max1704x_t *dev)
 Get the configuration register.
- Parameters:
 dev – Device descriptor
- Returns:
 
ESP_OKon success
- esp_err_t max1704x_set_config(max1704x_t *dev, max1704x_config_t *config)
 Set the configuration register.
- Parameters:
 
dev – Device descriptor
config – Configuration register
- Returns:
 
ESP_OKon success
- esp_err_t max1704x_get_status(max1704x_t *dev)
 Get the status register.
- Parameters:
 dev – Device descriptor
- Returns:
 
ESP_OKon success
- esp_err_t max1704x_set_status(max1704x_t *dev, max1704x_status_t *status)
 Set the status register.
Note
Use this function to clear alert flags after servicing the alert
- Parameters:
 
dev – Device descriptor
status – Status register
- Returns:
 
ESP_OKon success
- struct max1704x_status_t
  #include <max1704x.h>Alert Status structure.
Public Members
- bool reset_indicator
 Reset indicator.
- bool voltage_high
 Voltage high alert.
- bool voltage_low
 Voltage low alert.
- bool voltage_reset
 Voltage reset alert.
- bool soc_low
 SOC low alert, set when SOC cross empty_alert_thresh.
- bool soc_change
 SOC change alert, set when SOC change is at least 1%.
- bool vreset_alert
 Set to enable voltage reset alert under conditions specified in the valert register.
- struct max1704x_config_t
  #include <max1704x.h>MAX1704X configuration structure.
Public Members
- uint8_t rcomp
 RCOMP register value - default 0x97.
- bool sleep_mode
 Sleep mode - set to true to enter sleep mode.
- bool soc_change_alert
 SOC change alert - enable/disable SOC change alert.
- bool alert_status
 Alert status - read to check if alert has been triggered.
- uint8_t empty_alert_thresh
 Empty alert threshold - default 0x1C (4%, 32 - ATHD)
- uint8_t active_threshold
 Exits hibernation when IOCV-CELLI above this threshold.
- uint8_t hibernate_threshold
 Enters Hibernation when CRATE falls below this threshold.
- struct max1704x_t
  #include <max1704x.h>Device descriptor.
Public Members
- i2c_dev_t i2c_dev
 
- max1704x_model_t model
 
- max1704x_config_t config
 
- max1704x_status_t status