Display correct speed / heading in GN extended headers in wireshark
According to wireshark trace, speed = 327,8 m/s which is not correct as almost exactly double the max value from standard. According to CAM standard: "For values equal to or greater than 163,82 m/s, the value shall be set to 16 382. When the information is not available, the value shall be set to 16 383." We configure it in xml as
<Source Type="StaticPosition">
<FixType>Fix2d</FixType>
<Speed>10</Speed>
Also GN Beacons (without asn.1 encoded cam) contain the wrong speed value. Heading is always 0.
--
Two issues were identified in the debugging process:
- Flag itsGnIsMobile is false by default and therefore speed and heading are not encoded. Enable it by default as we use usually mobile stations. It's always possible to set it via xml config:
<itsGnIsMobile>true</itsGnIsMobile>
- There seems to be an issue with wireshark and PAI (position accuracy indicator) value. We enable PAI by default, but then the speed value is not correctly displayed in wireshark. Even if the bit mask is correctly displayed in wireshark as raw values, wireshark doesn’t seem to clear the bit 15, so if PAI is set to 1, then it displays (in the human readable decoded section) wrong speed taking all 16 bits (0-15). Set PAI now to false by default in EgoPositionManager.cpp, for the sake of displaying speed correctly in wireshark.