Tracking Hub Administrator Guide

Version 1.4 | Published October 30, 2020 ©

Description of the FreeD protocol

The following shows a complete description of the FreeD protocol.

With the use of the XML Protocol Description, it is much easier and faster to react to new tracking protocols of new manufacturers:

<?xml version="1.0" encoding="utf-8"?>
<viz_xml_tracking title="xml_freed">
<interface type="serial"
baud ="38400"
size="8"
parity="odd"
stop="1">
</interface>
<!--option for type "udp" "tcp" ?
<!--option for parity "none", "odd", "even", "mark", "space" ?
<!--option for stop 1, 2 ? <!--option for interface Type "udp" or "tcp" <ip>10.10.10.10</ip> <port>6000</port> ?
<!--option for checksum calculation 1,2,3,4,... we'll use predefined functions> ?
<!--option for value UINT32 INT32 UINT16 INT16 ?
<!--option for order bigendian littleendian ?
<!--option for calc + - * / and one value ?
<!--do not use hex values, 0x80000 = 524288 -->
<checksum pkglen="29"
calculation="1">
</checksum>
<extraction count="9">
<axis name="rotx" start="5" len="3" order="bigendian" value="INT32" calc="/ 32768"></axis>
<axis name="roty" start="2" len="3" order="bigendian" value="INT32" calc="/ 32768"></axis>
<axis name="rotz" start="8" len="3" order="bigendian" value="INT32" calc="/ 32768"></axis>
<axis name="posx" start="11" len="3" order="bigendian" value="INT32" calc="/ 640"></axis>
<axis name="posy" start="14" len="3" order="bigendian" value="INT32" calc="/ 640"></axis>
<axis name="posz" start="17" len="3" order="bigendian" value="INT32" calc="/ 640"></axis>
<axis name="zoom" start="20" len="3" order="bigendian" value="INT32" calc="- 524288"></axis>
 
<axis name="focus" start="23" len="3" order="bigendian" value="INT32" calc="- 524288"></axis>
 
<!--example for not define axis ?
<axis name="iris" calc="!"></axis>
</extraction>
</viz_xml_tracking>