tomojitakasu / RTKLIB

2.5k stars 1.59k forks source link

RTKCONV not processing hemisphere BIN 65 66 GLONASS messages #351

Open amadill99 opened 6 years ago

amadill99 commented 6 years ago

Using an EOS Arrow 100 (L1 hemisphere) receiver and capturing BIN 1,65,66,80,64,95,96 messages with STRSVR. When processed with RTKCONV the resulting .obs does not include any GLONASS observations. When I use the Hemisphere Rinex Desktop utility those are included in the output. Have tried RTKLIB versions 2.4.2, 2.4.2p11, and the 2.4.3 branch with the same results.

amadill99 commented 6 years ago

swpin-2017-11-03.log

tomojitakasu commented 6 years ago

Use receiver option -ENAGLO with message bin 65 and 66.

DavidKelleySCSC commented 6 years ago

And there is an issue as I vaguely recall that hemisphere will only send the ephemeris information when it first decodes it, but not thereafter. So RTKCONV can repeat at the rate you ask, but if the hemisphere device is already active you might not see an output for acquired ephemeris information. Read here for the details: https://hemispheregnss.com/gnssreference/whnjs_nc.htm

amadill99 commented 6 years ago

That seems to have added the GLONASS records.

Data record from obs file.

17 11 4 19 7 59.0000000 0 16G27G21G20G 8G18G10G16G15G13R 6R22R13 R 5R20R21R 4

I wasn't getting the Rxx records before.

When I submitted the obs file to NRC's PPP Direct site I got the following error message shopnail-2017-11-04.obs | Error : A duplicate data block has been found in your RINEX observation file. Please correct and resubmit.

Filtering it through teqc allowed it to be processed on NRC's site but once again the GLONASS records were missing.

A closer look at the obs file shows that I have two set of records for each interval

17 11 4 19 7 57.0000000 0 9G27G21G20G 8G18G10G16G15G13 21185009.800 72265155.485 965.186 47.500 21461848.882 317167389.920 -1356.043 50.500 22919182.870 322874500.728 -3240.027 37.500 .....

17 11 4 19 7 57.0000000 0 16G27G21G20G 8G18G10G16G15G13R 6R22R13 R 5R20R21R 4 21185009.800 72265155.485 965.186 47.500 21461848.882 317167389.920 -1356.043 50.500 22919182.870 322874500.728 -3240.027 37.500 .....

The first without the GLONASS data and teqc must just be keeping the first one it sees.

Not sure where to go from here...

On 11/8/2017 12:08 PM, Tomoji Takasu wrote:

Use receiver option -ENAGLO with message bin 65 and 66.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/tomojitakasu/RTKLIB/issues/351#issuecomment-342943521, or mute the thread https://github.com/notifications/unsubscribe-auth/AJB49QqK8lZgMNgmatp3wgJNwXvhRHZiks5s0go9gaJpZM4QW2YX.

tomojitakasu commented 6 years ago

It seems due to a bug. It will be fixed in next release. Until the release,

(1) Use bin 76 of Hemisphere instead of bin 96. or (2) Modify the following source code and rebuild AP (RTKCONV or CONVBIN).

RTKLIB/src/rcv/crescent.c L.158 (added):

if (strstr(raw->opt,"-ENAGLO")) return 0; /* glonass follows */
amadill99 commented 6 years ago

Hi Tomoji,

Thank you for the quick response. I don't have the compiler tools to build the Windows packages so I'll wait until it becomes part of the beta builds. Which branch will this become part of? I do see where the code should be added, same spot as in the decode bin 76 subroutine.

I ran into a similar issue when I logged both bin 76 and 96 messages. It would create duplicate records that NRC CSRS-PPP would reject. The fix for that was to filter through teqc to remove the duplicates. If using the Hemisphere RINEX Desktop utility and logging bin 76 messages it wouldn't create an obs file, probably because of the missing L2 data. I'm not sure if I tried just logging bin 76 and post processing with RTKCONV. Now that I know how to deal with the GLONASS data I'll revisit that.

tomojitakasu commented 6 years ago

It is fixed in 2.4.2 p13.

remuslupin commented 5 years ago

Hi Tomoji, I had the same issue with GLONASS, and the -ENAGLO option solved it. However, I do not know how to switch between different bins because there is no option in either rtkconv or convbin.exe. Rinex Desktop from Hemisphere produce the following signals in the rinex file: L1C C1C D1C L2Y C2Y D2Y, but RTKconv produces C1C L1C D1C S1C C2P L2P D2P S2P. I get different results for some operations with these two fields and I thought it might be because of using different bin message number. Also, what is the convbin option for giving INI input configuration?

Thanks!