Changeset 11148 in ntrip


Ignore:
Timestamp:
Oct 31, 2026, 10:27:54 PM (7 days ago)
Author:
stuerze
Message:

minor changes regarding GLONASS health and SSR QC

Location:
trunk/BNC
Files:
22 edited

Legend:

Unmodified
Added
Removed
  • trunk/BNC/CHANGELOG.md

    r11141 r11148  
    2929- ADDED: General option 'Ephemeris streams' (key ephMount): combination, upload of corrections and SSR QC use the Broadcast Ephemeris of the given stream(s) only, e.g. BCEP00BKG0, not those contained in other streams (e.g. RTCM-SSR streams of ACs with ephemeris messages); PPP, RINEX navigation files and ephemeris upload not affected; empty: all streams as before
    3030- FIXED: Galileo (RTCM 1045/1046) and BDS (1042) ephemerides: the week number (12 bit GST week, 13 bit BDT week) is completed with the current week, so the decoding continues after their roll-over (GST week 4095 in 2078, BDT week 8191 in 2163)
     31- FIXED: SSR QC: "code biases of the reference signals missing" lists only satellites with orbit or clock corrections in the interval (providers list satellites without corrections with zero biases, e.g. GMV E14/E18)
     32- FIXED: GLONASS-M/K ephemerides with the health flag ln = 1 (string 3 or 5) are unhealthy, as with the MSB of Bn (GLONASS ICD 5.1, section 5.3); before, ln was decoded and passed on, but not evaluated (e.g. R14 on 15 Oct 2026 for 1.5 h)
     33- FIXED: GLONASS ephemerides read from RINEX files left members not contained in RINEX (e.g. ln of string 5) uninitialized
    3134- ADDED: Regression test suite ('tests'): example configurations and short raw captures replayed through BNC and compared with reference outputs
    3235- ADDED: macOS packaging script
  • trunk/BNC/Example_Configs/03_BrdcCorr.bnc

    r10968 r11148  
    2323corrPath=Output
    2424corrPort=
     25ephFilePerStation=0
    2526ephIntr=1 day
     27ephMount=
    2628ephOutPort=
    2729ephPath=
    … …  
    3335miscPort=
    3436miscScanRTCM=0
    35 mountPoints=//Example:Configs@products.igs-ip.net:2101/SSRA00BKG1 RTCM_3.1 DEU 50.09 8.66 no 2
     37mountPoints=//bkg:g2real-time@products.igs-ip.net:2101/SSRA00BKG1 RTCM_3.1 DEU 50.09 8.66 no 2
    3638ntripVersion=2
    3739onTheFlyInterval=no
    … …  
    4446proxyHost=
    4547proxyPort=
    46 rawOutFile=
     48rawOutFile=./BrdcCorr.raw
    4749reqcAction=
    4850reqcComment=
    … …  
    107109sslClientCertPath=
    108110sslIgnoreErrors=0
    109 startTab=6
     111ssrQcAntexFile=
     112ssrQcBiasFile=
     113ssrQcIntr=1 hour
     114ssrQcPath=
     115ssrQcRef=CONSENSUS
     116ssrQcStreams=ALL
     117ssrRefSignals=
     118startTab=1
    110119statusTab=0
    111120trafo_dx=
    … …  
    157166eleWgtCode=0
    158167eleWgtPhase=0
     168ephMount=
    159169ionoFile=
    160170ionoMount=
  • trunk/BNC/Example_Configs/16_Upload.bnc

    r10968 r11148  
    2323corrPath=
    2424corrPort=
     25ephFilePerStation=0
    2526ephIntr=1 day
     27ephMount=BCEP00BKG0
    2628ephOutPort=
    2729ephPath=
    … …  
    107109sslClientCertPath=
    108110sslIgnoreErrors=0
    109 startTab=16
     111ssrQcAntexFile=
     112ssrQcBiasFile=
     113ssrQcIntr=1 hour
     114ssrQcPath=
     115ssrQcRef=CONSENSUS
     116ssrQcStreams=ALL
     117ssrRefSignals=
     118startTab=1
    110119statusTab=0
    111120trafo_dx=
    … …  
    157166eleWgtCode=0
    158167eleWgtPhase=0
     168ephMount=
    159169ionoFile=
    160170ionoMount=
  • trunk/BNC/src/bnchelp.html

    r11140 r11148  
    38893889      the health word contains one flag per signal (L1, L2, L5; bits 52-54 of Message Type 10). Such a data set is
    38903890      considered unhealthy only if the L1 or L2 flag is set; an L5-only flag, as it is common for satellites with a
    3891       not yet fully operational L5 signal, is ignored.</li>
     3891      not yet fully operational L5 signal, is ignored. A GLONASS data set is considered unhealthy if the most
     3892      significant bit of Bn or, for GLONASS-M/K, the flag ln is set, or if the almanac flag Cn (where available)
     3893      indicates a malfunction (GLONASS ICD, section 5.3).</li>
    38923894    <li>'WRONG': The data set failed a plausibility check. It is considered wrong if the satellite's radial distance
    38933895      at TOC is not between 20,000 km and 60,000 km, or if satellite position or clock at its TOC differ by more than
  • trunk/BNC/src/ephemeris.cpp

    r11137 r11148  
    11841184// Constructor
    11851185//////////////////////////////////////////////////////////////////////////////
    1186 t_ephGlo::t_ephGlo(double rnxVersion, const QStringList &lines, const QString typeStr) {
     1186t_ephGlo::t_ephGlo(double rnxVersion, const QStringList &lines, const QString typeStr)
     1187  : t_ephGlo() { // all members initialized, e.g. _M_l5 (not in RINEX)
    11871188
    11881189  setType(typeStr);
    … …  
    18401841unsigned int t_ephGlo::isUnhealthy() const {
    18411842
     1843  // GLONASS-M/K: health flag ln of strings 3 and 5, evaluated like the MSB
     1844  // of Bn (GLONASS ICD 5.1, section 5.3: "Bn (ln)")
     1845  if (_M_M && (_M_l3 || _M_l5)) {
     1846    return 1;
     1847  }
    18421848  if (_almanac_health_availablility_indicator) {
    18431849    if ((_health == 0 && _almanac_health == 0)
  • trunk/BNC/src/ssrQc.cpp

    r11140 r11148  
    15821582          maxAlongCrossPrn = prn;
    15831583        }
    1584         if (!stat.missingRefSig.isEmpty()) {
     1584        // only satellites with corrections (providers list satellites
     1585        // without corrections with zero biases, e.g. GMV E14/E18)
     1586        if (!stat.missingRefSig.isEmpty() && (stat.numClk || stat.numOrb)) {
    15851587          QStringList sigs = stat.missingRefSig.values();
    15861588          sigs.sort();
  • trunk/BNC/tests/README.md

    r11140 r11148  
    109109  later (WHU1), never received (GMV1 G16, upload not in BCEP00BKG0), ephemeris outside its
    110110  validity (CNE1 GLONASS).
     111* `ssr_qc_glo_ln`: GLONASS health flag ln on `data/glo_ln_261015_1h.raw` (BCEP00BKG0 GLONASS
     112  ephemerides 09:40-10:40 and SSRA00GMV0 GLONASS corrections 09:55-10:40 of 15 Oct 2026, merged
     113  from two `bncraw.py slice` outputs; 'Ephemeris streams' BCEP00BKG0): the R14 data sets from
     114  tb 13:15 Moscow time on have ln = 1 with Bn = 0, Cn = 1 and are unhealthy (ICD 5.1, 5.3).
    111115
    112116* `decoder_limits`: crafted, CRC-valid frames from `tools/mkcrafted.py`
Note: See TracChangeset for help on using the changeset viewer.