PCB lives now in its own git repo https://git.la10cy.net/DeltaLima/CanGrow-12V-PCB
152 lines
5 KiB
C
152 lines
5 KiB
C
/*
|
|
*
|
|
* include/Sensor/Common.h - common sensor header file
|
|
*
|
|
*
|
|
*
|
|
*/
|
|
|
|
|
|
|
|
/*
|
|
* Common used consts and variables, used within the Sensor header for example
|
|
*/
|
|
|
|
// for bme280 and bme680
|
|
#define SEALEVELPRESSURE_HPA (1013.25)
|
|
|
|
/* sensor types, int ADC, i2c, one wire , two wire, ...*/
|
|
const byte SENSOR_TYPE__TOTAL = 5;
|
|
|
|
const byte SENSOR_TYPE_INTADC = 0;
|
|
const byte SENSOR_TYPE_I2C = 1;
|
|
const byte SENSOR_TYPE_ONEWIRE = 2;
|
|
const byte SENSOR_TYPE_TWOWIRE = 3;
|
|
const byte SENSOR_TYPE_I2C_WITH_GPIO = 4;
|
|
|
|
/* How many different read types exists */
|
|
const byte SENSOR_READ_TYPE__TOTAL = 14;
|
|
|
|
|
|
const byte SENSOR_READ_TYPE_RAW = 1;
|
|
const char SENSOR_READ_TYPE_RAW_descr[] PROGMEM = {"Raw value"};
|
|
const char SENSOR_READ_TYPE_RAW_unit[] PROGMEM = {""};
|
|
|
|
const byte SENSOR_READ_TYPE_TEMP = 2;
|
|
const char SENSOR_READ_TYPE_TEMP_descr[] PROGMEM = {"Temperature"};
|
|
const char SENSOR_READ_TYPE_TEMP_unit[] PROGMEM = {"°C"};
|
|
|
|
const byte SENSOR_READ_TYPE_HUMIDITY = 3;
|
|
const char SENSOR_READ_TYPE_HUMIDITY_descr[] PROGMEM = {"Humidity"};
|
|
const char SENSOR_READ_TYPE_HUMIDITY_unit[] PROGMEM = {"%"};
|
|
|
|
const byte SENSOR_READ_TYPE_SOILMOISTURE = 4;
|
|
const char SENSOR_READ_TYPE_SOILMOISTURE_descr[] PROGMEM = {"Moisture"};
|
|
const char SENSOR_READ_TYPE_SOILMOISTURE_unit[] PROGMEM = {"%"};
|
|
|
|
const byte SENSOR_READ_TYPE_PRESSURE = 5;
|
|
const char SENSOR_READ_TYPE_PRESSURE_descr[] PROGMEM = {"Pressure"};
|
|
const char SENSOR_READ_TYPE_PRESSURE_unit[] PROGMEM = {"Pa"};
|
|
|
|
const byte SENSOR_READ_TYPE_ALTITUDE = 6;
|
|
const char SENSOR_READ_TYPE_ALTITUDE_descr[] PROGMEM = {"Altitude"};
|
|
const char SENSOR_READ_TYPE_ALTITUDE_unit[] PROGMEM = {"m"};
|
|
|
|
const byte SENSOR_READ_TYPE_GAS_RESISTANCE = 7;
|
|
const char SENSOR_READ_TYPE_GAS_RESISTANCE_descr[] PROGMEM = {"Gas resistance"};
|
|
const char SENSOR_READ_TYPE_GAS_RESISTANCE_unit[] PROGMEM = {"KOhm"};
|
|
|
|
const byte SENSOR_READ_TYPE_COLOR_TEMP = 8;
|
|
const char SENSOR_READ_TYPE_COLOR_TEMP_descr[] PROGMEM = {"Color temperature"};
|
|
const char SENSOR_READ_TYPE_COLOR_TEMP_unit[] PROGMEM = {"K"};
|
|
|
|
const byte SENSOR_READ_TYPE_LUX = 9;
|
|
const char SENSOR_READ_TYPE_LUX_descr[] PROGMEM = {"Lux"};
|
|
const char SENSOR_READ_TYPE_LUX_unit[] PROGMEM = {"lx"};
|
|
|
|
const byte SENSOR_READ_TYPE_COLOR_RED = 10;
|
|
const char SENSOR_READ_TYPE_COLOR_RED_descr[] PROGMEM = {"Color red"};
|
|
const char SENSOR_READ_TYPE_COLOR_RED_unit[] PROGMEM = {""};
|
|
|
|
const byte SENSOR_READ_TYPE_COLOR_GREEN = 11;
|
|
const char SENSOR_READ_TYPE_COLOR_GREEN_descr[] PROGMEM = {"Color green"};
|
|
const char SENSOR_READ_TYPE_COLOR_GREEN_unit[] PROGMEM = {""};
|
|
|
|
const byte SENSOR_READ_TYPE_COLOR_BLUE = 12;
|
|
const char SENSOR_READ_TYPE_COLOR_BLUE_descr[] PROGMEM = {"Color blue"};
|
|
const char SENSOR_READ_TYPE_COLOR_BLUE_unit[] PROGMEM = {""};
|
|
|
|
const byte SENSOR_READ_TYPE_PARTS_PER_MILLION = 13;
|
|
const char SENSOR_READ_TYPE_PARTS_PER_MILLION_descr[] PROGMEM = {"Part per million"};
|
|
const char SENSOR_READ_TYPE_PARTS_PER_MILLION_unit[] PROGMEM = {"ppm"};
|
|
|
|
const byte SENSOR_READ_TYPE_TVOC = 14;
|
|
const char SENSOR_READ_TYPE_TVOC_descr[] PROGMEM = {"TVOC"};
|
|
const char SENSOR_READ_TYPE_TVOC_unit[] PROGMEM = {""};
|
|
|
|
|
|
const char * Sensor_Read_descr[] = {
|
|
NULL, // 0 is unset
|
|
SENSOR_READ_TYPE_RAW_descr,
|
|
SENSOR_READ_TYPE_TEMP_descr,
|
|
SENSOR_READ_TYPE_HUMIDITY_descr,
|
|
SENSOR_READ_TYPE_SOILMOISTURE_descr,
|
|
SENSOR_READ_TYPE_PRESSURE_descr,
|
|
SENSOR_READ_TYPE_ALTITUDE_descr,
|
|
SENSOR_READ_TYPE_GAS_RESISTANCE_descr,
|
|
SENSOR_READ_TYPE_COLOR_TEMP_descr,
|
|
SENSOR_READ_TYPE_LUX_descr,
|
|
SENSOR_READ_TYPE_COLOR_RED_descr,
|
|
SENSOR_READ_TYPE_COLOR_GREEN_descr,
|
|
SENSOR_READ_TYPE_COLOR_BLUE_descr,
|
|
SENSOR_READ_TYPE_PARTS_PER_MILLION_descr,
|
|
SENSOR_READ_TYPE_TVOC_descr
|
|
};
|
|
|
|
const char * Sensor_Read_unit[] = {
|
|
NULL, // 0 is unset
|
|
SENSOR_READ_TYPE_RAW_unit,
|
|
SENSOR_READ_TYPE_TEMP_unit,
|
|
SENSOR_READ_TYPE_HUMIDITY_unit,
|
|
SENSOR_READ_TYPE_SOILMOISTURE_unit,
|
|
SENSOR_READ_TYPE_PRESSURE_unit,
|
|
SENSOR_READ_TYPE_ALTITUDE_unit,
|
|
SENSOR_READ_TYPE_GAS_RESISTANCE_unit,
|
|
SENSOR_READ_TYPE_COLOR_TEMP_unit,
|
|
SENSOR_READ_TYPE_LUX_unit,
|
|
SENSOR_READ_TYPE_COLOR_RED_unit,
|
|
SENSOR_READ_TYPE_COLOR_GREEN_unit,
|
|
SENSOR_READ_TYPE_COLOR_BLUE_unit,
|
|
SENSOR_READ_TYPE_PARTS_PER_MILLION_unit,
|
|
SENSOR_READ_TYPE_TVOC_unit
|
|
};
|
|
|
|
|
|
/* How many different read convert types exists */
|
|
const byte SENSOR_CONVERT_RAW_TYPE__TOTAL = 1;
|
|
|
|
const byte SENSOR_CONVERT_RAW_TYPE_SOILMOISTURE = 1;
|
|
const char SENSOR_CONVERT_RAW_TYPE_SOILMOISTURE_descr[] PROGMEM = {"Soilmoisture"};
|
|
const char SENSOR_CONVERT_RAW_TYPE_SOILMOISTURE_unit[] PROGMEM = {"%"};
|
|
|
|
//const byte SENSOR_CONVERT_RAW_TYPE_OTHER = 2;
|
|
//const char SENSOR_CONVERT_RAW_TYPE_OTHER_descr[] PROGMEM = {"Other"};
|
|
//const char SENSOR_CONVERT_RAW_TYPE_OTHER_unit[] PROGMEM = {"n/a"};
|
|
|
|
|
|
const char * Sensor_Convert_Raw_descr[] = {
|
|
NULL, // 0 is unset
|
|
SENSOR_CONVERT_RAW_TYPE_SOILMOISTURE_descr,
|
|
//SENSOR_CONVERT_RAW_TYPE_OTHER_descr
|
|
};
|
|
|
|
const char * Sensor_Convert_Raw_unit[] = {
|
|
NULL, // 0 is unset
|
|
SENSOR_CONVERT_RAW_TYPE_SOILMOISTURE_unit,
|
|
//SENSOR_CONVERT_RAW_TYPE_OTHER_unit
|
|
};
|
|
|
|
// Addr_Init_Update modes
|
|
const byte SENSOR_AIU_MODE_ADDR = 0;
|
|
const byte SENSOR_AIU_MODE_INIT = 1;
|
|
const byte SENSOR_AIU_MODE_UPDATE = 2;
|