rtklibexplorer / RTKLIB

A version of RTKLIB optimized for low cost GNSS receivers, especially u-blox receivers. It is based on RTKLIB 2.4.3 and is kept reasonably closely synced to that branch. This software is provided “AS IS” without any warranties of any kind so please be careful, especially if using it in any kind of real-time application.
http://rtkexplorer.com/
Other
675 stars 263 forks source link

RTCM3 GLONASS MSM4 Message conversion - missing information #75

Closed MichaelEFlip closed 3 years ago

MichaelEFlip commented 3 years ago

When I am using the conversion feature in strsvr or str2str the GLONASS MSM message is missing information after conversion. In the raw data from the base station this information is present.

I am using the following message types for conversion: "1074,1084,1094". Also when converting to MSM7 messages "1077,1087,1097" the same fields are empty.

As binary I am using the latest released windows binaries (demo5-b33e). The same problem is present when using a self compiled str2str version with x64 ubuntu.

2020-12-29 18_07_43-RTCM 3 Message Content Viewer 2020-12-29 18_08_28-RTCM 3 Message Content Viewer

stream-log.zip

DavidKelleySCSC commented 3 years ago

I just happened to notice this post today (sorry for the delay), but as the primary architecture guru for the SNIP Caster (whose RTCM decoder you use in the above), let me try and reply. This applies to SNIP, not to rtklibexplorer / RTKLIB. Two observations occur to me here:

  1. First, the SNIP RTCM3 decoder takes a 'lazy' approach to decoding by reusing the same fields for different MSM messages (after all it is first and foremost a Caster not an analysis tool). If the message in question does not in fact have the content in a column, it is shown as grey (as you have posted above). In other words. MSM4 does not in fact have any Doppler information in the message, you must use MSM6 or MSM7 for that. If you do see information (other than zero) in those fields, it implies you have another message in the same data stream providing it. Technically, that is a mis-configured RTCM stream, but I see folks sending both MSM4 and MSM7 - mostly this is just a bandwidth waste.
  2. Second, to convert GLO phase (where different carrier frequencies are used for each SV) to a more human readable value, you need to know the frequency used, which is obtained from broadcast orbits. Run the stream called "RTCM3EPH" (it is one of the preset settings in your Remote-Relay tab) and then SNIP wail be able to match GLO SVs to the correct frequency and you will see those fields then filled out.

I wish to stress that none of this is due to any shortcomings in rtklibexplorer or strsvr or str2str. So add RTCM3EPH back on your decoder if you want to see GLO phase values, and use a string like "1077(1), 1087(1),1097(1)" to get the message output you want.