|
Firmware SDK
|
Driver for soil sensor. More...
Data Structures | |
| struct | twr_soil_sensor_eeprom_header_t |
| struct | twr_soil_sensor_eeprom_t |
Typedefs | |
| typedef struct twr_soil_sensor_t | twr_soil_sensor_t |
| Soil sensor instance. | |
| typedef struct twr_soil_sensor_sensor_t | twr_soil_sensor_sensor_t |
Enumerations | |
| enum | twr_soil_sensor_event_t { TWR_SOIL_SENSOR_EVENT_ERROR = 0 , TWR_SOIL_SENSOR_EVENT_UPDATE = 1 } |
| Callback events. More... | |
| enum | twr_soil_sensor_error_t { TWR_SOIL_SENSOR_ERROR_NONE = 0 , TWR_SOIL_SENSOR_ERROR_SENSOR_MODULE_INITIALIZE = 1 , TWR_SOIL_SENSOR_ERROR_SENSOR_MODULE_POWER_UP = 2 , TWR_SOIL_SENSOR_ERROR_NO_SENSOR_FOUND = 3 , TWR_SOIL_SENSOR_ERROR_TMP112_INITIALIZE = 4 , TWR_SOIL_SENSOR_ERROR_EEPROM_HEADER_READ = 5 , TWR_SOIL_SENSOR_ERROR_EEPROM_SIGNATURE = 6 , TWR_SOIL_SENSOR_ERROR_EEPROM_VERSION = 7 , TWR_SOIL_SENSOR_ERROR_EEPROM_PAYLOAD_LENGTH = 8 , TWR_SOIL_SENSOR_ERROR_EEPROM_PAYLOAD_READ = 9 , TWR_SOIL_SENSOR_ERROR_EEPROM_PAYLOAD_CRC = 10 , TWR_SOIL_SENSOR_ERROR_ZSSC3123_INITIALIZE = 11 , TWR_SOIL_SENSOR_ERROR_TMP112_MEASUREMENT_REQUEST = 12 , TWR_SOIL_SENSOR_ERROR_ZSSC3123_MEASUREMENT_REQUEST = 13 , TWR_SOIL_SENSOR_ERROR_TMP112_DATA_FETCH = 14 , TWR_SOIL_SENSOR_ERROR_ZSSC3123_DATA_FETCH = 15 } |
| Error numbers. More... | |
Functions | |
| void | twr_soil_sensor_init (twr_soil_sensor_t *self) |
| Initialize Soil sensor. More... | |
| void | twr_soil_sensor_init_multiple (twr_soil_sensor_t *self, twr_soil_sensor_sensor_t *sensors, int sensor_count) |
| Initialize multiple Soil sensor. More... | |
| void | twr_soil_sensor_set_event_handler (twr_soil_sensor_t *self, void(*event_handler)(twr_soil_sensor_t *, uint64_t, twr_soil_sensor_event_t, void *), void *event_param) |
| Set callback function. More... | |
| void | twr_soil_sensor_set_update_interval (twr_soil_sensor_t *self, twr_tick_t interval) |
| Set measurement interval. More... | |
| int | twr_soil_sensor_get_sensor_found (twr_soil_sensor_t *self) |
| Get sensors found. More... | |
| bool | twr_soil_sensor_measure (twr_soil_sensor_t *self) |
| Start measurement manually. More... | |
| bool | twr_soil_sensor_get_temperature_raw (twr_soil_sensor_t *self, uint64_t device_address, int16_t *raw) |
| Get measured temperature as raw value. More... | |
| bool | twr_soil_sensor_get_temperature_celsius (twr_soil_sensor_t *self, uint64_t device_address, float *celsius) |
| Get measured temperature in degrees of Celsius. More... | |
| bool | twr_soil_sensor_get_temperature_fahrenheit (twr_soil_sensor_t *self, uint64_t device_address, float *fahrenheit) |
| Get measured temperature in degrees of Fahrenheit. More... | |
| bool | twr_soil_sensor_get_temperature_kelvin (twr_soil_sensor_t *self, uint64_t device_address, float *kelvin) |
| Get measured temperature in kelvin. More... | |
| bool | twr_soil_sensor_get_cap_raw (twr_soil_sensor_t *self, uint64_t device_address, uint16_t *raw) |
| Get capacite as raw value. More... | |
| bool | twr_soil_sensor_get_moisture (twr_soil_sensor_t *self, uint64_t device_address, int *moisture) |
| Get measured moisture in percent. More... | |
| int | twr_soil_sensor_get_index_by_device_address (twr_soil_sensor_t *self, uint64_t device_address) |
| Get device index by its device address. More... | |
| uint64_t | twr_soil_sensor_get_device_address_by_index (twr_soil_sensor_t *self, int index) |
| Get device device address by its index. More... | |
| char * | twr_soil_sensor_get_label (twr_soil_sensor_t *self, uint64_t device_address) |
| Get device label by its device address. More... | |
| bool | twr_soil_sensor_set_label (twr_soil_sensor_t *self, uint64_t device_address, const char *label) |
| Get device label by its device address. More... | |
| bool | twr_soil_sensor_calibration_set_point (twr_soil_sensor_t *self, uint64_t device_address, uint8_t point, uint16_t value) |
| Set value for calibration point by device address. More... | |
| bool | twr_soil_sensor_eeprom_save (twr_soil_sensor_t *self, uint64_t device_address) |
| Save calibration points and label to eeprom by device address. More... | |
| twr_soil_sensor_error_t | twr_soil_sensor_get_error (twr_soil_sensor_t *self) |
| Get error number. More... | |
Driver for soil sensor.
Error numbers.
Definition at line 26 of file twr_soil_sensor.h.
Callback events.
| Enumerator | |
|---|---|
| TWR_SOIL_SENSOR_EVENT_ERROR | Error event. |
| TWR_SOIL_SENSOR_EVENT_UPDATE | Update event. |
Definition at line 14 of file twr_soil_sensor.h.
| bool twr_soil_sensor_calibration_set_point | ( | twr_soil_sensor_t * | self, |
| uint64_t | device_address, | ||
| uint8_t | point, | ||
| uint16_t | value | ||
| ) |
Set value for calibration point by device address.
| [in] | self | Instance |
| [in] | device_address | 64b device address |
| [in] | point | 0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100 |
| [in] | value |
Definition at line 267 of file twr_soil_sensor.c.

| bool twr_soil_sensor_eeprom_save | ( | twr_soil_sensor_t * | self, |
| uint64_t | device_address | ||
| ) |
Save calibration points and label to eeprom by device address.
| [in] | self | Instance |
| [in] | device_address | 64b device address |
Definition at line 288 of file twr_soil_sensor.c.

| bool twr_soil_sensor_get_cap_raw | ( | twr_soil_sensor_t * | self, |
| uint64_t | device_address, | ||
| uint16_t * | raw | ||
| ) |
Get capacite as raw value.
| [in] | self | Instance |
| [in] | device_address | 64b device address |
| [out] | raw | Pointer to variable where result will be stored |
Definition at line 160 of file twr_soil_sensor.c.

| uint64_t twr_soil_sensor_get_device_address_by_index | ( | twr_soil_sensor_t * | self, |
| int | index | ||
| ) |
Get device device address by its index.
| [in] | self | Instance |
| [in] | index | Index |
Definition at line 231 of file twr_soil_sensor.c.
| twr_soil_sensor_error_t twr_soil_sensor_get_error | ( | twr_soil_sensor_t * | self | ) |
| int twr_soil_sensor_get_index_by_device_address | ( | twr_soil_sensor_t * | self, |
| uint64_t | device_address | ||
| ) |
Get device index by its device address.
| [in] | self | Instance |
| [in] | device_address | 64b device address |
Definition at line 218 of file twr_soil_sensor.c.
Referenced by twr_soil_sensor_calibration_set_point(), twr_soil_sensor_eeprom_save(), twr_soil_sensor_get_cap_raw(), twr_soil_sensor_get_label(), twr_soil_sensor_get_moisture(), twr_soil_sensor_get_temperature_raw(), and twr_soil_sensor_set_label().

| char* twr_soil_sensor_get_label | ( | twr_soil_sensor_t * | self, |
| uint64_t | device_address | ||
| ) |
Get device label by its device address.
| [in] | self | Instance |
| [in] | device_address | 64b device address |
Definition at line 241 of file twr_soil_sensor.c.

| bool twr_soil_sensor_get_moisture | ( | twr_soil_sensor_t * | self, |
| uint64_t | device_address, | ||
| int * | moisture | ||
| ) |
Get measured moisture in percent.
| [in] | self | Instance |
| [in] | device_address | 64b device address |
| [in] | moisture | Pointer to variable where result will be stored |
Definition at line 179 of file twr_soil_sensor.c.

| int twr_soil_sensor_get_sensor_found | ( | twr_soil_sensor_t * | self | ) |
Get sensors found.
| [in] | self | Instance |
Definition at line 73 of file twr_soil_sensor.c.
| bool twr_soil_sensor_get_temperature_celsius | ( | twr_soil_sensor_t * | self, |
| uint64_t | device_address, | ||
| float * | celsius | ||
| ) |
Get measured temperature in degrees of Celsius.
| [in] | self | Instance |
| [in] | device_address | 64b device address |
| [in] | celsius | Pointer to variable where result will be stored |
Definition at line 111 of file twr_soil_sensor.c.
Referenced by twr_soil_sensor_get_temperature_fahrenheit(), and twr_soil_sensor_get_temperature_kelvin().


| bool twr_soil_sensor_get_temperature_fahrenheit | ( | twr_soil_sensor_t * | self, |
| uint64_t | device_address, | ||
| float * | fahrenheit | ||
| ) |
Get measured temperature in degrees of Fahrenheit.
| [in] | self | Instance |
| [in] | device_address | 64b device address |
| [in] | fahrenheit | Pointer to variable where result will be stored |
Definition at line 127 of file twr_soil_sensor.c.

| bool twr_soil_sensor_get_temperature_kelvin | ( | twr_soil_sensor_t * | self, |
| uint64_t | device_address, | ||
| float * | kelvin | ||
| ) |
Get measured temperature in kelvin.
| [in] | self | Instance |
| [in] | device_address | 64b device address |
| [in] | kelvin | Pointer to variable where result will be stored |
Definition at line 141 of file twr_soil_sensor.c.

| bool twr_soil_sensor_get_temperature_raw | ( | twr_soil_sensor_t * | self, |
| uint64_t | device_address, | ||
| int16_t * | raw | ||
| ) |
Get measured temperature as raw value.
| [in] | self | Instance |
| [in] | device_address | 64b device address |
| [out] | raw | Pointer to variable where result will be stored |
Definition at line 92 of file twr_soil_sensor.c.
Referenced by twr_soil_sensor_get_temperature_celsius().


| void twr_soil_sensor_init | ( | twr_soil_sensor_t * | self | ) |
Initialize Soil sensor.
| [in] | self | Instance |
Definition at line 29 of file twr_soil_sensor.c.

| void twr_soil_sensor_init_multiple | ( | twr_soil_sensor_t * | self, |
| twr_soil_sensor_sensor_t * | sensors, | ||
| int | sensor_count | ||
| ) |
Initialize multiple Soil sensor.
| [in] | self | Instance |
| [in] | sensors | Sensors array |
| [in] | sensor_count | Sensors count |
Definition at line 36 of file twr_soil_sensor.c.
Referenced by twr_soil_sensor_init().


| bool twr_soil_sensor_measure | ( | twr_soil_sensor_t * | self | ) |
Start measurement manually.
| [in] | self | Instance |
Definition at line 78 of file twr_soil_sensor.c.
Referenced by twr_soil_sensor_set_update_interval().


| void twr_soil_sensor_set_event_handler | ( | twr_soil_sensor_t * | self, |
| void(*)(twr_soil_sensor_t *, uint64_t, twr_soil_sensor_event_t, void *) | event_handler, | ||
| void * | event_param | ||
| ) |
Set callback function.
| [in] | self | Instance |
| [in] | event_handler | Function address |
| [in] | event_param | Optional event parameter (can be NULL) |
| bool twr_soil_sensor_set_label | ( | twr_soil_sensor_t * | self, |
| uint64_t | device_address, | ||
| const char * | label | ||
| ) |
Get device label by its device address.
| [in] | self | Instance |
| [in] | device_address | 64b device address |
| [in] | label | New label |
Definition at line 253 of file twr_soil_sensor.c.

| void twr_soil_sensor_set_update_interval | ( | twr_soil_sensor_t * | self, |
| twr_tick_t | interval | ||
| ) |
Set measurement interval.
| [in] | self | Instance |
| [in] | interval | Measurement interval |
Definition at line 57 of file twr_soil_sensor.c.
