-
I just switched to CRTN (California Real Time Network) from rtgpsout.earthscope.org to be able to access a base station that is closer to my house. When I start the NTRIP client with PyGPSClient, no RTCM messages show up on the console or in the log. Hopefully someone else has had the same issue and can point me in the right direction. I'm using: I used my iPad using SWmaps, connected to the CRTN server and did receive a RTK FIX status, showing that SWMaps was interpreting and forwarding the RTCM messages to my receiver. I also used u-center on my desktop and saw NTRIP message reception. I used wireshark on my RPi and saw messages once per second of the appropriate size after RTCM was enabled using PyGPSClient. I scanned the messages from the server and they had 1004 and 1012 imbedded in about the right locations to indicate I was getting the 1004 and 1012 messages as expected. I noticed that the CRTN server also has access to the station I was connecting to previously (P276) using the rtgpsout.earthscope.org server. I tried connecting to P276 through CRTN and saw the same problem. When I went back to P276 using the rtgpsout.earthscope.org server the RTCM messages were showing up on the PyGPSClient console. I ran experiment where I connected to a station using my original server then switched to the new CRTN server. I have a PyGPSClient log file showing RTCM output when I was connected using the original server but no output when I was connected to the CRTN server. I had Wireshark set up and saw message streams from both servers at the appropriate time. I have the Wireshark log if it would be of use but it is 14.5MB so I didn't upload it. And my RPi just crashed and I think the file is corrupted. Before that happened I noticed that the message sequence from the 2 servers was different. The old server sends 2 messages per second. The first one is short with a 5 byte data segment (31 35 41 0d 0a). The second one is much longer and I believe has both the 1004 and 1012 messages. The new server does not send the first short message. If the Wireshark .pcapng file would be of use I could redo the test. This time I'll learn how to do a capture filter in Wireshark and won't have a 14.5MB file. Unfortunately, CRTN is not free. Well it is free to use, but it is a $100 donation to sign up. Let me know if I can run any tests that would be useful. This may only affect people in California that want to spend the $100 to use the CRTN service. I expect it would be low on your priority list. No worries. I also read other discussion threads here which gave me a few ideas. Tomorrow I'll try to set up gnssntripclient CLI with 2 instances, one for each server, both using the same base station. Output routed to a log file. I'll also use Wireshark to capture the full message traffic. Update. New server: Old server: I have attached the log file from both runs. The log file from the old server shows 1004 and 1012 messages. The log file from the new server does not. The binary file out from the new server was empty. I also attached the wireshark capture for 5 or so seconds. Well I tried to but the app doesn't support that file type. I have it if we can find a way to get it to you. Here's a capture of a few seconds worth of data from both servers. Note that the main message length from the old server is 18 bytes shorter and that the old server sends that extra message. Here's what I could easily clip out of Wireshark for one of those extra messages: Frame 15: 73 bytes on wire (584 bits), 73 bytes captured (584 bits) on interface any, id 0 |
Beta Was this translation helpful? Give feedback.
Replies: 3 comments 8 replies
-
So very quick test using nominal credentials and no mountpoint (which I would expect to return a sourcetable response)... gnssntripclient -S 132.239.152.175 -P 2104 --ntripuser 'xxxxx' --ntrippassword 'xxxx' --verbosity 3
The fact that the protocol is gnssntripclient -S 132.239.152.175 -P 2104 --ntripuser 'xxxxx' --ntrippassword 'xxxx' --verbosity 3 --ntripversion 1.0
Suggest trying your tests again with |
Beta Was this translation helpful? Give feedback.
-
FYI Apologies if you're already well aware of this, but just to highlight the clear differences between NTRIP 1.0 and NTRIP 2.0 which you can see if you use gnssntripclient with While both protocols are ostensibly based on HTTP/1.n, NTRIP 1.0 uses obsolete protocol classifiers in its HTTP response header to signify 'sourcetable' or 'data', whereas NTRIP 2.0 uses an explicit Note also that NTRIP 2.0 can take advantage of chunked and/or zipped encoding, whereas NTRIP 1.0 cannot. NTRIP 1.0 sourcetable response:
NTRIP 1.0 data response:
('ICY' is supposedly an acronym for 'I Can Yell' (aka 'Shoutcast'), which was used in the early days of the HTTP protocol for streaming data services - it's now deprecated under HTML 5) NTRIP 2.0 sourcetable response:
NTRIP 2.0 data response:
NTRIP 1.0 was originally published in 2004 and has been deprecated for nearly a decade now - from the RTCM Best Practice guidelines: Modern NTRIP casters really should have upgraded by now, especially if they're asking for payment. |
Beta Was this translation helpful? Give feedback.
-
@pat-2010 FYI I've introduced a update to gnssntripclient in pygnssutils v1.1.7. It will now tolerate an NTRIP 1.0 response to an NTRIP 2.0 request, or vice versa. |
Beta Was this translation helpful? Give feedback.
The NTRIP version can be set in the pygpsclient.json configuration file using the
ntripclientversion_s
setting, and this does appear in the sample config file provided. It defaults to "2.0". There is no PyGPSClient command line option for this setting, but it can be saved along with all other configuration settings via the 'Save Configuration' menu option.(I realised there is currently no NTRIP version option in the gnssstreamer CLI utility, which is an omission I'll rectify in the next version - it has no bearing on the issue at hand)
It would be possible for an NTRIP client to 'auto-detect' the NTRIP version once a preliminary response is received, or 'fall back' to an NTRIP 1.0 servic…