tomojitakasu / RTKLIB

2.5k stars 1.6k forks source link

rnx2rtkp error : no nav data, convbin doesn't create .nav file #661

Open vazhnov opened 2 years ago

vazhnov commented 2 years ago

Hello!

Thank you for this great opensource project!

I have U-Blox ZED-F9P receiver and antenna U-Blox ANN-MB-00-00. I'm trying to create precise GNSS tracks.

I never had such experience, so maybe I'm doing something wrong.

For recording, I use Armbian 22.02.1 with gpsd v3.22. For post-processing, I use Devuan 5 "daedalus" (based on Debian testing) with rtklib v2.4.3.b34.

Preparations:

export UBXOPTS='-P 27.12 -f /dev/ttyACM0'
ubxtool -e RAWX
ubxtool | fgrep RAWX

gives

UBX-RXM-RAWX:
UBX-RXM-RAWX:

Then I started to record a raw data (~570 KB for 11 minutes):

gpspipe -x 700 --raw > rover_700s_raw.ubx

In parallel, I downloaded a correction information from the nearest station (~750 kB for 15 minutes):

str2str -in 'ntrip://my-email@example.com:none@rtk2go.com:2101/Rychtal' -out /tmp/base_Rychtal.rtcm3

Then I convert them into .obs:

 $ convbin rover_700s_raw.ubx
input file  : rover_700s_raw.ubx (u-blox UBX)
->rinex obs : rover_700s_raw.obs
->rinex nav : rover_700s_raw.nav
->sbas log  : rover_700s_raw.sbs

scanning: 2022/05/07 22:16:30 GREC
2022/05/07 22:04:52-05/07 22:16:30: O=699

 $ convbin base_Rychtal.rtcm3
input file  : base_Rychtal.rtcm3 (RTCM 3)
->rinex obs : base_Rychtal.obs
->rinex nav : base_Rychtal.nav
->sbas log  : base_Rychtal.sbs

scanning: 2022/05/07 22:17:59 GREC
2022/05/07 22:02:50-05/07 22:17:59: O=910

 $ ls -l
total 4364
-rw-r--r-- 1 user user 2515356 May 14 11:15 base_Rychtal.obs
-rw-r--r-- 1 user user  756077 May  8 00:17 base_Rychtal.rtcm3
-rw-r--r-- 1 user user  607734 May 14 11:17 rover_700s_raw.obs
-rw-r--r-- 1 user user  577720 May  8 00:16 rover_700s_raw.ubx

Then I tried to create NMEA with correction:

 $ rnx2rtkp -n rover_700s_raw.obs base_Rychtal.obs
error : no nav data

So I found I have no .nav file after convbin conversion…

I've tried different options for convbin, but anyway it woun't create anything else except of .obs file.

What I'm doing wrong? How should I create a track with correction?

vazhnov commented 2 years ago

When I use debug options convbin -trace 9 base_Rychtal.rtcm3, I see in convbin.trace:

3 convrnx: format=1 file=base_Rychtal.rtcm3 ofile=base_Rychtal.obs base_Rychtal.nav       base_Rychtal.sbs
3 convrnx_s: sess=0 format=1 file=base_Rychtal.rtcm3 ofile=base_Rychtal.obs base_Rychtal.nav       base_Rychtal.sbs
3 expath  : path=base_Rychtal.rtcm3 nmax=1024
3 expath  : file=base_Rychtal.rtcm3
3 init_strfile:
3 init_rtcm:
3 scan_file: nf=1
3 open_strfile: file=base_Rychtal.rtcm3
4 input_strfile:
4 input_rtcm3f: data=00
…
2 # STATION LIST
2 #              TIME               STAID MARKER ANTENNA         RECEIVER         LATITUDE    LONGITUDE         HIGHT        DT DEL1   DEL2   DEL3 (null)
…
3 openfile:
3     0.836: createdir: path=base_Rychtal.obs
3 outrnxobsh:
3 outobstype_ver3:    
3     0.836: createdir: path=base_Rychtal.nav
3 outrnxnavh:
3     0.836: createdir: path=base_Rychtal.sbs
3 open_strfile: file=base_Rychtal.rtcm3
4 input_strfile:
4 input_rtcm3f: data=00
…
5 input_rtcm3: data=2e
4 rtk_crc24q: len=141
3 decode_rtcm3: len=141 type=1125
4 decode_head_msm: time=2022/05/07 22:17:59.00 sys=32 staid=0 nsat=8 nsig=2 sync=0 iod=0 ncell=10
3 rtcm3 1125: signals=L2I,L7I
4 input_strfile: time=2022/05/07 22:17:59.000 type=1
3 convobs :
3 outrnxobsb: n=41    
4 input_strfile:
4 input_rtcm3f: data=00
4 input_strfile: time=2022/05/07 22:17:59.000 type=-2
3 close_strfile:
3 closefile:
3 outrnxobsh:
3 outobstype_ver3:    
3 outrnxnavh:
3 free_strfile:
3 free_rtcm:
vazhnov commented 2 years ago

With strace:

 $ strace -fy -e trace=openat convbin base_Rychtal.rtcm3
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3</etc/ld.so.cache>
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libm.so.6", O_RDONLY|O_CLOEXEC) = 3</lib/x86_64-linux-gnu/libm-2.33.so>
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libc.so.6", O_RDONLY|O_CLOEXEC) = 3</lib/x86_64-linux-gnu/libc-2.33.so>
openat(AT_FDCWD, ".", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 3</tmp/1>
openat(AT_FDCWD, "base_Rychtal.rtcm3.tag", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/etc/localtime", O_RDONLY|O_CLOEXEC) = 3</usr/share/zoneinfo/Europe/Warsaw>
openat(AT_FDCWD, ".", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 3</tmp/1>
input file  : base_Rychtal.rtcm3 (RTCM 3)
->rinex obs : base_Rychtal.obs
->rinex nav : base_Rychtal.nav
->sbas log  : base_Rychtal.sbs

openat(AT_FDCWD, ".", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 3</tmp/1>
openat(AT_FDCWD, "base_Rychtal.rtcm3", O_RDONLY) = 3</tmp/1/base_Rychtal.rtcm3>
scanning: 2022/05/07 22:17:59 GREC
openat(AT_FDCWD, "base_Rychtal.obs", O_WRONLY|O_CREAT|O_TRUNC, 0666) = 3</tmp/1/base_Rychtal.obs>
openat(AT_FDCWD, "base_Rychtal.nav", O_WRONLY|O_CREAT|O_TRUNC, 0666) = 4</tmp/1/base_Rychtal.nav>
openat(AT_FDCWD, "base_Rychtal.sbs", O_WRONLY|O_CREAT|O_TRUNC, 0666) = 5</tmp/1/base_Rychtal.sbs>
openat(AT_FDCWD, "base_Rychtal.rtcm3", O_RDONLY) = 6</tmp/1/base_Rychtal.rtcm3>
2022/05/07 22:02:50-05/07 22:17:59: O=910 
+++ exited with 0 +++

I see it is trying to create base_Rychtal.nav and base_Rychtal.sbs, but I see only base_Rychtal.obs created in /tmp/1/.

vazhnov commented 2 years ago

"no nav data" error described in https://github.com/tomojitakasu/RTKLIB/issues/87

TaylorDale commented 2 years ago

I'm also not getting any nav files out of convbin, seemingly no error or description why. The files are very briefly created, and then deleted and I'm left with only an OBS file.

xingyuz commented 2 years ago

input file : base_Rychtal.rtcm3 (RTCM 3) ->rinex obs : base_Rychtal.obs ->rinex nav : base_Rychtal.nav ->sbas log : base_Rychtal.sbs means convbin will output .obs、.nav and *.sbs files, but if your raw data in file have not navigation data, convbin will delete the nav file after conversion processing done. You can record the boradcast ephemeris from other source, or download a converted rinex format navigation file from IGS

TaylorDale commented 2 years ago

This issue was fixed on our end, our caster was not putting out the full set of messages required. Would be great to get a feedback msg on the CLI about this if it occurs.

On Wed, 15 June 2022, 1:55 pm xingyuz, @.***> wrote:

input file : base_Rychtal.rtcm3 (RTCM 3) ->rinex obs : base_Rychtal.obs ->rinex nav : base_Rychtal.nav ->sbas log : base_Rychtal.sbs means convbin will output .obs、.nav and *.sbs files, but if your raw data in file have not navigation data, convbin will delete the nav file after conversion processing done. You can record the boradcast ephemeris from other source, or download a converted rinex format navigation file from IGS https://igs.org/data-products-overview/

— Reply to this email directly, view it on GitHub https://github.com/tomojitakasu/RTKLIB/issues/661#issuecomment-1155953822, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABJ66LF4GAHQI5JWLBCN5FDVPFHZZANCNFSM5V5J6ISQ . You are receiving this because you commented.Message ID: @.***>