berthubert / galmon

galileo open source monitoring
GNU General Public License v3.0
200 stars 53 forks source link

Missing page pairs in the live I/NAV stream #163

Open odrisci opened 1 year ago

odrisci commented 1 year ago

I have been using the wonderful service from 86.82.68.237:10000 that streams I/NAV data as NavMonMessage protobufs and have noticed some interesting problems. The first issue is that the TOW for word type 16 is off by 14 seconds 50 % of the time, this is described in #162.

The other observation is that the stream is missing a large number of page pairs. Digging into this a little I found some interesting patterns and it appears that the pages that are missing are highly consistent and are a function of:

  1. Whether or not the satellite has the new I/NAV improvements
  2. Whether or not the satellite is transmitting OSNMA

From my analysis it seems the following table holds:

OSNMA? I/NAV Improv? Missing WTs
N N 1, 3, 2, 4
N Y 1, 3, 2, 4, 17, 18, 19, 20
Y N -
Y N -

I have also observed that PRN E01 appears to transmit WT5 at SF index 7 and 14, when we expect WT16. But I'm not sure if E01 was undergoing some testing/upgrades at that time.

In short, it appears that when the satellites are not transmitting OSNMA then whatever process is driving the live stream on 86.82.68.237:10000 filters out their messages for WTs 1, 2, 3, 4, 17, 18, 19 and 20.

Note that WTs 17, 18, 19 and 20 appear only when OSNMA is also present.

Note also that when I run ubxtool locally (built from current master) I do not see any missing page pairs - so the issue is presumably with whatever filtering is applied to consolidate all the source streams.

Here are some plots of the received word types at each subframe index for the four rows of the table. These were received from 86.82.68.237:10000 over a short three minute interval on 2023/03/29.

Galmon_OSNMA_N_INAV_N Galmon_OSNMA_N_INAV_Y

Galmon_OSNMA_Y_INAV_N

Galmon_OSNMA_Y_INAV_Y