Paparazzi UAS  v5.0.5_stable-7-g4b8bbb7
Paparazzi is a free software Unmanned Aircraft System.
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
airspeed_ets.c File Reference

Driver for the EagleTree Systems Airspeed Sensor. More...

#include "sensors/airspeed_ets.h"
#include "state.h"
#include "mcu_periph/i2c.h"
#include "mcu_periph/uart.h"
#include "messages.h"
#include "subsystems/datalink/downlink.h"
#include <math.h>
+ Include dependency graph for airspeed_ets.c:

Go to the source code of this file.

Macros

#define AIRSPEED_ETS_ADDR   0xEA
 
#define AIRSPEED_ETS_SCALE   1.8
 
#define AIRSPEED_ETS_OFFSET   0
 
#define AIRSPEED_ETS_OFFSET_MAX   1750
 
#define AIRSPEED_ETS_OFFSET_MIN   1450
 
#define AIRSPEED_ETS_OFFSET_NBSAMPLES_INIT   40
 
#define AIRSPEED_ETS_OFFSET_NBSAMPLES_AVRG   60
 
#define AIRSPEED_ETS_NBSAMPLES_AVRG   10
 
#define AIRSPEED_ETS_I2C_DEV   i2c0
 
#define DOWNLINK_DEVICE   DOWNLINK_AP_DEVICE
 

Functions

void airspeed_ets_init (void)
 
void airspeed_ets_read_periodic (void)
 
void airspeed_ets_read_event (void)
 

Variables

uint16_t airspeed_ets_raw
 
uint16_t airspeed_ets_offset
 
bool_t airspeed_ets_valid
 
float airspeed_ets
 
int airspeed_ets_buffer_idx
 
float airspeed_ets_buffer [AIRSPEED_ETS_NBSAMPLES_AVRG]
 
struct i2c_transaction airspeed_ets_i2c_trans
 
volatile bool_t airspeed_ets_i2c_done
 
bool_t airspeed_ets_offset_init
 
uint32_t airspeed_ets_offset_tmp
 
uint16_t airspeed_ets_cnt
 

Detailed Description

Driver for the EagleTree Systems Airspeed Sensor.

Has only been tested with V3 of the sensor hardware.

Notes: Connect directly to TWOG/Tiny I2C port. Multiple sensors can be chained together. Sensor should be in the proprietary mode (default) and not in 3rd party mode.

Sensor module wire assignments: Red wire: 5V White wire: Ground Yellow wire: SDA Brown wire: SCL

Definition in file airspeed_ets.c.

Macro Definition Documentation

#define AIRSPEED_ETS_ADDR   0xEA

Definition at line 55 of file airspeed_ets.c.

Referenced by airspeed_ets_read_periodic().

#define AIRSPEED_ETS_I2C_DEV   i2c0

Definition at line 69 of file airspeed_ets.c.

Referenced by airspeed_ets_read_periodic().

#define AIRSPEED_ETS_NBSAMPLES_AVRG   10

Definition at line 66 of file airspeed_ets.c.

Referenced by airspeed_ets_init(), and airspeed_ets_read_event().

#define AIRSPEED_ETS_OFFSET   0

Definition at line 60 of file airspeed_ets.c.

Referenced by airspeed_ets_read_event().

#define AIRSPEED_ETS_OFFSET_MAX   1750

Definition at line 62 of file airspeed_ets.c.

Referenced by airspeed_ets_read_event().

#define AIRSPEED_ETS_OFFSET_MIN   1450

Definition at line 63 of file airspeed_ets.c.

Referenced by airspeed_ets_read_event().

#define AIRSPEED_ETS_OFFSET_NBSAMPLES_AVRG   60

Definition at line 65 of file airspeed_ets.c.

Referenced by airspeed_ets_init(), and airspeed_ets_read_event().

#define AIRSPEED_ETS_OFFSET_NBSAMPLES_INIT   40

Definition at line 64 of file airspeed_ets.c.

Referenced by airspeed_ets_init().

#define AIRSPEED_ETS_SCALE   1.8

Definition at line 57 of file airspeed_ets.c.

Referenced by airspeed_ets_read_event().

#define DOWNLINK_DEVICE   DOWNLINK_AP_DEVICE

Definition at line 73 of file airspeed_ets.c.

Function Documentation

void airspeed_ets_read_periodic ( void  )

Variable Documentation

float airspeed_ets

Definition at line 80 of file airspeed_ets.c.

Referenced by airspeed_ets_init(), and airspeed_ets_read_event().

float airspeed_ets_buffer[AIRSPEED_ETS_NBSAMPLES_AVRG]

Definition at line 82 of file airspeed_ets.c.

Referenced by airspeed_ets_init(), and airspeed_ets_read_event().

int airspeed_ets_buffer_idx

Definition at line 81 of file airspeed_ets.c.

Referenced by airspeed_ets_init(), and airspeed_ets_read_event().

uint16_t airspeed_ets_cnt

Definition at line 90 of file airspeed_ets.c.

Referenced by airspeed_ets_init(), and airspeed_ets_read_event().

volatile bool_t airspeed_ets_i2c_done

Definition at line 87 of file airspeed_ets.c.

Referenced by airspeed_ets_init().

struct i2c_transaction airspeed_ets_i2c_trans
uint16_t airspeed_ets_offset

Definition at line 78 of file airspeed_ets.c.

Referenced by airspeed_ets_init(), and airspeed_ets_read_event().

bool_t airspeed_ets_offset_init

Definition at line 88 of file airspeed_ets.c.

Referenced by airspeed_ets_init(), and airspeed_ets_read_event().

uint32_t airspeed_ets_offset_tmp

Definition at line 89 of file airspeed_ets.c.

Referenced by airspeed_ets_init(), and airspeed_ets_read_event().

uint16_t airspeed_ets_raw

Definition at line 77 of file airspeed_ets.c.

Referenced by airspeed_ets_init(), and airspeed_ets_read_event().

bool_t airspeed_ets_valid

Definition at line 79 of file airspeed_ets.c.

Referenced by airspeed_ets_init(), and airspeed_ets_read_event().