Updated NCOM decoders
We have released a new and improved version of the C code drivers, which can be used to decode the NCOM output of the RT and Inertial+ products. There are no specific changes to the main measurements from NCOM but there are improvements to some of the status messages. The drivers are updated to include the latest features of the RT and Inertial+ firmware.
This version of the C code drivers is in regular use at OxTS. Most of our software uses a C++ implementation of the drivers but we are using these C drivers in our software test platform. This is a step change from earlier versions which were created specifically for customers and were not regularly tested.
Most of the changes to the drivers are small corrections or changes to make the drivers more compatible across a wide variety of compilers and platforms. The standard integer definitions have been updated and code that generates specific warnings on some compilers has been changed.
The drivers are now aware of the latest GPS receivers for the Inertial+: Topcon’s GB-500 and NavCom’s Sapphire. The accelerometer scale factors can be decoded from versions of the blended navigation system that support these as Kalman filter states. The fields that list what features are available in the hardware are present, though these may not be correctly configured in older RT products.
The drivers have the same programming interface as the previous version and they can be compiled in with little or no changes to other software. The latest version of the drivers is available for download on the documentation page, here... For more information on the C code NCOM drivers please contact support.
Full list of changes:
|
1354 |
Added IMU and GPS type enumerations. |
|
1355 |
Improved OmniStar serial number decoding. |
|
1356 |
Fix (possible) bug in decoder extra 66, 67 regarding casting. |
|
1367 |
Added decode extra 57: Position estimate of the primary GPS antenna (extended range).
Note that in some recent firmwares channel 57 is used in place of the older estimates of channel 12.
Thus by not having decode extra 57 the decoder would not decode the position estimates for later NCom files. |
|
1368 |
Introduce a pointer mCurStatus into mCurPkt to make decoding easier. |
|
1369 |
Guard against uncertainty with PRId8 and PRIu8 in MSVC. |
|
1370 |
Use some enumerated indexes for access into mCurPkt. |
|
1382 |
Add Accelerometer Scale Factor to decoders. |
|
1388 |
Move distance computation into own function. |
|
1391 |
Now computes 2d and 3d for both speed and distance. |
|
1404 |
Rename OmniStatusVBS* to OmniStatusVbs* and OmniStatusHP* to OmniStatusHp*. |
|
1421 |
Rename WSTime to WSpeedTime so that these are more consistently named. |
|
1422 |
Fix minor bug where WSpeedTime was not being invalidated if the incoming data is invalid or timing is invalid. |
|
1720 |
Change file encoding from ISO-8859 to ASCII by replacing superscript 2 with ^2 in some comments. |
|
2323 |
Added new output modes (MGCOM1, Javad I+RTK) to array ComOptionOutput[]. |
|
2324 |
Added GPS types (Topcon GB-500 and NavCom Sapphire) to array GpsTypeName[]. |
|
2752 |
Rename: InnWSpeedF to InnWSpeed, OptionWS* to OptionWSpeed*. |
|
2753 |
Update standard integer definitions. |
|
2756 |
Minor tidy of some hash defines. |
|
2758 |
Set mIsUmacStatusValid = 0 on bad Umac. |
|
2761 |
For decode extra 0, Set valid flag invalid when GpsNumObs, GpsPosMode, GpsVelMode, GpsAttMode raw data are invalid. |
|
2762 |
For decode extra 13 (Orientation estimate of dual antenna systems) improve logic for detecting invalids. |
|
2763 |
For decode extra 15 (Accuracy of the orientation of dual antenna systems) improve logic for detecting invalids. |
|
2764 |
For decode extra 16 (RT to vehicle rotation) improve logic for setting invalid UTC Offset. |
|
2765 |
For decode extra 20 (Differential corrections configuration) improve logic for setting invalid BaseStationId, fix bug in setting BaseStationId. |
|
2768 |
For decode extra 30 (Operating system and script version information) improve logic for setting invalids. |
|
2772 |
For decode extra 31 (Hardware configuration information) improve logic for setting invalids. |
|
2773 |
For decode extra 37 (Heading misalignment angle and accuracy) improve logic for setting invalids. |
|
2781 |
For decode extra 64 (Hardware information and external GPS receiver configuration) improve logic for setting invalids. |
|
2790 |
Add Dual Port RAM Status to decoder. |
|
2909 |
Remove mention of "RT3000" in comments as this may cause confusion. |
|
2921 |
Fix InnPitch / InnHeading mix up bug. |
|
2946 |
Catch -1 issues in decode extra 29. |
|
2963 |
Change enumeration storage type to a uint8_t and set functions accordingly. This should now be safer. |
|
2964 |
Add output packet type interpolated to list of output packet types. |
|
2965 |
Added the decoding of primary GPS position, velocity and raw rates, and secondary GPS raw rate (decode extra 64). |
|
2966 |
Add GPS feature set two: Glonass, Galileo, RawRng, RawDop, RawL1, RawL2, RawL5. |


