RRH46410 Firmware Documentation
rrh46410.h File Reference

RRH46410 API declarations. More...

Go to the source code of this file.

Data Structures

struct  RRH46410_Common_Results_t
 This struct helps accessing sample ID independent from operating mode. More...
 
struct  RRH46410_IAQ2_Results_t
 Results returned from sensor in IAQ2 and IAQ2 ULP mode. More...
 
struct  RRH46410_PBAQ_Results_t
 Raw result returned from sensor in PBAQ mode. More...
 
union  RRH46410_Results_t
 Generic result data structure, joining the results of the different operating modes. More...
 
union  RRH46410_Debug_t
 Debug output data structure. More...
 
struct  RRH46410_t
 Data structure holding information required for RRH46410 API operation. More...
 
struct  RRH46410_SensorInfo_t
 Sensor information data structure. More...
 

Enumerations

enum  RRH46410_OperatingMode_t {
  omSuspend = 0x00, omIAQ2 = 0x01, omIAQ2_ULP = 0x02, omPBAQ = 0x05,
  omCleaning = 0x80, omUnknown = 0xff
}
 Operating mode types. More...
 
enum  RRH46410_Commands_t {
  cmdGetSensorInfo = 0x00, cmdGetTrackingNumber = 0x01, cmdGetOperatingMode = 0x10, cmdSetOperatingMode = 0x11,
  cmdSetHumidity = 0x12, cmdGetResults = 0x18, cmdSetGPIOConfig = 0x20, cmdGetGPIOState = 0x21,
  cmdSetOutputHigh = 0x22, cmdSetOutputLow = 0x23, cmdGetDebugData = 0x31, cmdSoftwareReset = 0x8f
}
 Define names for RRH46410 commands. More...
 
enum  RRH46410_ErrorCodes_t {
  ecWarmup = 0x01, ecCleaningCountExceeded = 0x08, ecPOR = 0x09, ecDamage = 0x0a,
  ecDataNotReady = 0x10, ecInternalComm = 0x20, ecHostToSensorCheckusm = 0x40, ecInvalidCommand = 0x80,
  ecSampleNotNew = 0x100, ecSensorToHostChecksum = 0x101, ecCleaningTimeout = 0x102, ecGPIOConfigInvalid = 0x103
}
 Definition of error codes for RRH46410 sensors. More...
 

Functions

int RRH46410_Init (RRH46410_t *sensor, Interface_t *hal)
 Initialize sensor object. More...
 
int RRH46410_GetSensorInfo (RRH46410_t *sensor, RRH46410_SensorInfo_t *info)
 Read additional sensor information. More...
 
int RRH46410_ReadOperatingMode (RRH46410_t *sensor)
 Read the current operating mode. More...
 
int RRH46410_SetOperatingMode (RRH46410_t *sensor, RRH46410_OperatingMode_t mode)
 Set the current operating mode. More...
 
int RRH46410_SetHumidity (RRH46410_t *sensor, float humidity)
 Set humidity value to be used in gas algorithm computations. More...
 
int RRH46410_ReadResults (RRH46410_t *sensor, void *result)
 Read latest sensor results. More...
 
int RRH46410_ReadDebug (RRH46410_t *sensor, void *result)
 Read debug output. More...
 
int RRH46410_PerformCleaning (RRH46410_t *sensor)
 Perform sensor cleaning. More...
 
int RRH46410_Reset (RRH46410_t *sensor)
 Reset the sensor. More...
 
int RRH46410_SoftReset (RRH46410_t *sensor)
 Perform a software reset. More...
 
int RRH46410_ConfigureGPIO (RRH46410_t *sensor, uint8_t outputMask)
 Configure GPIO1 and GPIO2 direction. More...
 
int RRH46410_WriteGPIO (RRH46410_t *sensor, uint8_t mask, uint8_t state)
 Write one or multiple GPIO pins. More...
 
int RRH46410_ReadGPIO (RRH46410_t *sensor, uint8_t *state)
 Read the state of all GPIO pins. More...