UART ASCII Asynchronous Packet Parsers

This group of functions allow parsing of ASCII asynchronous data packets from VectorNav sensors. More...

## Functions

void | VnUartPacket_parseVNYPR (VnUartPacket *packet, vec3f *yawPitchRoll)
| Parses a VNYPR asynchronous packet. More...
void | VnUartPacket_parseVNQTN (VnUartPacket *packet, vec4f *quaternion)
| Parses a VNQTN asynchronous packet. More...
void | VnUartPacket_parseVNQMR (VnUartPacket *packet, vec4f *quaternion, vec3f *magnetic, vec3f *acceleration, vec3f *angularRate)
| Parses a VNQMR asynchronous packet. More...
void | VnUartPacket_parseVNMAG (VnUartPacket *packet, vec3f *magnetic)
| Parses a VNMAG asynchronous packet. More...
void | VnUartPacket_parseVNACC (VnUartPacket *packet, vec3f *acceleration)
| Parses a VNACC asynchronous packet. More...
void | VnUartPacket_parseVNGYR (VnUartPacket *packet, vec3f *angularRate)
| Parses a VNGYR asynchronous packet. More...
void | VnUartPacket_parseVNMAR (VnUartPacket *packet, vec3f *magnetic, vec3f *acceleration, vec3f *angularRate)
| Parses a VNMAR asynchronous packet. More...
VnError | VnUartPacket_parseVNYMR (VnUartPacket *packet, vec3f *yawPitchRoll, vec3f *magnetic, vec3f *acceleration, vec3f *angularRate)
| Parses a VNYMR asynchronous packet. More...
void | VnUartPacket_parseVNYBA (VnUartPacket *packet, vec3f *yawPitchRoll, vec3f *accelerationBody, vec3f *angularRate)
| Parses a VNYMR asynchronous packet. More...
void | VnUartPacket_parseVNYIA (VnUartPacket *packet, vec3f *yawPitchRoll, vec3f *accelerationInertial, vec3f *angularRate)
| Parses a VNYIA asynchronous packet. More...
void | VnUartPacket_parseVNIMU (VnUartPacket *packet, vec3f *magneticUncompensated, vec3f *accelerationUncompensated, vec3f *angularRateUncompensated, float *temperature, float *pressure)
| Parses a VNIMU asynchronous packet. More...
void | VnUartPacket_parseVNGPS (VnUartPacket *packet, double *time, uint16_t *week, uint8_t *gpsFix, uint8_t *numSats, vec3d *lla, vec3f *nedVel, vec3f *nedAcc, float *speedAcc, float *timeAcc)
| Parses a VNGPS asynchronous packet. More...
void | VnUartPacket_parseVNINS (VnUartPacket *packet, double *time, uint16_t *week, uint16_t *status, vec3f *yawPitchRoll, vec3d *lla, vec3f *nedVel, float *attUncertainty, float *posUncertainty, float *velUncertainty)
| Parses a VNINS asynchronous packet. More...
void | VnUartPacket_parseVNINE (VnUartPacket *packet, double *time, uint16_t *week, uint16_t *status, vec3f *yawPitchRoll, vec3d *position, vec3f *velocity, float *attUncertainty, float *posUncertainty, float *velUncertainty)
| Parses a VNINE asynchronous packet. More...
void | VnUartPacket_parseVNISL (VnUartPacket *packet, vec3f *ypr, vec3d *lla, vec3f *velocity, vec3f *acceleration, vec3f *angularRate)
| Parse a VNISL asynchronous packet. More...
void | VnUartPacket_parseVNISE (VnUartPacket *packet, vec3f *ypr, vec3d *position, vec3f *velocity, vec3f *acceleration, vec3f *angularRate)
| Parse a VNISE asynchronous packet. More...
void | VnUartPacket_parseVNGPE (VnUartPacket *packet, double *tow, uint16_t *week, uint8_t *gpsFix, uint8_t *numSats, vec3d *position, vec3f *velocity, vec3f *posAcc, float *speedAcc, float *timeAcc)
| Parses a VNGPE asynchronous packet. More...
void | VnUartPacket_parseVNDTV (VnUartPacket *packet, float *deltaTime, vec3f *deltaTheta, vec3f *deltaVelocity)
| Parses a VNDTV asynchronous packet. More...

## Detailed Description

This group of functions allow parsing of ASCII asynchronous data packets from VectorNav sensors.

The units are not specified for the out parameters since these functions do a simple conversion operation from the received packet string. Please consult the appropriate sensor user manual for details about the units returned by the sensor.

## Function Documentation

void VnUartPacket_parseVNACC | ( | VnUartPacket * | packet,
|  | vec3f * | acceleration
| ) |  |

Parses a VNACC asynchronous packet.

Parameters

  [in] | packet | The packet to extract the values from.
  [out] | acceleration | The acceleration values in the packet.

void VnUartPacket_parseVNDTV | ( | VnUartPacket * | packet,
|  | float * | deltaTime,
|  | vec3f * | deltaTheta,
|  | vec3f * | deltaVelocity
| ) |  |

Parses a VNDTV asynchronous packet.

Parameters

  [in] | packet | The packet to extract the values from.
  [out] | deltaTime | The DeltaTime value in the packet.
  [out] | deltaTheta | The DeltaTheta values in the packet.
  [out] | deltaVelocity | The DeltaVelocity values in the packet.

void VnUartPacket_parseVNGPE | ( | VnUartPacket * | packet,
|  | double * | tow,
|  | uint16_t * | week,
|  | uint8_t * | gpsFix,
|  | uint8_t * | numSats,
|  | vec3d * | position,
|  | vec3f * | velocity,
|  | vec3f * | posAcc,
|  | float * | speedAcc,
|  | float * | timeAcc
| ) |  |

Parses a VNGPE asynchronous packet.

Parameters

  [in] | packet | The packet to extract the values from.
  [out] | tow | The tow value in the packet.
  [out] | week | The week value in the packet.
  [out] | gpsFix | The GPS fix value in the packet.
  [out] | numSats | The numSats value in the packet.
  [out] | position | The ECEF position values in the packet.
  [out] | velocity | The ECEF velocity values in the packet.
  [out] | posAcc | The PosAcc values in the packet.
  [out] | speedAcc | The SpeedAcc value in the packet.
  [out] | timeAcc | The TimeAcc value in the packet.

void VnUartPacket_parseVNGPS | ( | VnUartPacket * | packet,
|  | double * | time,
|  | uint16_t * | week,
|  | uint8_t * | gpsFix,
|  | uint8_t * | numSats,
|  | vec3d * | lla,
|  | vec3f * | nedVel,
|  | vec3f * | nedAcc,
|  | float * | speedAcc,
|  | float * | timeAcc
| ) |  |

Parses a VNGPS asynchronous packet.

Parameters

  [in] | packet | The packet to extract the values from.
  [out] | time | The time value in the packet.
  [out] | week | The week value in the packet.
  [out] | gpsFix | The GPS fix value in the packet.
  [out] | numSats | The NumSats value in the packet.
  [out] | lla | The latitude, longitude and altitude values in the packet.
  [out] | nedVel | The NED velocity values in the packet.
  [out] | nedAcc | The NED position accuracy values in the packet.
  [out] | speedAcc | The SpeedAcc value in the packet.
  [out] | timeAcc | The TimeAcc value in the packet.

void VnUartPacket_parseVNGYR | ( | VnUartPacket * | packet,
|  | vec3f * | angularRate
| ) |  |

Parses a VNGYR asynchronous packet.

Parameters

  [in] | packet | The packet to extract the values from.
  [out] | angularRate | The angular rate values in the packet.

void VnUartPacket_parseVNIMU | ( | VnUartPacket * | packet,
|  | vec3f * | magneticUncompensated,
|  | vec3f * | accelerationUncompensated,
|  | vec3f * | angularRateUncompensated,
|  | float * | temperature,
|  | float * | pressure
| ) |  |

Parses a VNIMU asynchronous packet.

Parameters

  [in] | packet | The packet to extract the values from.
  [out] | magneticUncompensated | The uncompensated magnetic values in the packet.
  [out] | accelerationUncompensated | The uncompensated acceleration values in the packet.
  [out] | angularRateUncompensated | The uncompensated angular rate values in the packet.
  [out] | temperature | The temperature value in the packet.
  [out] | pressure | The pressure value in the packet.

void VnUartPacket_parseVNINE | ( | VnUartPacket * | packet,
|  | double * | time,
|  | uint16_t * | week,
|  | uint16_t * | status,
|  | vec3f * | yawPitchRoll,
|  | vec3d * | position,
|  | vec3f * | velocity,
|  | float * | attUncertainty,
|  | float * | posUncertainty,
|  | float * | velUncertainty
| ) |  |

Parses a VNINE asynchronous packet.

Parameters

  [in] | packet | The packet to extract the values from.
  [out] | time | The time value in the packet.
  [out] | week | The week value in the packet.
  [out] | status | The status value in the packet.
  [out] | yawPitchRoll | The yaw, pitch, roll values in the packet.
  [out] | position | The latitude, longitude, altitude values in the packet.
  [out] | velocity | The NED velocity values in the packet.
  [out] | attUncertainty | The attitude uncertainty value in the packet.
  [out] | posUncertainty | The position uncertainty value in the packet.
  [out] | velUncertainty | The velocity uncertainty value in the packet.

void VnUartPacket_parseVNINS | ( | VnUartPacket * | packet,
|  | double * | time,
|  | uint16_t * | week,
|  | uint16_t * | status,
|  | vec3f * | yawPitchRoll,
|  | vec3d * | lla,
|  | vec3f * | nedVel,
|  | float * | attUncertainty,
|  | float * | posUncertainty,
|  | float * | velUncertainty
| ) |  |

Parses a VNINS asynchronous packet.

Parameters

  [in] | packet | The packet to extract the values from.
  [out] | time | The time value in the packet.
  [out] | week | The week value in the packet.
  [out] | status | The status value in the packet.
  [out] | yawPitchRoll | The yaw, pitch, roll values in the packet.
  [out] | lla | The latitude, longitude, altitude values in the packet.
  [out] | nedVel | The NED velocity values in the packet.
  [out] | attUncertainty | The attitude uncertainty value in the packet.
  [out] | posUncertainty | The position uncertainty value in the packet.
  [out] | velUncertainty | The velocity uncertainty value in the packet.

void VnUartPacket_parseVNISE | ( | VnUartPacket * | packet,
|  | vec3f * | ypr,
|  | vec3d * | position,
|  | vec3f * | velocity,
|  | vec3f * | acceleration,
|  | vec3f * | angularRate
| ) |  |

Parse a VNISE asynchronous packet.

Parameters

  [in] | packet | The packet to extract the values from.
  [out] | ypr | The yaw, pitch, roll values in the packet.
  [out] | position | The ECEF position values in the packet.
  [out] | velocity | The ECEF velocity values in the packet.
  [out] | acceleration | The acceleration values in the packet.
  [out] | angularRate | The angular rate values in the packet.

void VnUartPacket_parseVNISL | ( | VnUartPacket * | packet,
|  | vec3f * | ypr,
|  | vec3d * | lla,
|  | vec3f * | velocity,
|  | vec3f * | acceleration,
|  | vec3f * | angularRate
| ) |  |

Parse a VNISL asynchronous packet.

Parameters

  [in] | packet | The packet to extract the values from.
  [out] | ypr | The yaw, pitch, roll values in the packet.
  [out] | lla | The latitude, longitude, altitude values in the packet.
  [out] | velocity | The velocity values in the packet.
  [out] | acceleration | The acceleration values in the packet.
  [out] | angularRate | The angular rate values in the packet.

void VnUartPacket_parseVNMAG | ( | VnUartPacket * | packet,
|  | vec3f * | magnetic
| ) |  |

Parses a VNMAG asynchronous packet.

Parameters

  [in] | packet | The packet to extract the values from.
  [out] | magnetic | The magnetic values in the packet.

void VnUartPacket_parseVNMAR | ( | VnUartPacket * | packet,
|  | vec3f * | magnetic,
|  | vec3f * | acceleration,
|  | vec3f * | angularRate
| ) |  |

Parses a VNMAR asynchronous packet.

Parameters

  [in] | packet | The packet to extract the values from.
  [out] | magnetic | The magnetic values in the packet.
  [out] | acceleration | The acceleration values in the packet.
  [out] | angularRate | The angular rate values in the packet.

void VnUartPacket_parseVNQMR | ( | VnUartPacket * | packet,
|  | vec4f * | quaternion,
|  | vec3f * | magnetic,
|  | vec3f * | acceleration,
|  | vec3f * | angularRate
| ) |  |

Parses a VNQMR asynchronous packet.

Parameters

  [in] | packet | The packet to extract the values from.
  [out] | quaternion | The quaternion values in the packet.
  [out] | magnetic | The magnetic values in the packet.
  [out] | acceleration | The acceleration values in the packet.
  [out] | angularRate | The angular rate values in the packet.

void VnUartPacket_parseVNQTN | ( | VnUartPacket * | packet,
|  | vec4f * | quaternion
| ) |  |

Parses a VNQTN asynchronous packet.

Parameters

  [in] | packet | The packet to extract the values from.
  [out] | quaternion | The quaternion values in the packet.

void VnUartPacket_parseVNYBA | ( | VnUartPacket * | packet,
|  | vec3f * | yawPitchRoll,
|  | vec3f * | accelerationBody,
|  | vec3f * | angularRate
| ) |  |

Parses a VNYMR asynchronous packet.

Parameters

  [in] | packet | The packet to extract the values from.
  [in] | packetLength | The number of bytes in the packet buffer.
  [out] | yawPitchRoll | The yaw, pitch, roll values in the packet.
  [out] | magnetic | The magnetic values in the packet.
  [out] | acceleration | The acceleration values in the packet.
  [out] | angularRate | The angular rate values in the packet. Parses a VNYBA asynchronous packet.
  [in] | packet | The packet to extract the values from.
  [out] | yawPitchRoll | The yaw, pitch, roll values in the packet.
  [out] | accelerationBody | The acceleration body values in the packet.
  [out] | angularRate | The angular rate values in the packet.

void VnUartPacket_parseVNYIA | ( | VnUartPacket * | packet,
|  | vec3f * | yawPitchRoll,
|  | vec3f * | accelerationInertial,
|  | vec3f * | angularRate
| ) |  |

Parses a VNYIA asynchronous packet.

Parameters

  [in] | packet | The packet to extract the values from.
  [out] | yawPitchRoll | The yaw, pitch, roll values in the packet.
  [out] | accelerationInertial | The acceleration inertial values in the packet.
  [out] | angularRate | The angular rate values in the packet.

VnError VnUartPacket_parseVNYMR | ( | VnUartPacket * | packet,
|  | vec3f * | yawPitchRoll,
|  | vec3f * | magnetic,
|  | vec3f * | acceleration,
|  | vec3f * | angularRate
| ) |  |

Parses a VNYMR asynchronous packet.

Parameters

  [in] | packet | The packet to extract the values from.
  [out] | yawPitchRoll | The yaw, pitch, roll values in the packet.
  [out] | magnetic | The magnetic values in the packet.
  [out] | acceleration | The acceleration values in the packet.
  [out] | angularRate | The angular rate values in the packet.

Examples:
  getting_started/main.c.

void VnUartPacket_parseVNYPR | ( | VnUartPacket * | packet,
|  | vec3f * | yawPitchRoll
| ) |  |

Parses a VNYPR asynchronous packet.

Parameters

  [in] | packet | The packet to extract the values from.
  [out] | yawPitchRoll | The yaw, pitch, roll values in the packet.

Examples:
  sensor/main.c.