Classes | Macros | Enumerations | Functions | Variables
sensor_epsonCommon.h File Reference
#include <stdbool.h>
#include "sensor_epsonUart.h"
Include dependency graph for sensor_epsonCommon.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  EpsonData
 
struct  EpsonOptions
 
struct  EpsonProperties
 

Macros

#define ADDR_ANG1_HIGH   0x64
 
#define ADDR_ANG1_LOW   0x66
 
#define ADDR_ANG2_HIGH   0x68
 
#define ADDR_ANG2_LOW   0x6A
 
#define ADDR_ANG3_HIGH   0x6C
 
#define ADDR_ANG3_LOW   0x6E
 
#define ADDR_ATTI_CTRL_HI   0x15
 
#define ADDR_ATTI_CTRL_LO   0x14
 
#define ADDR_BURST_CTRL1_HI   0x0D
 
#define ADDR_BURST_CTRL1_LO   0x0C
 
#define ADDR_BURST_CTRL2_HI   0x0F
 
#define ADDR_BURST_CTRL2_LO   0x0E
 
#define ADDR_COUNT   0x0A
 
#define ADDR_DIAG_STAT   0x04
 
#define ADDR_DLT_CTRL_HI   0x13
 
#define ADDR_DLT_CTRL_LO   0x12
 
#define ADDR_FILTER_CTRL_HI   0x07
 
#define ADDR_FILTER_CTRL_LO   0x06
 
#define ADDR_FLAG   0x06
 
#define ADDR_GLOB_CMD2_HI   0x17
 
#define ADDR_GLOB_CMD2_LO   0x16
 
#define ADDR_GLOB_CMD3_HI   0x13
 
#define ADDR_GLOB_CMD3_LO   0x12
 
#define ADDR_GLOB_CMD_HI   0x0B
 
#define ADDR_GLOB_CMD_LO   0x0A
 
#define ADDR_GPIO   0x08
 
#define ADDR_ID   0x4C
 
#define ADDR_MODE_CTRL_HI   0x03
 
#define ADDR_MODE_CTRL_LO   0x02
 
#define ADDR_MSC_CTRL_HI   0x03
 
#define ADDR_MSC_CTRL_LO   0x02
 
#define ADDR_POL_CTRL_HI   0x11
 
#define ADDR_POL_CTRL_LO   0x10
 
#define ADDR_PROD_ID1   0x6A
 
#define ADDR_PROD_ID2   0x6C
 
#define ADDR_PROD_ID3   0x6E
 
#define ADDR_PROD_ID4   0x70
 
#define ADDR_QTN0_HIGH   0x50
 
#define ADDR_QTN0_LOW   0x52
 
#define ADDR_QTN1_HIGH   0x54
 
#define ADDR_QTN1_LOW   0x56
 
#define ADDR_QTN2_HIGH   0x58
 
#define ADDR_QTN2_LOW   0x5A
 
#define ADDR_QTN3_HIGH   0x5C
 
#define ADDR_QTN3_LOW   0x5E
 
#define ADDR_R_MATRIX_M11_HI   0x39
 
#define ADDR_R_MATRIX_M11_LO   0x38
 
#define ADDR_R_MATRIX_M12_HI   0x3B
 
#define ADDR_R_MATRIX_M12_LO   0x3A
 
#define ADDR_R_MATRIX_M13_HI   0x3D
 
#define ADDR_R_MATRIX_M13_LO   0x3C
 
#define ADDR_R_MATRIX_M21_HI   0x3F
 
#define ADDR_R_MATRIX_M21_LO   0x3E
 
#define ADDR_R_MATRIX_M22_HI   0x41
 
#define ADDR_R_MATRIX_M22_LO   0x40
 
#define ADDR_R_MATRIX_M23_HI   0x43
 
#define ADDR_R_MATRIX_M23_LO   0x42
 
#define ADDR_R_MATRIX_M31_HI   0x45
 
#define ADDR_R_MATRIX_M31_LO   0x44
 
#define ADDR_R_MATRIX_M32_HI   0x47
 
#define ADDR_R_MATRIX_M32_LO   0x46
 
#define ADDR_R_MATRIX_M33_HI   0x49
 
#define ADDR_R_MATRIX_M33_LO   0x48
 
#define ADDR_RANGE_OVER   0x0C
 
#define ADDR_RT_DIAG   0x2B
 
#define ADDR_SERIAL_NUM1   0x74
 
#define ADDR_SERIAL_NUM2   0x76
 
#define ADDR_SERIAL_NUM3   0x78
 
#define ADDR_SERIAL_NUM4   0x7A
 
#define ADDR_SIG_CTRL_HI   0x01
 
#define ADDR_SIG_CTRL_LO   0x00
 
#define ADDR_SMPL_CTRL_HI   0x05
 
#define ADDR_SMPL_CTRL_LO   0x04
 
#define ADDR_TEMP_HIGH   0x0E
 
#define ADDR_TEMP_LOW   0x10
 
#define ADDR_UART_CTRL_HI   0x09
 
#define ADDR_UART_CTRL_LO   0x08
 
#define ADDR_VERSION   0x72
 
#define ADDR_WIN_CTRL   0x7E
 
#define ADDR_XACCL_HIGH   0x1E
 
#define ADDR_XACCL_LOW   0x20
 
#define ADDR_XDLTA_HIGH   0x64
 
#define ADDR_XDLTA_LOW   0x66
 
#define ADDR_XDLTV_HIGH   0x70
 
#define ADDR_XDLTV_LOW   0x72
 
#define ADDR_XGYRO_HIGH   0x12
 
#define ADDR_XGYRO_LOW   0x14
 
#define ADDR_YACCL_HIGH   0x22
 
#define ADDR_YACCL_LOW   0x24
 
#define ADDR_YDLTA_HIGH   0x68
 
#define ADDR_YDLTA_LOW   0x6A
 
#define ADDR_YDLTV_HIGH   0x74
 
#define ADDR_YDLTV_LOW   0x76
 
#define ADDR_YGYRO_HIGH   0x16
 
#define ADDR_YGYRO_LOW   0x18
 
#define ADDR_ZACCL_HIGH   0x26
 
#define ADDR_ZACCL_LOW   0x28
 
#define ADDR_ZDLTA_HIGH   0x6C
 
#define ADDR_ZDLTA_LOW   0x6E
 
#define ADDR_ZDLTV_HIGH   0x78
 
#define ADDR_ZDLTV_LOW   0x7A
 
#define ADDR_ZGYRO_HIGH   0x1A
 
#define ADDR_ZGYRO_LOW   0x1C
 
#define BIT0   (1)
 
#define BIT1   (1 << 1)
 
#define BIT10   (1 << 10)
 
#define BIT11   (1 << 11)
 
#define BIT12   (1 << 12)
 
#define BIT13   (1 << 13)
 
#define BIT14   (1 << 14)
 
#define BIT15   (1 << 15)
 
#define BIT2   (1 << 2)
 
#define BIT3   (1 << 3)
 
#define BIT4   (1 << 4)
 
#define BIT5   (1 << 5)
 
#define BIT6   (1 << 6)
 
#define BIT7   (1 << 7)
 
#define BIT8   (1 << 8)
 
#define BIT9   (1 << 9)
 
#define CMD_ATM_MODEA   0x00
 
#define CMD_ATM_MODEB   0x10
 
#define CMD_ATM_MODEC   0x20
 
#define CMD_BURST   0x80
 
#define CMD_CONFIG   0x02
 
#define CMD_FIRTAP128FC100   0x11
 
#define CMD_FIRTAP128FC200   0x12
 
#define CMD_FIRTAP128FC400   0x13
 
#define CMD_FIRTAP128FC50   0x10
 
#define CMD_FIRTAP32FC100   0x09
 
#define CMD_FIRTAP32FC200   0x0A
 
#define CMD_FIRTAP32FC400   0x0B
 
#define CMD_FIRTAP32FC50   0x08
 
#define CMD_FIRTAP64FC100   0x0D
 
#define CMD_FIRTAP64FC200   0x0E
 
#define CMD_FIRTAP64FC400   0x0F
 
#define CMD_FIRTAP64FC50   0x0C
 
#define CMD_FLTAP0   0x00
 
#define CMD_FLTAP128   0x07
 
#define CMD_FLTAP16   0x04
 
#define CMD_FLTAP2   0x01
 
#define CMD_FLTAP32   0x05
 
#define CMD_FLTAP4   0x02
 
#define CMD_FLTAP64   0x06
 
#define CMD_FLTAP8   0x03
 
#define CMD_RATE100   0x0A
 
#define CMD_RATE1000   0x01
 
#define CMD_RATE125   0x04
 
#define CMD_RATE15_625   0x07
 
#define CMD_RATE20   0x0F
 
#define CMD_RATE200   0x09
 
#define CMD_RATE2000   0x00
 
#define CMD_RATE25   0x0E
 
#define CMD_RATE250   0x03
 
#define CMD_RATE31_25   0x06
 
#define CMD_RATE40   0x0D
 
#define CMD_RATE400   0x08
 
#define CMD_RATE50   0x0C
 
#define CMD_RATE500   0x02
 
#define CMD_RATE62_5   0x05
 
#define CMD_RATE80   0x0B
 
#define CMD_SAMPLING   0x01
 
#define DEG2RAD   (3.14159 / 180.0)
 
#define EPSON_RESET_DELAY_MS   (3000)
 
#define EPSON_RESET_LOW_WIDTH_MS   (100)
 
#define MG2MPS2   (9.80665 / 1000.0)
 
#define MPS22MG   (1000.0 / 9.80665)
 
#define R_MATRIX_A_M11_HI   0x4B
 
#define R_MATRIX_A_M11_LO   0x4A
 
#define R_MATRIX_A_M12_HI   0x4D
 
#define R_MATRIX_A_M12_LO   0x4C
 
#define R_MATRIX_A_M13_HI   0x4F
 
#define R_MATRIX_A_M13_LO   0x4E
 
#define R_MATRIX_A_M21_HI   0x51
 
#define R_MATRIX_A_M21_LO   0x50
 
#define R_MATRIX_A_M22_HI   0x53
 
#define R_MATRIX_A_M22_LO   0x52
 
#define R_MATRIX_A_M23_HI   0x55
 
#define R_MATRIX_A_M23_LO   0x54
 
#define R_MATRIX_A_M31_HI   0x57
 
#define R_MATRIX_A_M31_LO   0x56
 
#define R_MATRIX_A_M32_HI   0x59
 
#define R_MATRIX_A_M32_LO   0x58
 
#define R_MATRIX_A_M33_HI   0x5B
 
#define R_MATRIX_A_M33_LO   0x5A
 
#define RAD2DEG   (180.0 / 3.14159)
 
#define VAL_CONFIG_MODE   0x04
 
#define VAL_SAMPLING_MODE   0x00
 
#define WIN_ID0   0x00
 
#define WIN_ID1   0x01
 

Enumerations

enum  EpsonFeatureFlags {
  HAS_ATTITUDE_OUTPUT = 1, HAS_DLT_OUTPUT = 2, HAS_ATTI_ON_REG = 4, HAS_ROT_MATRIX = 8,
  HAS_RANGE_OVER = 16, HAS_RTDIAG = 32, HAS_ARANGE = 64, HAS_INITIAL_BACKUP = 128
}
 
enum  EpsonModels {
  G_EMPTY, G320PDG0, G320PDGN, G354PDH0,
  G364PDCA, G364PDC0, G365PDC1, G365PDF1,
  G370PDF1, G370PDFN, G370PDS0, G330PDG0,
  G366PDG0, G370PDG0, G370PDT0, G570PR20,
  G_UNKNOWN
}
 

Functions

unsigned short read16 (unsigned char, unsigned int)
 
unsigned short registerRead16 (unsigned char, unsigned char, unsigned int)
 
void registerWriteByte (unsigned char, unsigned char, unsigned char, unsigned int)
 
unsigned int sensorDataByteLength (const struct EpsonProperties *, const struct EpsonOptions *)
 
int sensorDataReadBurstNOptions (const struct EpsonProperties *, const struct EpsonOptions *, struct EpsonData *)
 
void sensorDummyWrite (void)
 
void sensorDumpRegisters (const struct EpsonProperties *)
 
int sensorFlashBackup (const struct EpsonProperties *)
 
int sensorFlashTest (const struct EpsonProperties *)
 
int sensorGetDeviceModel (struct EpsonProperties *, char *prod_id, char *serial_id)
 
char * sensorGetProductId (char *prod_id)
 
char * sensorGetSerialId (char *serial_id)
 
int sensorHWReset (void)
 
int sensorInitialBackup (const struct EpsonProperties *)
 
int sensorInitOptions (const struct EpsonProperties *, struct EpsonOptions *)
 
int sensorPowerOn (void)
 
void sensorReset (const struct EpsonProperties *)
 
int sensorSelfTest (const struct EpsonProperties *)
 
void sensorStart (void)
 
void sensorStop (void)
 
void writeByte (unsigned char, unsigned char, unsigned int)
 

Variables

struct EpsonProperties epson_sensors [G_UNKNOWN+1]
 

Macro Definition Documentation

◆ ADDR_ANG1_HIGH

#define ADDR_ANG1_HIGH   0x64

Definition at line 120 of file sensor_epsonCommon.h.

◆ ADDR_ANG1_LOW

#define ADDR_ANG1_LOW   0x66

Definition at line 121 of file sensor_epsonCommon.h.

◆ ADDR_ANG2_HIGH

#define ADDR_ANG2_HIGH   0x68

Definition at line 122 of file sensor_epsonCommon.h.

◆ ADDR_ANG2_LOW

#define ADDR_ANG2_LOW   0x6A

Definition at line 123 of file sensor_epsonCommon.h.

◆ ADDR_ANG3_HIGH

#define ADDR_ANG3_HIGH   0x6C

Definition at line 124 of file sensor_epsonCommon.h.

◆ ADDR_ANG3_LOW

#define ADDR_ANG3_LOW   0x6E

Definition at line 125 of file sensor_epsonCommon.h.

◆ ADDR_ATTI_CTRL_HI

#define ADDR_ATTI_CTRL_HI   0x15

Definition at line 166 of file sensor_epsonCommon.h.

◆ ADDR_ATTI_CTRL_LO

#define ADDR_ATTI_CTRL_LO   0x14

Definition at line 165 of file sensor_epsonCommon.h.

◆ ADDR_BURST_CTRL1_HI

#define ADDR_BURST_CTRL1_HI   0x0D

Definition at line 154 of file sensor_epsonCommon.h.

◆ ADDR_BURST_CTRL1_LO

#define ADDR_BURST_CTRL1_LO   0x0C

Definition at line 153 of file sensor_epsonCommon.h.

◆ ADDR_BURST_CTRL2_HI

#define ADDR_BURST_CTRL2_HI   0x0F

Definition at line 156 of file sensor_epsonCommon.h.

◆ ADDR_BURST_CTRL2_LO

#define ADDR_BURST_CTRL2_LO   0x0E

Definition at line 155 of file sensor_epsonCommon.h.

◆ ADDR_COUNT

#define ADDR_COUNT   0x0A

Definition at line 91 of file sensor_epsonCommon.h.

◆ ADDR_DIAG_STAT

#define ADDR_DIAG_STAT   0x04

Definition at line 88 of file sensor_epsonCommon.h.

◆ ADDR_DLT_CTRL_HI

#define ADDR_DLT_CTRL_HI   0x13

Definition at line 161 of file sensor_epsonCommon.h.

◆ ADDR_DLT_CTRL_LO

#define ADDR_DLT_CTRL_LO   0x12

Definition at line 160 of file sensor_epsonCommon.h.

◆ ADDR_FILTER_CTRL_HI

#define ADDR_FILTER_CTRL_HI   0x07

Definition at line 148 of file sensor_epsonCommon.h.

◆ ADDR_FILTER_CTRL_LO

#define ADDR_FILTER_CTRL_LO   0x06

Definition at line 147 of file sensor_epsonCommon.h.

◆ ADDR_FLAG

#define ADDR_FLAG   0x06

Definition at line 89 of file sensor_epsonCommon.h.

◆ ADDR_GLOB_CMD2_HI

#define ADDR_GLOB_CMD2_HI   0x17

Definition at line 168 of file sensor_epsonCommon.h.

◆ ADDR_GLOB_CMD2_LO

#define ADDR_GLOB_CMD2_LO   0x16

Definition at line 167 of file sensor_epsonCommon.h.

◆ ADDR_GLOB_CMD3_HI

#define ADDR_GLOB_CMD3_HI   0x13

Definition at line 163 of file sensor_epsonCommon.h.

◆ ADDR_GLOB_CMD3_LO

#define ADDR_GLOB_CMD3_LO   0x12

Definition at line 162 of file sensor_epsonCommon.h.

◆ ADDR_GLOB_CMD_HI

#define ADDR_GLOB_CMD_HI   0x0B

Definition at line 152 of file sensor_epsonCommon.h.

◆ ADDR_GLOB_CMD_LO

#define ADDR_GLOB_CMD_LO   0x0A

Definition at line 151 of file sensor_epsonCommon.h.

◆ ADDR_GPIO

#define ADDR_GPIO   0x08

Definition at line 90 of file sensor_epsonCommon.h.

◆ ADDR_ID

#define ADDR_ID   0x4C

Definition at line 110 of file sensor_epsonCommon.h.

◆ ADDR_MODE_CTRL_HI

#define ADDR_MODE_CTRL_HI   0x03

Definition at line 87 of file sensor_epsonCommon.h.

◆ ADDR_MODE_CTRL_LO

#define ADDR_MODE_CTRL_LO   0x02

Definition at line 86 of file sensor_epsonCommon.h.

◆ ADDR_MSC_CTRL_HI

#define ADDR_MSC_CTRL_HI   0x03

Definition at line 144 of file sensor_epsonCommon.h.

◆ ADDR_MSC_CTRL_LO

#define ADDR_MSC_CTRL_LO   0x02

Definition at line 143 of file sensor_epsonCommon.h.

◆ ADDR_POL_CTRL_HI

#define ADDR_POL_CTRL_HI   0x11

Definition at line 158 of file sensor_epsonCommon.h.

◆ ADDR_POL_CTRL_LO

#define ADDR_POL_CTRL_LO   0x10

Definition at line 157 of file sensor_epsonCommon.h.

◆ ADDR_PROD_ID1

#define ADDR_PROD_ID1   0x6A

Definition at line 211 of file sensor_epsonCommon.h.

◆ ADDR_PROD_ID2

#define ADDR_PROD_ID2   0x6C

Definition at line 212 of file sensor_epsonCommon.h.

◆ ADDR_PROD_ID3

#define ADDR_PROD_ID3   0x6E

Definition at line 213 of file sensor_epsonCommon.h.

◆ ADDR_PROD_ID4

#define ADDR_PROD_ID4   0x70

Definition at line 214 of file sensor_epsonCommon.h.

◆ ADDR_QTN0_HIGH

#define ADDR_QTN0_HIGH   0x50

Definition at line 111 of file sensor_epsonCommon.h.

◆ ADDR_QTN0_LOW

#define ADDR_QTN0_LOW   0x52

Definition at line 112 of file sensor_epsonCommon.h.

◆ ADDR_QTN1_HIGH

#define ADDR_QTN1_HIGH   0x54

Definition at line 113 of file sensor_epsonCommon.h.

◆ ADDR_QTN1_LOW

#define ADDR_QTN1_LOW   0x56

Definition at line 114 of file sensor_epsonCommon.h.

◆ ADDR_QTN2_HIGH

#define ADDR_QTN2_HIGH   0x58

Definition at line 115 of file sensor_epsonCommon.h.

◆ ADDR_QTN2_LOW

#define ADDR_QTN2_LOW   0x5A

Definition at line 116 of file sensor_epsonCommon.h.

◆ ADDR_QTN3_HIGH

#define ADDR_QTN3_HIGH   0x5C

Definition at line 117 of file sensor_epsonCommon.h.

◆ ADDR_QTN3_LOW

#define ADDR_QTN3_LOW   0x5E

Definition at line 118 of file sensor_epsonCommon.h.

◆ ADDR_R_MATRIX_M11_HI

#define ADDR_R_MATRIX_M11_HI   0x39

Definition at line 173 of file sensor_epsonCommon.h.

◆ ADDR_R_MATRIX_M11_LO

#define ADDR_R_MATRIX_M11_LO   0x38

Definition at line 172 of file sensor_epsonCommon.h.

◆ ADDR_R_MATRIX_M12_HI

#define ADDR_R_MATRIX_M12_HI   0x3B

Definition at line 175 of file sensor_epsonCommon.h.

◆ ADDR_R_MATRIX_M12_LO

#define ADDR_R_MATRIX_M12_LO   0x3A

Definition at line 174 of file sensor_epsonCommon.h.

◆ ADDR_R_MATRIX_M13_HI

#define ADDR_R_MATRIX_M13_HI   0x3D

Definition at line 177 of file sensor_epsonCommon.h.

◆ ADDR_R_MATRIX_M13_LO

#define ADDR_R_MATRIX_M13_LO   0x3C

Definition at line 176 of file sensor_epsonCommon.h.

◆ ADDR_R_MATRIX_M21_HI

#define ADDR_R_MATRIX_M21_HI   0x3F

Definition at line 179 of file sensor_epsonCommon.h.

◆ ADDR_R_MATRIX_M21_LO

#define ADDR_R_MATRIX_M21_LO   0x3E

Definition at line 178 of file sensor_epsonCommon.h.

◆ ADDR_R_MATRIX_M22_HI

#define ADDR_R_MATRIX_M22_HI   0x41

Definition at line 181 of file sensor_epsonCommon.h.

◆ ADDR_R_MATRIX_M22_LO

#define ADDR_R_MATRIX_M22_LO   0x40

Definition at line 180 of file sensor_epsonCommon.h.

◆ ADDR_R_MATRIX_M23_HI

#define ADDR_R_MATRIX_M23_HI   0x43

Definition at line 183 of file sensor_epsonCommon.h.

◆ ADDR_R_MATRIX_M23_LO

#define ADDR_R_MATRIX_M23_LO   0x42

Definition at line 182 of file sensor_epsonCommon.h.

◆ ADDR_R_MATRIX_M31_HI

#define ADDR_R_MATRIX_M31_HI   0x45

Definition at line 185 of file sensor_epsonCommon.h.

◆ ADDR_R_MATRIX_M31_LO

#define ADDR_R_MATRIX_M31_LO   0x44

Definition at line 184 of file sensor_epsonCommon.h.

◆ ADDR_R_MATRIX_M32_HI

#define ADDR_R_MATRIX_M32_HI   0x47

Definition at line 187 of file sensor_epsonCommon.h.

◆ ADDR_R_MATRIX_M32_LO

#define ADDR_R_MATRIX_M32_LO   0x46

Definition at line 186 of file sensor_epsonCommon.h.

◆ ADDR_R_MATRIX_M33_HI

#define ADDR_R_MATRIX_M33_HI   0x49

Definition at line 189 of file sensor_epsonCommon.h.

◆ ADDR_R_MATRIX_M33_LO

#define ADDR_R_MATRIX_M33_LO   0x48

Definition at line 188 of file sensor_epsonCommon.h.

◆ ADDR_RANGE_OVER

#define ADDR_RANGE_OVER   0x0C

Definition at line 92 of file sensor_epsonCommon.h.

◆ ADDR_RT_DIAG

#define ADDR_RT_DIAG   0x2B

Definition at line 108 of file sensor_epsonCommon.h.

◆ ADDR_SERIAL_NUM1

#define ADDR_SERIAL_NUM1   0x74

Definition at line 216 of file sensor_epsonCommon.h.

◆ ADDR_SERIAL_NUM2

#define ADDR_SERIAL_NUM2   0x76

Definition at line 217 of file sensor_epsonCommon.h.

◆ ADDR_SERIAL_NUM3

#define ADDR_SERIAL_NUM3   0x78

Definition at line 218 of file sensor_epsonCommon.h.

◆ ADDR_SERIAL_NUM4

#define ADDR_SERIAL_NUM4   0x7A

Definition at line 219 of file sensor_epsonCommon.h.

◆ ADDR_SIG_CTRL_HI

#define ADDR_SIG_CTRL_HI   0x01

Definition at line 142 of file sensor_epsonCommon.h.

◆ ADDR_SIG_CTRL_LO

#define ADDR_SIG_CTRL_LO   0x00

Definition at line 141 of file sensor_epsonCommon.h.

◆ ADDR_SMPL_CTRL_HI

#define ADDR_SMPL_CTRL_HI   0x05

Definition at line 146 of file sensor_epsonCommon.h.

◆ ADDR_SMPL_CTRL_LO

#define ADDR_SMPL_CTRL_LO   0x04

Definition at line 145 of file sensor_epsonCommon.h.

◆ ADDR_TEMP_HIGH

#define ADDR_TEMP_HIGH   0x0E

Definition at line 93 of file sensor_epsonCommon.h.

◆ ADDR_TEMP_LOW

#define ADDR_TEMP_LOW   0x10

Definition at line 94 of file sensor_epsonCommon.h.

◆ ADDR_UART_CTRL_HI

#define ADDR_UART_CTRL_HI   0x09

Definition at line 150 of file sensor_epsonCommon.h.

◆ ADDR_UART_CTRL_LO

#define ADDR_UART_CTRL_LO   0x08

Definition at line 149 of file sensor_epsonCommon.h.

◆ ADDR_VERSION

#define ADDR_VERSION   0x72

Definition at line 215 of file sensor_epsonCommon.h.

◆ ADDR_WIN_CTRL

#define ADDR_WIN_CTRL   0x7E

Definition at line 220 of file sensor_epsonCommon.h.

◆ ADDR_XACCL_HIGH

#define ADDR_XACCL_HIGH   0x1E

Definition at line 101 of file sensor_epsonCommon.h.

◆ ADDR_XACCL_LOW

#define ADDR_XACCL_LOW   0x20

Definition at line 102 of file sensor_epsonCommon.h.

◆ ADDR_XDLTA_HIGH

#define ADDR_XDLTA_HIGH   0x64

Definition at line 127 of file sensor_epsonCommon.h.

◆ ADDR_XDLTA_LOW

#define ADDR_XDLTA_LOW   0x66

Definition at line 128 of file sensor_epsonCommon.h.

◆ ADDR_XDLTV_HIGH

#define ADDR_XDLTV_HIGH   0x70

Definition at line 133 of file sensor_epsonCommon.h.

◆ ADDR_XDLTV_LOW

#define ADDR_XDLTV_LOW   0x72

Definition at line 134 of file sensor_epsonCommon.h.

◆ ADDR_XGYRO_HIGH

#define ADDR_XGYRO_HIGH   0x12

Definition at line 95 of file sensor_epsonCommon.h.

◆ ADDR_XGYRO_LOW

#define ADDR_XGYRO_LOW   0x14

Definition at line 96 of file sensor_epsonCommon.h.

◆ ADDR_YACCL_HIGH

#define ADDR_YACCL_HIGH   0x22

Definition at line 103 of file sensor_epsonCommon.h.

◆ ADDR_YACCL_LOW

#define ADDR_YACCL_LOW   0x24

Definition at line 104 of file sensor_epsonCommon.h.

◆ ADDR_YDLTA_HIGH

#define ADDR_YDLTA_HIGH   0x68

Definition at line 129 of file sensor_epsonCommon.h.

◆ ADDR_YDLTA_LOW

#define ADDR_YDLTA_LOW   0x6A

Definition at line 130 of file sensor_epsonCommon.h.

◆ ADDR_YDLTV_HIGH

#define ADDR_YDLTV_HIGH   0x74

Definition at line 135 of file sensor_epsonCommon.h.

◆ ADDR_YDLTV_LOW

#define ADDR_YDLTV_LOW   0x76

Definition at line 136 of file sensor_epsonCommon.h.

◆ ADDR_YGYRO_HIGH

#define ADDR_YGYRO_HIGH   0x16

Definition at line 97 of file sensor_epsonCommon.h.

◆ ADDR_YGYRO_LOW

#define ADDR_YGYRO_LOW   0x18

Definition at line 98 of file sensor_epsonCommon.h.

◆ ADDR_ZACCL_HIGH

#define ADDR_ZACCL_HIGH   0x26

Definition at line 105 of file sensor_epsonCommon.h.

◆ ADDR_ZACCL_LOW

#define ADDR_ZACCL_LOW   0x28

Definition at line 106 of file sensor_epsonCommon.h.

◆ ADDR_ZDLTA_HIGH

#define ADDR_ZDLTA_HIGH   0x6C

Definition at line 131 of file sensor_epsonCommon.h.

◆ ADDR_ZDLTA_LOW

#define ADDR_ZDLTA_LOW   0x6E

Definition at line 132 of file sensor_epsonCommon.h.

◆ ADDR_ZDLTV_HIGH

#define ADDR_ZDLTV_HIGH   0x78

Definition at line 137 of file sensor_epsonCommon.h.

◆ ADDR_ZDLTV_LOW

#define ADDR_ZDLTV_LOW   0x7A

Definition at line 138 of file sensor_epsonCommon.h.

◆ ADDR_ZGYRO_HIGH

#define ADDR_ZGYRO_HIGH   0x1A

Definition at line 99 of file sensor_epsonCommon.h.

◆ ADDR_ZGYRO_LOW

#define ADDR_ZGYRO_LOW   0x1C

Definition at line 100 of file sensor_epsonCommon.h.

◆ BIT0

#define BIT0   (1)

Definition at line 34 of file sensor_epsonCommon.h.

◆ BIT1

#define BIT1   (1 << 1)

Definition at line 35 of file sensor_epsonCommon.h.

◆ BIT10

#define BIT10   (1 << 10)

Definition at line 44 of file sensor_epsonCommon.h.

◆ BIT11

#define BIT11   (1 << 11)

Definition at line 45 of file sensor_epsonCommon.h.

◆ BIT12

#define BIT12   (1 << 12)

Definition at line 46 of file sensor_epsonCommon.h.

◆ BIT13

#define BIT13   (1 << 13)

Definition at line 47 of file sensor_epsonCommon.h.

◆ BIT14

#define BIT14   (1 << 14)

Definition at line 48 of file sensor_epsonCommon.h.

◆ BIT15

#define BIT15   (1 << 15)

Definition at line 49 of file sensor_epsonCommon.h.

◆ BIT2

#define BIT2   (1 << 2)

Definition at line 36 of file sensor_epsonCommon.h.

◆ BIT3

#define BIT3   (1 << 3)

Definition at line 37 of file sensor_epsonCommon.h.

◆ BIT4

#define BIT4   (1 << 4)

Definition at line 38 of file sensor_epsonCommon.h.

◆ BIT5

#define BIT5   (1 << 5)

Definition at line 39 of file sensor_epsonCommon.h.

◆ BIT6

#define BIT6   (1 << 6)

Definition at line 40 of file sensor_epsonCommon.h.

◆ BIT7

#define BIT7   (1 << 7)

Definition at line 41 of file sensor_epsonCommon.h.

◆ BIT8

#define BIT8   (1 << 8)

Definition at line 42 of file sensor_epsonCommon.h.

◆ BIT9

#define BIT9   (1 << 9)

Definition at line 43 of file sensor_epsonCommon.h.

◆ CMD_ATM_MODEA

#define CMD_ATM_MODEA   0x00

Definition at line 270 of file sensor_epsonCommon.h.

◆ CMD_ATM_MODEB

#define CMD_ATM_MODEB   0x10

Definition at line 271 of file sensor_epsonCommon.h.

◆ CMD_ATM_MODEC

#define CMD_ATM_MODEC   0x20

Definition at line 272 of file sensor_epsonCommon.h.

◆ CMD_BURST

#define CMD_BURST   0x80

Definition at line 225 of file sensor_epsonCommon.h.

◆ CMD_CONFIG

#define CMD_CONFIG   0x02

Definition at line 227 of file sensor_epsonCommon.h.

◆ CMD_FIRTAP128FC100

#define CMD_FIRTAP128FC100   0x11

Definition at line 265 of file sensor_epsonCommon.h.

◆ CMD_FIRTAP128FC200

#define CMD_FIRTAP128FC200   0x12

Definition at line 266 of file sensor_epsonCommon.h.

◆ CMD_FIRTAP128FC400

#define CMD_FIRTAP128FC400   0x13

Definition at line 267 of file sensor_epsonCommon.h.

◆ CMD_FIRTAP128FC50

#define CMD_FIRTAP128FC50   0x10

Definition at line 264 of file sensor_epsonCommon.h.

◆ CMD_FIRTAP32FC100

#define CMD_FIRTAP32FC100   0x09

Definition at line 257 of file sensor_epsonCommon.h.

◆ CMD_FIRTAP32FC200

#define CMD_FIRTAP32FC200   0x0A

Definition at line 258 of file sensor_epsonCommon.h.

◆ CMD_FIRTAP32FC400

#define CMD_FIRTAP32FC400   0x0B

Definition at line 259 of file sensor_epsonCommon.h.

◆ CMD_FIRTAP32FC50

#define CMD_FIRTAP32FC50   0x08

Definition at line 256 of file sensor_epsonCommon.h.

◆ CMD_FIRTAP64FC100

#define CMD_FIRTAP64FC100   0x0D

Definition at line 261 of file sensor_epsonCommon.h.

◆ CMD_FIRTAP64FC200

#define CMD_FIRTAP64FC200   0x0E

Definition at line 262 of file sensor_epsonCommon.h.

◆ CMD_FIRTAP64FC400

#define CMD_FIRTAP64FC400   0x0F

Definition at line 263 of file sensor_epsonCommon.h.

◆ CMD_FIRTAP64FC50

#define CMD_FIRTAP64FC50   0x0C

Definition at line 260 of file sensor_epsonCommon.h.

◆ CMD_FLTAP0

#define CMD_FLTAP0   0x00

Definition at line 248 of file sensor_epsonCommon.h.

◆ CMD_FLTAP128

#define CMD_FLTAP128   0x07

Definition at line 255 of file sensor_epsonCommon.h.

◆ CMD_FLTAP16

#define CMD_FLTAP16   0x04

Definition at line 252 of file sensor_epsonCommon.h.

◆ CMD_FLTAP2

#define CMD_FLTAP2   0x01

Definition at line 249 of file sensor_epsonCommon.h.

◆ CMD_FLTAP32

#define CMD_FLTAP32   0x05

Definition at line 253 of file sensor_epsonCommon.h.

◆ CMD_FLTAP4

#define CMD_FLTAP4   0x02

Definition at line 250 of file sensor_epsonCommon.h.

◆ CMD_FLTAP64

#define CMD_FLTAP64   0x06

Definition at line 254 of file sensor_epsonCommon.h.

◆ CMD_FLTAP8

#define CMD_FLTAP8   0x03

Definition at line 251 of file sensor_epsonCommon.h.

◆ CMD_RATE100

#define CMD_RATE100   0x0A

Definition at line 240 of file sensor_epsonCommon.h.

◆ CMD_RATE1000

#define CMD_RATE1000   0x01

Definition at line 231 of file sensor_epsonCommon.h.

◆ CMD_RATE125

#define CMD_RATE125   0x04

Definition at line 234 of file sensor_epsonCommon.h.

◆ CMD_RATE15_625

#define CMD_RATE15_625   0x07

Definition at line 237 of file sensor_epsonCommon.h.

◆ CMD_RATE20

#define CMD_RATE20   0x0F

Definition at line 245 of file sensor_epsonCommon.h.

◆ CMD_RATE200

#define CMD_RATE200   0x09

Definition at line 239 of file sensor_epsonCommon.h.

◆ CMD_RATE2000

#define CMD_RATE2000   0x00

Definition at line 230 of file sensor_epsonCommon.h.

◆ CMD_RATE25

#define CMD_RATE25   0x0E

Definition at line 244 of file sensor_epsonCommon.h.

◆ CMD_RATE250

#define CMD_RATE250   0x03

Definition at line 233 of file sensor_epsonCommon.h.

◆ CMD_RATE31_25

#define CMD_RATE31_25   0x06

Definition at line 236 of file sensor_epsonCommon.h.

◆ CMD_RATE40

#define CMD_RATE40   0x0D

Definition at line 243 of file sensor_epsonCommon.h.

◆ CMD_RATE400

#define CMD_RATE400   0x08

Definition at line 238 of file sensor_epsonCommon.h.

◆ CMD_RATE50

#define CMD_RATE50   0x0C

Definition at line 242 of file sensor_epsonCommon.h.

◆ CMD_RATE500

#define CMD_RATE500   0x02

Definition at line 232 of file sensor_epsonCommon.h.

◆ CMD_RATE62_5

#define CMD_RATE62_5   0x05

Definition at line 235 of file sensor_epsonCommon.h.

◆ CMD_RATE80

#define CMD_RATE80   0x0B

Definition at line 241 of file sensor_epsonCommon.h.

◆ CMD_SAMPLING

#define CMD_SAMPLING   0x01

Definition at line 226 of file sensor_epsonCommon.h.

◆ DEG2RAD

#define DEG2RAD   (3.14159 / 180.0)

Definition at line 55 of file sensor_epsonCommon.h.

◆ EPSON_RESET_DELAY_MS

#define EPSON_RESET_DELAY_MS   (3000)

Definition at line 52 of file sensor_epsonCommon.h.

◆ EPSON_RESET_LOW_WIDTH_MS

#define EPSON_RESET_LOW_WIDTH_MS   (100)

Definition at line 51 of file sensor_epsonCommon.h.

◆ MG2MPS2

#define MG2MPS2   (9.80665 / 1000.0)

Definition at line 57 of file sensor_epsonCommon.h.

◆ MPS22MG

#define MPS22MG   (1000.0 / 9.80665)

Definition at line 58 of file sensor_epsonCommon.h.

◆ R_MATRIX_A_M11_HI

#define R_MATRIX_A_M11_HI   0x4B

Definition at line 193 of file sensor_epsonCommon.h.

◆ R_MATRIX_A_M11_LO

#define R_MATRIX_A_M11_LO   0x4A

Definition at line 192 of file sensor_epsonCommon.h.

◆ R_MATRIX_A_M12_HI

#define R_MATRIX_A_M12_HI   0x4D

Definition at line 195 of file sensor_epsonCommon.h.

◆ R_MATRIX_A_M12_LO

#define R_MATRIX_A_M12_LO   0x4C

Definition at line 194 of file sensor_epsonCommon.h.

◆ R_MATRIX_A_M13_HI

#define R_MATRIX_A_M13_HI   0x4F

Definition at line 197 of file sensor_epsonCommon.h.

◆ R_MATRIX_A_M13_LO

#define R_MATRIX_A_M13_LO   0x4E

Definition at line 196 of file sensor_epsonCommon.h.

◆ R_MATRIX_A_M21_HI

#define R_MATRIX_A_M21_HI   0x51

Definition at line 199 of file sensor_epsonCommon.h.

◆ R_MATRIX_A_M21_LO

#define R_MATRIX_A_M21_LO   0x50

Definition at line 198 of file sensor_epsonCommon.h.

◆ R_MATRIX_A_M22_HI

#define R_MATRIX_A_M22_HI   0x53

Definition at line 201 of file sensor_epsonCommon.h.

◆ R_MATRIX_A_M22_LO

#define R_MATRIX_A_M22_LO   0x52

Definition at line 200 of file sensor_epsonCommon.h.

◆ R_MATRIX_A_M23_HI

#define R_MATRIX_A_M23_HI   0x55

Definition at line 203 of file sensor_epsonCommon.h.

◆ R_MATRIX_A_M23_LO

#define R_MATRIX_A_M23_LO   0x54

Definition at line 202 of file sensor_epsonCommon.h.

◆ R_MATRIX_A_M31_HI

#define R_MATRIX_A_M31_HI   0x57

Definition at line 205 of file sensor_epsonCommon.h.

◆ R_MATRIX_A_M31_LO

#define R_MATRIX_A_M31_LO   0x56

Definition at line 204 of file sensor_epsonCommon.h.

◆ R_MATRIX_A_M32_HI

#define R_MATRIX_A_M32_HI   0x59

Definition at line 207 of file sensor_epsonCommon.h.

◆ R_MATRIX_A_M32_LO

#define R_MATRIX_A_M32_LO   0x58

Definition at line 206 of file sensor_epsonCommon.h.

◆ R_MATRIX_A_M33_HI

#define R_MATRIX_A_M33_HI   0x5B

Definition at line 209 of file sensor_epsonCommon.h.

◆ R_MATRIX_A_M33_LO

#define R_MATRIX_A_M33_LO   0x5A

Definition at line 208 of file sensor_epsonCommon.h.

◆ RAD2DEG

#define RAD2DEG   (180.0 / 3.14159)

Definition at line 56 of file sensor_epsonCommon.h.

◆ VAL_CONFIG_MODE

#define VAL_CONFIG_MODE   0x04

Definition at line 276 of file sensor_epsonCommon.h.

◆ VAL_SAMPLING_MODE

#define VAL_SAMPLING_MODE   0x00

Definition at line 275 of file sensor_epsonCommon.h.

◆ WIN_ID0

#define WIN_ID0   0x00

Definition at line 222 of file sensor_epsonCommon.h.

◆ WIN_ID1

#define WIN_ID1   0x01

Definition at line 223 of file sensor_epsonCommon.h.

Enumeration Type Documentation

◆ EpsonFeatureFlags

Enumerator
HAS_ATTITUDE_OUTPUT 
HAS_DLT_OUTPUT 
HAS_ATTI_ON_REG 
HAS_ROT_MATRIX 
HAS_RANGE_OVER 
HAS_RTDIAG 
HAS_ARANGE 
HAS_INITIAL_BACKUP 

Definition at line 302 of file sensor_epsonCommon.h.

◆ EpsonModels

Enumerator
G_EMPTY 
G320PDG0 
G320PDGN 
G354PDH0 
G364PDCA 
G364PDC0 
G365PDC1 
G365PDF1 
G370PDF1 
G370PDFN 
G370PDS0 
G330PDG0 
G366PDG0 
G370PDG0 
G370PDT0 
G570PR20 
G_UNKNOWN 

Definition at line 282 of file sensor_epsonCommon.h.

Function Documentation

◆ read16()

unsigned short read16 ( unsigned char  ,
unsigned int   
)

Definition at line 75 of file sensor_epsonSpi.c.

◆ registerRead16()

unsigned short registerRead16 ( unsigned char  ,
unsigned char  ,
unsigned int   
)

Definition at line 101 of file sensor_epsonSpi.c.

◆ registerWriteByte()

void registerWriteByte ( unsigned char  ,
unsigned char  ,
unsigned char  ,
unsigned int   
)

Definition at line 60 of file sensor_epsonSpi.c.

◆ sensorDataByteLength()

unsigned int sensorDataByteLength ( const struct EpsonProperties ,
const struct EpsonOptions  
)

Definition at line 671 of file sensor_epsonCommon.c.

◆ sensorDataReadBurstNOptions()

int sensorDataReadBurstNOptions ( const struct EpsonProperties ,
const struct EpsonOptions ,
struct EpsonData  
)

Definition at line 451 of file sensor_epsonSpi.c.

◆ sensorDummyWrite()

void sensorDummyWrite ( void  )

Definition at line 766 of file sensor_epsonCommon.c.

◆ sensorDumpRegisters()

void sensorDumpRegisters ( const struct EpsonProperties )

Definition at line 1061 of file sensor_epsonCommon.c.

◆ sensorFlashBackup()

int sensorFlashBackup ( const struct EpsonProperties )

Definition at line 638 of file sensor_epsonCommon.c.

◆ sensorFlashTest()

int sensorFlashTest ( const struct EpsonProperties )

Definition at line 539 of file sensor_epsonCommon.c.

◆ sensorGetDeviceModel()

int sensorGetDeviceModel ( struct EpsonProperties ,
char *  prod_id,
char *  serial_id 
)

Definition at line 1192 of file sensor_epsonCommon.c.

◆ sensorGetProductId()

char* sensorGetProductId ( char *  prod_id)

Definition at line 782 of file sensor_epsonCommon.c.

◆ sensorGetSerialId()

char* sensorGetSerialId ( char *  serial_id)

Definition at line 808 of file sensor_epsonCommon.c.

◆ sensorHWReset()

int sensorHWReset ( void  )

Definition at line 413 of file sensor_epsonCommon.c.

◆ sensorInitialBackup()

int sensorInitialBackup ( const struct EpsonProperties )

Definition at line 603 of file sensor_epsonCommon.c.

◆ sensorInitOptions()

int sensorInitOptions ( const struct EpsonProperties ,
struct EpsonOptions  
)

Definition at line 835 of file sensor_epsonCommon.c.

◆ sensorPowerOn()

int sensorPowerOn ( void  )

Definition at line 445 of file sensor_epsonCommon.c.

◆ sensorReset()

void sensorReset ( const struct EpsonProperties )

Definition at line 522 of file sensor_epsonCommon.c.

◆ sensorSelfTest()

int sensorSelfTest ( const struct EpsonProperties )

Definition at line 570 of file sensor_epsonCommon.c.

◆ sensorStart()

void sensorStart ( void  )

Definition at line 490 of file sensor_epsonCommon.c.

◆ sensorStop()

void sensorStop ( void  )

Definition at line 504 of file sensor_epsonCommon.c.

◆ writeByte()

void writeByte ( unsigned char  ,
unsigned char  ,
unsigned int   
)

Definition at line 39 of file sensor_epsonSpi.c.

Variable Documentation

◆ epson_sensors

struct EpsonProperties epson_sensors[G_UNKNOWN+1]

Definition at line 28 of file sensor_epsonCommon.c.



ess_imu_driver
Author(s):
autogenerated on Wed Dec 11 2024 03:06:30