Vicon UDP Parsing [Python]

Using Python to parse the Vicon UDP stream without the need for DataStream SDK or an OS

Code author: Zhiyuan (Nick) Zhang of Professor Panagiotis Tsiotras's Dynamics and Control Systems Lab.

Direct repo link: https://github.gatech.edu/GT-AE-Indoor-Flight-Laboratory/Python-Vicon-UDP-Parsing

Python code for accessing and parsing the UDP stream output by Vicon Tracker.

Vicon Tracker outputs a generic UDP stream that can be accessed without using the Vicon DataStream SDK. In embedded applications or where use of this SDK is not possible or undesired, it is possible to simply parse this UDP stream and extract the relevant Vicon data. DataBlock.h, in the Vicon Tracker installation folder (specifically C:\Program Files\Vicon\Tracker3.7\Simulink\UDP in the IFL PCs) describes the format of these UDP messages.

This repo contains 2 simple scripts for accessing and parsing these UDP messages:

  1. SimpleSingleObjectUDP.py accesses the UDP stream, parses it to extract an object's 6 position and orientation values, then prints to the terminal.

  2. MultithreadAsynchronousUDP.py extends functionality by implementing multi-threading and the ability to handle asynchronous UDP and program execution rates.

Last updated