dRonin  adbada4
dRonin firmware
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
uavtalk.c File Reference

UAVTalk library, implements to telemetry protocol. See the wiki for more details. More...

#include "openpilot.h"
#include "uavtalk.h"
#include "uavtalk_priv.h"
#include "pios_mutex.h"
#include "pios_thread.h"

Go to the source code of this file.

Functions

static int32_t objectTransaction (UAVTalkConnectionData *connection, UAVObjHandle objectId, uint16_t instId, uint8_t type)
 
static int32_t sendObject (UAVTalkConnectionData *connection, UAVObjHandle obj, uint16_t instId, uint8_t type)
 
static int32_t sendSingleObject (UAVTalkConnectionData *connection, UAVObjHandle obj, uint16_t instId, uint8_t type)
 
static int32_t receiveObject (UAVTalkConnectionData *connection)
 
static int32_t sendNack (UAVTalkConnectionData *connection, uint32_t objId, uint16_t instId)
 
UAVTalkConnection UAVTalkInitialize (void *ctx, UAVTalkOutputCb outputStream, UAVTalkAckCb ackCallback, UAVTalkReqCb reqCallback, UAVTalkFileCb fileCallback)
 
void UAVTalkGetStats (UAVTalkConnection connection, UAVTalkStats *stats)
 
int32_t UAVTalkSendObject (UAVTalkConnection connection, UAVObjHandle obj, uint16_t instId, uint8_t acked)
 
int32_t UAVTalkSendObjectTimestamped (UAVTalkConnection connectionHandle, UAVObjHandle obj, uint16_t instId)
 
UAVTalkRxState UAVTalkProcessInputStreamQuiet (UAVTalkConnection connection, uint8_t rxbyte)
 
void UAVTalkProcessInputStream (UAVTalkConnection connectionHandle, uint8_t *rxbytes, int numbytes)
 
int32_t UAVTalkRelayPacket (UAVTalkConnection inConnectionHandle, UAVTalkConnection outConnectionHandle)
 
int32_t UAVTalkReceiveObject (UAVTalkConnection connectionHandle)
 
uint32_t UAVTalkGetPacketObjId (UAVTalkConnection connection)
 
uint32_t UAVTalkGetPacketInstId (UAVTalkConnection connection)
 
static void handleFileReq (UAVTalkConnectionData *connection)
 
int32_t UAVTalkSendNack (UAVTalkConnection connectionHandle, uint32_t objId, uint16_t instId)
 

Detailed Description

UAVTalk library, implements to telemetry protocol. See the wiki for more details.

Author
The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
Tau Labs, http://taulabs.org, Copyright (C) 2013-2014
dRonin, http://dRonin.org, Copyright (C) 2017

This code packetizes UAVObjects into UAVTalk messages includes the CRC for transmission through various physical layers.

See Also
The GNU Public License (GPL) Version 3

Definition in file uavtalk.c.