dRonin  adbada4
dRonin firmware
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
UAVO to FrSKY Bridge Module

Functions

 if (BaroAltitudeHandle()!=NULL)
 
 PIOS_COM_SendBuffer (shub_global->frsky_port, shub_global->serial_buf, msg_length)
 
 if (frame_trigger(FRSKY_FRAME_BATTERY))
 
 if (frame_trigger(FRSKY_FRAME_GPS))
 
static bool frame_trigger (uint8_t frame_num)
 
static uint16_t frsky_pack_altitude (float altitude, uint8_t *serial_buf)
 
static uint16_t frsky_pack_temperature_01 (float temperature_01, uint8_t *serial_buf)
 
static uint16_t frsky_pack_temperature_02 (float temperature_02, uint8_t *serial_buf)
 
static uint16_t frsky_pack_accel (float accels_x, float accels_y, float accels_z, uint8_t *serial_buf)
 
static uint16_t frsky_pack_cellvoltage (uint8_t cell, float cell_voltage, uint8_t *serial_buf)
 
static uint16_t frsky_pack_fas (float voltage, float current, uint8_t *serial_buf)
 
static uint16_t frsky_pack_rpm (uint16_t rpm, uint8_t *serial_buf)
 
static uint16_t frsky_pack_fuel (float fuel_level, uint8_t *serial_buf)
 
static uint16_t frsky_pack_gps (float course, int32_t latitude, int32_t longitude, float altitude, float speed, uint8_t *serial_buf)
 
static uint16_t frsky_pack_stop (uint8_t *serial_buf)
 
static int16_t frsky_acceleration_unit (float accel)
 
static void frsky_serialize_value (uint8_t valueid, uint8_t *value, uint8_t *serial_buf, uint8_t *index)
 
static void frsky_write_userdata_byte (uint8_t byte, uint8_t *serial_buf, uint8_t *index)
 

Variables

case MODULESETTINGS_FRSKYACCELDATA_ATTITUDEANGLES
 
AttitudeActualPitchGet & accY
 
AttitudeActualYawGet & accZ
 
accX *accY *accZbreak = GRAVITY / 10.0f
 
 msg_length
 
 last_armed = flightStatus.Armed
 
float altitude = baroAltitude.Altitude - altitude_offset
 

Detailed Description

Function Documentation

static bool frame_trigger ( uint8_t  frame_num)
static

Definition at line 537 of file UAVOFrSKYSensorHubBridge.c.

static int16_t frsky_acceleration_unit ( float  accel)
static

Convert acceleration value to frsky acceleration unit

Returns
Acceleration value

Definition at line 814 of file UAVOFrSKYSensorHubBridge.c.

static uint16_t frsky_pack_accel ( float  accels_x,
float  accels_y,
float  accels_z,
uint8_t *  serial_buf 
)
static

Writes acceleration values to buffer

Returns
number of bytes written to the buffer

Definition at line 614 of file UAVOFrSKYSensorHubBridge.c.

static uint16_t frsky_pack_altitude ( float  altitude,
uint8_t *  serial_buf 
)
static

Writes altitude to buffer

Returns
number of bytes written to the buffer

Definition at line 563 of file UAVOFrSKYSensorHubBridge.c.

static uint16_t frsky_pack_cellvoltage ( uint8_t  cell,
float  cell_voltage,
uint8_t *  serial_buf 
)
static

Definition at line 634 of file UAVOFrSKYSensorHubBridge.c.

static uint16_t frsky_pack_fas ( float  voltage,
float  current,
uint8_t *  serial_buf 
)
static

Writes battery values to buffer

Returns
number of bytes written to the buffer

Definition at line 657 of file UAVOFrSKYSensorHubBridge.c.

static uint16_t frsky_pack_fuel ( float  fuel_level,
uint8_t *  serial_buf 
)
static

Writes fuel value [0.0 ... 1.0] to buffer

Returns
number of bytes written to the buffer

Definition at line 695 of file UAVOFrSKYSensorHubBridge.c.

static uint16_t frsky_pack_gps ( float  course,
int32_t  latitude,
int32_t  longitude,
float  altitude,
float  speed,
uint8_t *  serial_buf 
)
static

Writes gps values to buffer

Returns
number of bytes written to the buffer

Definition at line 724 of file UAVOFrSKYSensorHubBridge.c.

static uint16_t frsky_pack_rpm ( uint16_t  rpm,
uint8_t *  serial_buf 
)
static

Writes rpm value to buffer

Returns
number of bytes written to the buffer

Definition at line 682 of file UAVOFrSKYSensorHubBridge.c.

static uint16_t frsky_pack_stop ( uint8_t *  serial_buf)
static

Writes stop byte to buffer

Returns
number of bytes written to the buffer

Definition at line 803 of file UAVOFrSKYSensorHubBridge.c.

static uint16_t frsky_pack_temperature_01 ( float  temperature_01,
uint8_t *  serial_buf 
)
static

Writes baro temperature to buffer

Returns
number of bytes written to the buffer

Definition at line 582 of file UAVOFrSKYSensorHubBridge.c.

static uint16_t frsky_pack_temperature_02 ( float  temperature_02,
uint8_t *  serial_buf 
)
static

Writes accel temperature to buffer

Returns
number of bytes written to the buffer

Definition at line 598 of file UAVOFrSKYSensorHubBridge.c.

static void frsky_serialize_value ( uint8_t  valueid,
uint8_t *  value,
uint8_t *  serial_buf,
uint8_t *  index 
)
static

Write value to buffer

Definition at line 824 of file UAVOFrSKYSensorHubBridge.c.

static void frsky_write_userdata_byte ( uint8_t  byte,
uint8_t *  serial_buf,
uint8_t *  index 
)
static

Write a byte to the buffer and do byte stuffing if needed.

Definition at line 836 of file UAVOFrSKYSensorHubBridge.c.

if ( BaroAltitudeHandle()!  = NULL)

Definition at line 363 of file UAVOFrSKYSensorHubBridge.c.

if ( frame_trigger(FRSKY_FRAME_BATTERY)  )

Definition at line 386 of file UAVOFrSKYSensorHubBridge.c.

if ( frame_trigger(FRSKY_FRAME_GPS)  )

Encodes ARM status and flight mode number as RPM value Since there is no RPM information in any UAVO available, we will intentionally misuse this item to encode other useful information. It will encode flight status as three-digit number as follow: most left digit encodes arm status (200=armed, 100=disarmed) two most right digits encode flight mode number (see FlightStatus UAVO FlightMode enum) To work properly on Taranis, you have to set Blades to "60" in telemetry setting

Encode GPS status and visible satellites as T1 value We will intentionally misuse this item to encode other useful information. Right-most two digits encode visible satellite count, left-most digit has following meaning: 1 - no GPS connected 2 - no fix 3 - 2D fix 4 - 3D fix 5 - 3D fix and HomeLocation is SET - should be safe for navigation

Encode GPS HDOP and VDOP as T2 value We will intentionally misuse this item to encode other useful information. VDOP in the upper 16 bits, max 256 (2.56 * 100) HDOP in the lower 16 bits, max 256 (2.56 * 100)

Definition at line 435 of file UAVOFrSKYSensorHubBridge.c.

PIOS_COM_SendBuffer ( shub_global->  frsky_port,
shub_global->  serial_buf,
msg_length   
)

Variable Documentation

AttitudeActualPitchGet& accY

Definition at line 347 of file UAVOFrSKYSensorHubBridge.c.

AttitudeActualYawGet& accZ

Definition at line 348 of file UAVOFrSKYSensorHubBridge.c.

float altitude = baroAltitude.Altitude - altitude_offset

Definition at line 375 of file UAVOFrSKYSensorHubBridge.c.

accX* accY* accZ* break = GRAVITY / 10.0f

Definition at line 351 of file UAVOFrSKYSensorHubBridge.c.

last_armed = flightStatus.Armed

Definition at line 373 of file UAVOFrSKYSensorHubBridge.c.

case MODULESETTINGS_FRSKYACCELDATA_ATTITUDEANGLES

Definition at line 346 of file UAVOFrSKYSensorHubBridge.c.

msg_length
Initial value:
accX,
shub_global->serial_buf + msg_length)
AttitudeActualPitchGet & accY
static uint16_t frsky_pack_accel(float accels_x, float accels_y, float accels_z, uint8_t *serial_buf)
AttitudeActualYawGet & accZ

Definition at line 357 of file UAVOFrSKYSensorHubBridge.c.