Skip to content

Commit

Permalink
rtklib 2.4.3 b33
Browse files Browse the repository at this point in the history
  • Loading branch information
tomojitakasu committed Aug 19, 2019
1 parent 6e5ddad commit c6e6c03
Show file tree
Hide file tree
Showing 14 changed files with 54,587 additions and 53,810 deletions.
7 changes: 4 additions & 3 deletions app/appcmn/serioptdlg.dfm
Original file line number Diff line number Diff line change
Expand Up @@ -83,8 +83,7 @@ object SerialOptDialog: TSerialOptDialog
Top = 32
Width = 77
Height = 21
DropDownCount = 12
ItemIndex = 5
DropDownCount = 13
TabOrder = 3
Text = '9600'
Items.Strings = (
Expand All @@ -98,7 +97,9 @@ object SerialOptDialog: TSerialOptDialog
'38400'
'57600'
'115200'
'230400')
'230400'
'460800'
'921600')
end
object Port: TComboBox
Left = 74
Expand Down
2 changes: 1 addition & 1 deletion app/rnx2rtkp/bcc_win64/_rnx2rtkp_win64.cbproj.local
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<BorlandProject>
<Transactions>
<Transaction>2016/08/20 18:24:30.000.412,D:\proj\RTKLIB\app\rnx2rtkp\bcc_win64\_rnx2rtkp_win64.cbproj=D:\proj\RTKLIB\app\rnx2rtkp\bcc_win64\_rnx2rtkp.cbproj</Transaction>
<Transaction>2016/08/20 18:24:30.000.412,D:\proj\RTKLIB\app\rnx2rtkp\bcc_win64\_rnx2rtkp.cbproj=D:\proj\RTKLIB\app\rnx2rtkp\bcc_win64\_rnx2rtkp_win64.cbproj</Transaction>
</Transactions>
</BorlandProject>
8 changes: 4 additions & 4 deletions app/rtkconv/rtkconv.cbproj
Original file line number Diff line number Diff line change
Expand Up @@ -426,15 +426,15 @@
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="Debug_Build\rtkconv.exe" Configuration="Debug" Class="ProjectOutput">
<DeployFile LocalName="..\..\src\rcv\novatel.c" Configuration="Release" Class="ProjectFile">
<Platform Name="Win32">
<RemoteName>rtkconv.exe</RemoteName>
<RemoteDir>.\</RemoteDir>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployFile LocalName="..\..\src\rcv\novatel.c" Configuration="Release" Class="ProjectFile">
<DeployFile LocalName="Debug_Build\rtkconv.exe" Configuration="Debug" Class="ProjectOutput">
<Platform Name="Win32">
<RemoteDir>.\</RemoteDir>
<RemoteName>rtkconv.exe</RemoteName>
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
Expand Down
1 change: 1 addition & 0 deletions app/rtkconv/rtkconv.cbproj.local
Original file line number Diff line number Diff line change
Expand Up @@ -10,5 +10,6 @@
<Transaction>2018/11/05 19:16:48.000.438,=T:\proj\RTKLIB\src\rcv\cmr.c</Transaction>
<Transaction>2018/11/05 19:17:08.000.523,=T:\proj\RTKLIB\src\rcv\tersus.c</Transaction>
<Transaction>2018/11/05 19:17:21.000.811,=T:\proj\RTKLIB\src\rcv\septentrio.c</Transaction>
<Transaction>2019/08/03 22:51:57.000.070,=D:\proj\RTKLIB\src\rcv\allys.c</Transaction>
</Transactions>
</BorlandProject>
2 changes: 1 addition & 1 deletion app/rtkconv/rtkconv.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -22,11 +22,11 @@ USEFORM("..\appcmn\vieweropt.cpp", ViewerOptDialog);
USEFORM("codeopt.cpp", CodeOptDialog);
USEFORM("convmain.cpp", MainWindow);
USEFORM("convopt.cpp", ConvOptDialog);
USEFORM("..\appcmn\viewer.cpp", TextViewer);
USEFORM("..\appcmn\aboutdlg.cpp", AboutDialog);
USEFORM("..\appcmn\confdlg.cpp", ConfDialog);
USEFORM("..\appcmn\keydlg.cpp", KeyDialog);
USEFORM("..\appcmn\timedlg.cpp", TimeDialog);
USEFORM("..\appcmn\viewer.cpp", TextViewer);
USEFORM("startdlg.cpp", StartDialog);
//---------------------------------------------------------------------------
WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
Expand Down
53,769 changes: 0 additions & 53,769 deletions data/TLE_20190513.txt

This file was deleted.

54,432 changes: 54,432 additions & 0 deletions data/TLE_20190819.txt

Large diffs are not rendered by default.

28 changes: 16 additions & 12 deletions data/TLE_GNSS_SATNO.txt
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@
# BeiDou updated by IGS MGEX info
# 2018/12/27 1.15 update GPS,GLONASS,Galileo,QZSS,BeiDou,SBAS
# 2019/05/10 1.16 update BeiDou
# 2019/08/19 1.17 update R12,BeiDou
#

#SV NORAD ID # SATELLITE NO/ID LAUNCH STAT(2018/12)
Expand Down Expand Up @@ -94,23 +95,23 @@ R20 32276U 07052B # GLONASS-M (719, COSMOS 2432) 2007/10/26 OK
R13 32393U 07065A # GLONASS-M (721, COSMOS 2434) 2007/12/25 OK
#R14 32394U 07065B # GLONASS-M (722, COSMOS 2435) 2007/12/25 --
#R11 32395U 07065C # GLONASS-M (723, COSMOS 2436) 2007/12/25 --
R12 32395U 07065C # GLONASS-M (723, COSMOS 2436) 2007/12/25 OK
#R12 32395U 07065C # GLONASS-M (723, COSMOS 2436) 2007/12/25 OK
#R18 33378U 08046A # GLONASS-M (724, COSMOS 2442) ????/??/?? --
#R21 33379U 08046B # GLONASS-M (725, COSMOS 2443) ????/??/?? --
#R22 33380U 08046C # GLONASS-M (726, COSMOS 2444) ????/??/?? --
#R03 33466U 08067A # GLONASS-M (727, COSMOS 2447) ????/??/?? --
#R08 33467U 08067B # GLONASS-M (729, COSMOS 2449) ????/??/?? --
#R02 33468U 08067C # GLONASS-M (728, COSMOS 2448) ????/??/?? --
R01 36111U 09070A # GLONASS-M (730, COSMOS 2456) 2010/03/01 OK
R06 36112U 09070B # GLONASS-M (733, COSMOS 2457) 2010/03/01 OK
#R05 36113U 09070C # GLONASS-M (734, COSMOS 2458) 2010/03/01 --
R22 36400U 10007A # GLONASS-M (731, COSMOS 2459) 2010/09/02 OK
R24 36401U 10007B # GLONASS-M (735, COSMOS 2461) 2010/09/02 OK
R23 36402U 10007C # GLONASS-M (732, COSMOS 2460) 2010/09/02 OK
#R16 37137U 10041A # GLONASS-M (738, COSMOS 2466) 2010/12/05 --
#R12 37138U 10041B # GLONASS-M (737, COSMOS 2465) 2010/12/05 --
#R09 37139U 10041C # GLONASS-M (736, COSMOS 2464) 2010/12/05 --
R16 37139U 10041C # GLONASS-M (736, COSMOS 2464) 2010/12/05 OK
R01 36111U 09070A # GLONASS-M (730, COSMOS 2456) 2009/12/14 OK
R06 36112U 09070B # GLONASS-M (733, COSMOS 2457) 2009/12/14 OK
#R05 36113U 09070C # GLONASS-M (734, COSMOS 2458) 2010/??/?? --
R22 36400U 10007A # GLONASS-M (731, COSMOS 2459) 2010/03/02 OK
R24 36401U 10007B # GLONASS-M (735, COSMOS 2461) 2010/03/02 OK
R23 36402U 10007C # GLONASS-M (732, COSMOS 2460) 2010/03/02 OK
#R16 37137U 10041A # GLONASS-M (738, COSMOS 2466) 2010/??/?? --
#R12 37138U 10041B # GLONASS-M (737, COSMOS 2465) 2010/??/?? --
#R09 37139U 10041C # GLONASS-M (736, COSMOS 2464) 2010/09/02 --
R16 37139U 10041C # GLONASS-M (736, COSMOS 2464) 2010/09/02 OK
#R21 37372U 11009A # GLONASS-K (701, COSMOS 2471) 2011/02/26 --
#R08 37372U 11009A # GLONASS-K (701, COSMOS 2471) 2011/02/26 --
#R26 37372U 11009A # GLONASS-K (701, COSMOS 2471) 2011/02/26 --
Expand All @@ -121,14 +122,15 @@ R08 37869U 11064C # GLONASS-M (743, COSMOS 2475) 2011/11/04 OK
#R17 37938U 11071A # GLONASS-M (746, COSMOS 2478) 2011/11/28 --
R02 39155U 13019A # GLONASS-M (747, COSMOS 2485) 2013/04/26 OK
R18 39620U 14012A # GLONASS-M (754, COSMOS 2491) 2014/03/23 OK
R21 40001U 14032A # GLONASS-M (755, COSMOS 2500) 2014/06/12 OK
R21 40001U 14032A # GLONASS-M (755, COSMOS 2500) 2014/06/14 OK
#R27 40315U 14075A # GLONASS-K (702, COSMOS 2501) 2014/11/30 --
R09 40315U 14075A # GLONASS-K (702, COSMOS 2501) 2014/11/30 OK
R17 41330U 16008A # GLONASS-M (751, COSMOS 2514) 2016/02/06 OK
R11 41554U 16032A # GLONASS-M (753, COSMOS 2516) 2016/05/29 OK
R14 42939U 17055A # GLONASS-M (752, COSMOS 2522) 2017/09/22 OK
R05 43508U 18053A # GLONASS-M (756, COSMOS 2527) 2018/06/17 OK
R15 43687U 18086A # GLONASS-M (757, COSMOS 2529) 2018/11/03 OK
R12 44299U 19030A # GLONASS-M (758, COSMOS 2534) 2019/05/28 OK

### GALILEO

Expand Down Expand Up @@ -224,6 +226,8 @@ C59 43683U 18085A # BEIDOU-3 G1 2018/11/01 OK
C36 43706U 18093A # BEIDOU-3 M17 2018/11/19 OK
C37 43707U 18093B # BEIDOU-3 M18 2018/11/19 OK
C38 44204U 19023A # BEIDOU-3 I1 2019/04/20 OK
#C00 44231U 19027A # BEIDOU-2 G8 2019/05/17 --
#C00 44337U 19035A # BEIDOU-3 I2 2019/06/24 --

### SBAS

Expand Down
17 changes: 17 additions & 0 deletions readme.txt
Original file line number Diff line number Diff line change
Expand Up @@ -120,3 +120,20 @@ UPDATE HISTORY
support api-key for gmview of rtkplot
improve galileo sisa, i/nav and f/nav hadling
fix many bugs
2018/11/05 2.4.3 b31 update rtcm mt for beidou ephemeirs (1047->1042)
fix bug on default stream playback speed (= 0)
fix bug on stream file playback as slave mode
fix bug on timeset() in gpst instead of utc
fix problem on invalid time in message monitor for rtcm 3
fix problem on number of cell-mask overflow for rtcm msm (#143)
fix problem on missing QZSS L2C signal for u-blox rxm-rawx
2019/05/10 2.4.3 b32 support beidou C36-37 (#145)
fix bug on dropping message on tcp stream (#144)
save galileo E5b data to obs index 2 in struct obs_t
disable ambiguity resolution of gps-qzss for rel-positioning
add test of i/nav word type 5 on reading galileo ephemeris
support u-blox zed-f9p rxm-rawx, rxm-sfrbx
2019/08/19 2.4.3 b33 support galileo sisa index for reading rinex nav data
support binex upgraded galileo ephemeris (0x01-14)
support 460800 and 921600 bps for serial stream
fix bug on return value of resamb_LAMBDA() error
71 changes: 71 additions & 0 deletions src/rcv/binex.c
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
* add receiver option -GALINAV, -GALFNAV
* 2018/12/06 1.8 fix bug on decoding galileo ephemeirs iode (0x01-04)
* 2019/05/10 1.9 save galileo E5b data to obs index 2
* 2019/07/25 1.10 support upgraded galileo ephemeris (0x01-14)
*-----------------------------------------------------------------------------*/
#include "rtklib.h"

Expand Down Expand Up @@ -795,6 +796,75 @@ static int decode_bnx_01_06(raw_t *raw, unsigned char *buff, int len)
raw->ephsat=eph.sat;
return 2;
}
/* decode binex mesaage 0x01-14: upgraded decoded galileo ephmemeris ---------*/
static int decode_bnx_01_14(raw_t *raw, unsigned char *buff, int len)
{
eph_t eph={0};
unsigned char *p=buff;
double tow,ura,sqrtA;
int prn,tocs,eph_sel=0;

trace(4,"binex 0x01-14: len=%d\n",len);

if (strstr(raw->opt,"-GALINAV")) eph_sel=1;
if (strstr(raw->opt,"-GALFNAV")) eph_sel=2;

if (len>=135) {
prn =U1(p)+1; p+=1;
eph.week =U2(p); p+=2; /* gal-week = gps-week */
tow =I4(p); p+=4;
tocs =I4(p); p+=4;
eph.toes =I4(p); p+=4;
eph.tgd[0]=R4(p); p+=4; /* BGD E5a/E1 */
eph.tgd[1]=R4(p); p+=4; /* BGD E5b/E1 */
eph.iode =I4(p); p+=4; /* IODnav */
eph.f2 =R4(p); p+=4;
eph.f1 =R4(p); p+=4;
eph.f0 =R8(p); p+=8;
eph.deln =R4(p)*SC2RAD; p+=4;
eph.M0 =R8(p); p+=8;
eph.e =R8(p); p+=8;
sqrtA =R8(p); p+=8;
eph.cic =R4(p); p+=4;
eph.crc =R4(p); p+=4;
eph.cis =R4(p); p+=4;
eph.crs =R4(p); p+=4;
eph.cuc =R4(p); p+=4;
eph.cus =R4(p); p+=4;
eph.OMG0 =R8(p); p+=8;
eph.omg =R8(p); p+=8;
eph.i0 =R8(p); p+=8;
eph.OMGd =R4(p)*SC2RAD; p+=4;
eph.idot =R4(p)*SC2RAD; p+=4;
ura =R4(p); p+=4;
eph.svh =U2(p); p+=2;
eph.code =U2(p); /* data source defined as rinex 3.03 */
}
else {
trace(2,"binex 0x01-14: length error len=%d\n",len);
return -1;
}
if (!(eph.sat=satno(SYS_GAL,prn))) {
trace(2,"binex 0x01-14: satellite error prn=%d\n",prn);
return -1;
}
if (eph_sel==1&&!(eph.code&(1<<9))) return 0; /* only I/NAV */
if (eph_sel==2&&!(eph.code&(1<<8))) return 0; /* only F/NAV */

eph.A=sqrtA*sqrtA;
eph.iodc=eph.iode;
eph.toe=gpst2time(eph.week,eph.toes);
eph.toc=gpst2time(eph.week,tocs);
eph.ttr=adjweek(eph.toe,tow);
eph.sva=ura<0.0?(int)(-ura)-1:sisaindex(ura); /* sisa index */
if (!strstr(raw->opt,"-EPHALL")) {
if (raw->nav.eph[eph.sat-1].iode==eph.iode&&
raw->nav.eph[eph.sat-1].iodc==eph.iodc) return 0; /* unchanged */
}
raw->nav.eph[eph.sat-1]=eph;
raw->ephsat=eph.sat;
return 2;
}
/* decode binex mesaage 0x01: gnss navigaion informtion ----------------------*/
static int decode_bnx_01(raw_t *raw, unsigned char *buff, int len)
{
Expand All @@ -814,6 +884,7 @@ static int decode_bnx_01(raw_t *raw, unsigned char *buff, int len)
case 0x04: return decode_bnx_01_04(raw,buff+1,len-1);
case 0x05: return decode_bnx_01_05(raw,buff+1,len-1);
case 0x06: return decode_bnx_01_06(raw,buff+1,len-1);
case 0x14: return decode_bnx_01_14(raw,buff+1,len-1);
}
return 0;
}
Expand Down
45 changes: 30 additions & 15 deletions src/rinex.c
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/*------------------------------------------------------------------------------
* rinex.c : rinex functions
*
* Copyright (C) 2007-2018 by T.TAKASU, All rights reserved.
* Copyright (C) 2007-2019 by T.TAKASU, All rights reserved.
*
* reference :
* [1] W.Gurtner and L.Estey, RINEX The Receiver Independent Exchange Format
Expand Down Expand Up @@ -92,6 +92,7 @@
* 2016/10/10 1.27 add api outrnxinavh()
* 2018/10/10 1.28 support galileo sisa value for rinex nav output
* fix bug on handling beidou B1 code in rinex 3.03
* 2019/08/19 1.29 support galileo sisa index for rinex nav input
*-----------------------------------------------------------------------------*/
#include "rtklib.h"

Expand Down Expand Up @@ -187,18 +188,9 @@ static int sat2code(int sat, char *code)
return 1;
}
/* ura index to ura nominal value (m) ----------------------------------------*/
static double uravalue(int sys, int sva)
static double uravalue(int sva)
{
if (sys==SYS_GAL) {
if (sva<= 49) return sva*0.01;
if (sva<= 74) return 0.5+(sva- 50)*0.02;
if (sva<= 99) return 1.0+(sva- 75)*0.04;
if (sva<=125) return 2.0+(sva-100)*0.16;
return -1.0; /* unknown or NAPA */
}
else {
return 0<=sva&&sva<15?ura_nominal[sva]:8192.0;
}
return 0<=sva&&sva<15?ura_nominal[sva]:8192.0;
}
/* ura value (m) to ura index ------------------------------------------------*/
static int uraindex(double value)
Expand All @@ -207,6 +199,24 @@ static int uraindex(double value)
for (i=0;i<15;i++) if (ura_eph[i]>=value) break;
return i;
}
/* galileo sisa index to sisa nominal value (m) ------------------------------*/
static double sisa_value(int sisa)
{
if (sisa<= 49) return sisa*0.01;
if (sisa<= 74) return 0.5+(sisa- 50)*0.02;
if (sisa<= 99) return 1.0+(sisa- 75)*0.04;
if (sisa<=125) return 2.0+(sisa-100)*0.16;
return -1.0; /* unknown or NAPA */
}
/* galileo sisa value (m) to sisa index --------------------------------------*/
static int sisa_index(double value)
{
if (value<0.0 || value>6.0) return 255; /* unknown or NAPA */
else if (value<=0.5) return (int)(value/0.01);
else if (value<=1.0) return (int)((value-0.5)/0.02)+50;
else if (value<=2.0) return (int)((value-1.0)/0.04)+75;
return ((int)(value-2.0)/0.16)+100;
}
/* initialize station parameter ----------------------------------------------*/
static void init_sta(sta_t *sta)
{
Expand Down Expand Up @@ -1122,7 +1132,7 @@ static int decode_eph(double ver, int sat, gtime_t toc, const double *data,
/* bit 4-5: E5a HS */
/* bit 6: E5b DVS */
/* bit 7-8: E5b HS */
eph->sva =uraindex(data[23]); /* ura (m->index) */
eph->sva =sisa_index(data[23]); /* sisa (m->index) */

eph->tgd[0]= data[25]; /* BGD E5a/E1 */
eph->tgd[1]= data[26]; /* BGD E5b/E1 */
Expand Down Expand Up @@ -2376,7 +2386,12 @@ extern int outrnxnavb(FILE *fp, const rnxopt_t *opt, const eph_t *eph)
outnavf(fp,eph->flag );
fprintf(fp,"\n%s",sep );

outnavf(fp,uravalue(sys,eph->sva));
if (sys==SYS_GAL) {
outnavf(fp,sisa_value(eph->sva));
}
else {
outnavf(fp,uravalue(eph->sva));
}
outnavf(fp,eph->svh );
outnavf(fp,eph->tgd[0] ); /* GPS/QZS:TGD, GAL:BGD E5a/E1, BDS: TGD1 B1/B3 */
if (sys==SYS_GAL||sys==SYS_CMP) {
Expand Down Expand Up @@ -2578,7 +2593,7 @@ extern int outrnxhnavb(FILE *fp, const rnxopt_t *opt, const seph_t *seph)
outnavf(fp,seph->pos[1]/1E3 );
outnavf(fp,seph->vel[1]/1E3 );
outnavf(fp,seph->acc[1]/1E3 );
outnavf(fp,uravalue(SYS_SBS,seph->sva));
outnavf(fp,uravalue(seph->sva));
fprintf(fp,"\n%s",sep );

outnavf(fp,seph->pos[2]/1E3 );
Expand Down
2 changes: 1 addition & 1 deletion src/rtklib.h
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ extern "C" {

#define VER_RTKLIB "2.4.3" /* library version */

#define PATCH_LEVEL "b32" /* patch level */
#define PATCH_LEVEL "b33" /* patch level */

#define COPYRIGHT_RTKLIB \
"Copyright (C) 2007-2019 T.Takasu\nAll rights reserved."
Expand Down
2 changes: 2 additions & 0 deletions src/rtkpos.c
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,7 @@
* 2016/08/20 1.22 fix bug on ddres() function
* 2018/10/10 1.13 support api change of satexclude()
* 2018/12/15 1.14 disable ambiguity resolution for gps-qzss
* 2019/08/19 1.15 fix bug on return value of resamb_LAMBDA()
*-----------------------------------------------------------------------------*/
#include <stdarg.h>
#include "rtklib.h"
Expand Down Expand Up @@ -1518,6 +1519,7 @@ static int resamb_LAMBDA(rtk_t *rtk, double *bias, double *xa)
}
else {
errmsg(rtk,"lambda error (info=%d)\n",info);
nb=0;
}
free(D); free(y); free(Qy); free(DP);
free(b); free(db); free(Qb); free(Qab); free(QQ);
Expand Down
Loading

0 comments on commit c6e6c03

Please sign in to comment.