{"id":1906,"date":"2016-06-28T17:22:21","date_gmt":"2016-06-28T17:22:21","guid":{"rendered":"\/?post_type=ht_kb&#038;p=1906"},"modified":"2018-03-10T21:12:40","modified_gmt":"2018-03-10T21:12:40","slug":"caster-settings-in-rtklib","status":"publish","type":"ht_kb","link":"https:\/\/www.use-snip.com\/kb\/knowledge-base\/caster-settings-in-rtklib\/","title":{"rendered":"Caster String Settings in RTKLIB"},"content":{"rendered":"<p>One of the more complicated details when using the RTKLIB tools to push data to <span style=\"color: #0000ff;\"><strong>SNIP<\/strong><\/span> is how to set up the Caster table &#8220;string&#8221; entry in the dialog box shown below.\u00a0 This article deals with how to correctly enter this data.<\/p>\n<p><a href=\"\/wp-content\/uploads\/2016\/06\/RTKLIB_NTRIPserverOptions.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-1870\" src=\"\/wp-content\/uploads\/2016\/06\/RTKLIB_NTRIPserverOptions.png\" alt=\"RTKLIB_NTRIPserverOptions\" width=\"342\" height=\"192\" srcset=\"https:\/\/www.use-snip.com\/kb\/wp-content\/uploads\/2016\/06\/RTKLIB_NTRIPserverOptions.png 342w, https:\/\/www.use-snip.com\/kb\/wp-content\/uploads\/2016\/06\/RTKLIB_NTRIPserverOptions-300x168.png 300w, https:\/\/www.use-snip.com\/kb\/wp-content\/uploads\/2016\/06\/RTKLIB_NTRIPserverOptions-50x28.png 50w, https:\/\/www.use-snip.com\/kb\/wp-content\/uploads\/2016\/06\/RTKLIB_NTRIPserverOptions-320x180.png 320w\" sizes=\"auto, (max-width: 342px) 100vw, 342px\" \/><\/a><\/p>\n<p style=\"padding-left: 30px;\"><span style=\"color: #008000;\"><strong>Aside:<\/strong><\/span>\u00a0 RTKLIB provides an <a href=\"\/kb\/knowledge-base\/question-what-is-an-ntrip-server\/\" target=\"_blank\" rel=\"noopener\">NTRIP Server<\/a> function <span style=\"text-decoration: underline;\">only<\/span>; that is, it can PUSH data out. It requires <span style=\"color: #0000ff;\"><strong>SNIP<\/strong><\/span> to be the <a href=\"\/kb\/knowledge-base\/question-what-is-an-ntrip-caster\/\" target=\"_blank\" rel=\"noopener\">NTRIP Caster<\/a> in order to serve multiple users. RTKLIB also provides an <a href=\"\/kb\/knowledge-base\/question-what-is-an-ntrip-client\/\" target=\"_blank\" rel=\"noopener\">NTRIP Client<\/a> function which is how most users obtain their base station raw data, from <span style=\"color: #0000ff;\"><strong>SNIP<\/strong><\/span> or from any other <a href=\"\/kb\/knowledge-base\/question-what-is-an-ntrip-caster\/\" target=\"_blank\" rel=\"noopener\">NTRIP Caster<\/a>.<\/p>\n<p style=\"padding-left: 30px;\"><span style=\"color: #008000;\"><strong>Aside:<\/strong><\/span>\u00a0 <a href=\"https:\/\/software.rtcm-ntrip.org\/wiki\/STR\" target=\"_blank\" rel=\"noopener\">Here<\/a> is an excellent article on the RTCM-NTRIP.org site that provides a handy summary of what each element in the Caster table means and how to set them.<\/p>\n<p style=\"padding-left: 30px;\"><span style=\"color: #008000;\"><strong>Best Practice:<\/strong><\/span>\u00a0 <span style=\"color: #0000ff;\"><strong>SNIP<\/strong><\/span> will automatically analyze the stream during the first ~120 seconds of operation and will deduce (from the message traffic it decodes) the correct lat-long location and the type of messages which the stream is sending.\u00a0 This information will then be used to populate the caster string for you.\u00a0 This feature only works when RTCM3 messages types are being used.<\/p>\n<h4>Background<\/h4>\n<p>We use a stream called TEST and a default password of &#8220;foobar&#8221; for these examples.\u00a0 You are advised to select other terms on your own copy of <span style=\"color: #0000ff;\"><strong>SNIP<\/strong><span style=\"color: #000000;\">.<\/span><strong>\u00a0 <\/strong><\/span>There are default example, so please do not use this password on your own copy of <span style=\"color: #0000ff;\"><strong>SNIP.\u00a0 <\/strong><\/span>While this article pertains to the popular RTKLIB tool suite, most other NTRIP Server tools have similar settings and similar issues.\u00a0 [And from release 0.9.6 onward, <span style=\"color: #0000ff;\"><strong>SNIP<\/strong><\/span> can also send data in a <strong>PUSH-Out<\/strong> mode (as an NTRIP Server), but this is mostly used connect to other networks such as RTK2go.com when the the sender does not have a static IP of their own.]<\/p>\n<p><span style=\"color: #008000;\"><strong>Hint:<\/strong><\/span> We make use of the console set in the &#8220;minor&#8221; mode so additional event details are presented.\u00a0 If you are only seeing a portion of the log entries shown here on your own machine, please be sure that the <strong>Log Threshold<\/strong> combo menu item is set to: &#8220;Minor (Show All)&#8221;.<\/p>\n<h4>Article Format<\/h4>\n<p>We consider the four examples of how to fill in the caster string line (&#8220;String&#8221; in the above dialog):<\/p>\n<ol>\n<li>No caster string is provided.<\/li>\n<li>A fully formed (fake) string is provided.<\/li>\n<li>A reasonable example string for uBloxT6 use.<\/li>\n<li>A gibberish example string.<\/li>\n<\/ol>\n<p>In each case we will consider three items:<\/p>\n<ol>\n<li>What you type in the &#8220;String&#8221; line from the NTRIP Sever tool (RTKLIB in this case).<\/li>\n<li>The raw messages you see in the console from the connecting device and what SNIP replies.<\/li>\n<li>How the result appears in your Caster Table.<\/li>\n<\/ol>\n<hr \/>\n<h4>Providing no string at all<\/h4>\n<p>This is the simplest case. <span style=\"text-decoration: underline;\">Just leave the RTKLIB dialog entry blank<\/span>.\u00a0 Keep in mind that the caster table details are fact optional in NTRIP.<\/p>\n<p>When the RTKLIB NTRIP Server connects to <span style=\"color: #0000ff;\"><strong>SNIP<\/strong><\/span> it will look like the below. Note that the like &#8220;STR:&#8221; is simply blank.\u00a0 <span style=\"color: #0000ff;\"><strong>SNIP<\/strong><\/span> will process this request and create the new PUSH stream called TEST.<\/p>\n<p style=\"margin-bottom: 0.0001pt; line-height: 100%; padding-left: 30px;\"><span style=\"font-family: Times New Roman,serif;\">[<b><span style=\"color: blue;\">C52<\/span><\/b>]:\u00a0\u00a0A remote NTRIP <b>Server<\/b> (was a Client) sent: ======================<\/span><\/p>\n<p style=\"margin-bottom: 0.0001pt; line-height: 100%; padding-left: 30px;\"><span style=\"font-family: Courier New;\">[C52]: SOURCE foobar TEST<\/span><\/p>\n<p style=\"margin-bottom: 0.0001pt; line-height: 100%; padding-left: 30px;\"><span style=\"font-family: Courier New;\">Source-Agent: NTRIP RTKLIB\/2.4.2<\/span><\/p>\n<p style=\"margin-bottom: 0.0001pt; line-height: 100%; padding-left: 30px;\"><span style=\"font-family: Courier New;\">STR: <\/span><\/p>\n<p style=\"margin-bottom: 0.0001pt; line-height: 100%; padding-left: 30px;\"><span style=\"font-family: Times New Roman,serif;\">[<b><span style=\"color: blue;\">C52<\/span><\/b>]:\u00a0\u00a0 ====================== (an inbound PUSH data connection attempt)<\/span><\/p>\n<p style=\"margin-bottom: 0.0001pt; line-height: 100%; padding-left: 30px;\"><span style=\"font-family: Times New Roman,serif;\">[<b><span style=\"color: blue;\">TEST<\/span><\/b>]:\u00a0\u00a0<b><span style=\"color: blue;\">NTRIP PUSH Server<\/span><\/b> [#P00, <b>TEST<\/b>] established at 01:00:40 PM (local)<\/span><\/p>\n<p style=\"margin-bottom: 0.0001pt; line-height: 100%; padding-left: 30px;\"><span style=\"font-family: Times New Roman,serif;\">[<b><span style=\"color: blue;\">TEST<\/span><\/b>]:\u00a0\u00a0<b><span style=\"color: blue;\">New PUSH Stream <\/span><\/b>\u00a0\u00a0 \u00a0is now <b>[#P00] <\/b>connected, at Thu 01:00:40 PM (Local)<\/span><\/p>\n<p style=\"margin-bottom: 0.0001pt; line-height: 100%; padding-left: 30px;\"><span style=\"font-family: Times New Roman,serif;\">[<b><span style=\"color: blue;\">TEST<\/span><\/b>]:\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0NTRIP Client [#C52] becomes an NTRIP Server PUSH stream <b>[#P00, TEST]<\/b><\/span><\/p>\n<p style=\"margin-bottom: 0.0001pt; line-height: 100%; padding-left: 30px;\"><span style=\"font-family: Times New Roman,serif;\">[<b><span style=\"color: blue;\">TEST<\/span><\/b>]:\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0And now is awaiting data from [<b>69.75.31.227 : 53367<\/b>] <\/span><\/p>\n<p style=\"line-height: 100%; padding-left: 30px;\"><span style=\"line-height: 115%; font-family: Times New Roman,serif;\">[<b><span style=\"color: blue;\">TEST<\/span><\/b>]:\u00a0\u00a0\u00a0\u00a0Re-Opening log file:\u00a0 TEST_160623.rtcm, is 31.650 MB<\/span><\/p>\n<p>Note that in this example it was the 52nd client connection (&#8220;C52&#8221;) that became PUSH stream slot &#8220;P00&#8221; &#8211; with the mountPt &#8220;TEST.&#8221; The index values displayed will vary depending on how many prior connections the\u00a0<span style=\"color: #0000ff;\"><strong>SNIP<\/strong><\/span> Caster has seen when they occur, so your connection numbers will not match.<\/p>\n<p>When this action has completed, the Caster table will have a new entry (shown below in bold) reflecting the TEST mountPt. Below is a fragment (a few lines) of the new table.\u00a0 The keyword RAW is used because nothing further is known about the stream&#8217;s contents.\u00a0 The default descriptive name (which on this machine defaults to &#8220;Glendora, CA&#8221; if it is left as a blank) is left empty, as are the local default lat-long values.\u00a0 This is because (unlike a serial port) we have no idea if the source of the PUSH data connection to us is nearby or not. Similar logic follows for the country, which is set to XXX.<\/p>\n<pre style=\"padding-left: 30px;\">STR;SCSC;Glendora, CA;RTCM 3.1;;;GPS+GLO;SNIP;USA;34.00;-117.00;1;;sNTRIP;;;;;;\r\n<strong>STR;TEST;;Raw;Unknown;;;SNIP;XXX;;;0;0;sNTRIP;None;B;N;0;<\/strong>\r\nSTR;TLSE0;Toulouse;RTCM 3.1;1004(1),1006(10),1008(10),1012(1),1013(10),1019(30),1020(30),1033(10);2;GPS+GLO;IGS;FRA;43.56;1.48;0;1;sNTRIP;none;B;N;2400;rgp-ip.ign.fr:2101\/TLSE1(1)\r\n<\/pre>\n<p>We also note in passing that the above caster table fragment serves to illustrate the wide range of caster table entry lengths that are commonly found.\u00a0 Many NTRIP Client tools will display this information in a well formed table making it more readable.<\/p>\n<p>Given that <span style=\"color: #0000ff;\"><strong>SNIP<\/strong> <\/span>will detect and will fill in much of the missing data (the message types and the lat-long location of the base station), the user need only provide the mountPt and the city name to achieve a well formed caster entry.<\/p>\n<hr \/>\n<h4>Providing a huge (fake) placeholder string<\/h4>\n<p><a href=\"\/wp-content\/uploads\/2016\/06\/RTKLIBserverSettings_DescriptiveText.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignright size-post-small wp-image-2005\" src=\"\/wp-content\/uploads\/2016\/06\/RTKLIBserverSettings_DescriptiveText-320x173.png\" alt=\"RTKLIBserverSettings_DescriptiveText\" width=\"320\" height=\"173\" srcset=\"https:\/\/www.use-snip.com\/kb\/wp-content\/uploads\/2016\/06\/RTKLIBserverSettings_DescriptiveText-320x173.png 320w, https:\/\/www.use-snip.com\/kb\/wp-content\/uploads\/2016\/06\/RTKLIBserverSettings_DescriptiveText-300x162.png 300w, https:\/\/www.use-snip.com\/kb\/wp-content\/uploads\/2016\/06\/RTKLIBserverSettings_DescriptiveText-50x27.png 50w, https:\/\/www.use-snip.com\/kb\/wp-content\/uploads\/2016\/06\/RTKLIBserverSettings_DescriptiveText.png 335w\" sizes=\"auto, (max-width: 320px) 100vw, 320px\" \/><\/a>Providing a full caster string is somewhat laborious. Here is a starting point with human readable names for all the key data items.\u00a0 You can take this string and edit it to make a string suitable for your own needs.\u00a0 In the case of any item you do not wish to provide, that item can be made into a blank (a blank is just no text between the &#8220;;&#8221; delimiters, as &#8220;;;&#8221;).<\/p>\n<p><strong>City-Description;RTCMformat;MsgList;SigCnt;GNSStypes;SNIP;country;lat;long;0;0;sNTRIP;Compression;Basic;NoFee;0;<\/strong><\/p>\n<p>Some of these items have std abbreviations, so a better starting point for a human readers&#8217; wanting to edit this is to change only the items listed in blue in the below.\u00a0 Also note that lat-long values are expected to only have 2 digits past the decimal point and that North America resides in a <em>negative<\/em> region of longitude.<\/p>\n<p><strong><span style=\"color: #0000ff;\">City-Description<\/span>;<span style=\"color: #0000ff;\">RTCMformat<\/span>;<span style=\"color: #0000ff;\">MsgList<\/span>;<span style=\"color: #0000ff;\">SigCnt<\/span>;<span style=\"color: #0000ff;\">GNSStypes<\/span>;SNIP;<span style=\"color: #0000ff;\">country<\/span>;<span style=\"color: #0000ff;\">lat<\/span>;<span style=\"color: #0000ff;\">long<\/span>;0;0;sNTRIP;None;B;N;0;<\/strong><\/p>\n<p>Remember that the mountPt\u00a0 (which will be added to the string) is <em>not<\/em> part of the string.\u00a0 The RTKLIB tool provides that on another line in the protocol request.\u00a0 When this connects to <span style=\"color: #0000ff;\"><strong>SNIP<\/strong><\/span> it will look like the below exchange. Note that the additional content after the line starting with &#8220;STR:&#8221; follows in the first figure above.\u00a0 <span style=\"color: #0000ff;\"><strong>SNIP<\/strong><\/span> will process this request and create the new PUSH stream called TEST.<\/p>\n<p style=\"margin-bottom: .0001pt; ;line-height: 100%; margin-left: 40px;\"><span style=\"font-family: Times New Roman;\">[<b><span style=\"color: blue;\">C56<\/span><\/b>]:\u00a0\u00a0A remote NTRIP <b>Server<\/b> (was a Client) sent: ======================<\/span><\/p>\n<p style=\"margin-bottom: .0001pt; ;line-height: 100%; margin-left: 40px;\"><span style=\"font-family: Courier New;\">[C56]: SOURCE foobar TEST<\/span><\/p>\n<p style=\"margin-bottom: .0001pt; ;line-height: 100%; margin-left: 40px;\"><span style=\"font-family: Courier New;\">Source-Agent: NTRIP RTKLIB\/2.4.2<\/span><\/p>\n<p style=\"margin-bottom: .0001pt; ;line-height: 100%; margin-left: 40px;\"><span style=\"font-family: Courier New;\">STR: City-Description;RTCMformat;MsgList;SigCnt;GNSStypes;SNIP;country;lat;long;0;0;sNTRIP;Compression;Basic;NoFee;0;<\/span><\/p>\n<p style=\"margin-bottom: .0001pt; ;line-height: 100%; margin-left: 40px;\"><span style=\"font-family: Times New Roman;\">[<b><span style=\"color: blue;\">C56<\/span><\/b>]: ====================== (an inbound PUSH data connection attempt)<\/span><\/p>\n<p style=\"margin-bottom: .0001pt; ;line-height: 100%; margin-left: 40px;\"><span style=\"font-family: Times New Roman;\">[<b><span style=\"color: blue;\">TEST<\/span><\/b>]:\u00a0\u00a0<b><span style=\"color: blue;\">NTRIP PUSH Server<\/span><\/b> [#P00, <b>TEST<\/b>] established at 01:03:02 PM (local)<\/span><\/p>\n<p style=\"margin-bottom: .0001pt; ;line-height: 100%; margin-left: 40px;\"><span style=\"font-family: Times New Roman;\">[<b><span style=\"color: blue;\">TEST<\/span><\/b>]:\u00a0\u00a0<b><span style=\"color: blue;\">New PUSH Stream <\/span><\/b>\u00a0\u00a0 \u00a0is now <b>[#P00] <\/b>connected, at Thu 01:03:02 PM (Local)<\/span><\/p>\n<p style=\"margin-bottom: .0001pt; ;line-height: 100%; margin-left: 40px;\"><span style=\"font-family: Times New Roman;\">[<b><span style=\"color: blue;\">TEST<\/span><\/b>]:\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0NTRIP Client [#C56] becomes an NTRIP Server PUSH stream <b>[#P00, TEST]<\/b><\/span><\/p>\n<p style=\"margin-bottom: .0001pt; ;line-height: 100%; margin-left: 40px;\"><span style=\"font-family: Times New Roman;\">[<b><span style=\"color: blue;\">TEST<\/span><\/b>]:\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0And now is awaiting data from [<b>69.75.31.227 : 53494<\/b>] <\/span><\/p>\n<p style=\"margin-bottom: .0001pt; ;line-height: 100%; margin-left: 40px;\"><span style=\"font-family: Times New Roman;\">[<\/span><b><span style=\"color: blue; ;font-family: Times New Roman;\">TEST<\/span><\/b><span style=\"font-family: Times New Roman;\">]:\u00a0\u00a0\u00a0\u00a0Re-Opening log file:\u00a0 TEST_160623.rtcm, is 31.668 MB<\/span><\/p>\n<p>&nbsp;<\/p>\n<p>When this action has completed, the Caster table will have a new entry (shown below in bold) reflecting the TEST mountPt. Below is a fragment of the new table. Because the PUSH source provides all the details, these are used in the resulting Caster table.<\/p>\n<pre>STR;SCSC;Glendora, CA;RTCM 3.1;;;GPS+GLO;SNIP;USA;34.00;-117.00;1;;sNTRIP;;;;;;\r\n<strong>STR;TEST;City-Description;RTCMformat;MsgList;SigCnt;GNSStypes;SNIP;country;lat;long;0;0;sNTRIP;Compression;Basic;NoFee;0;<\/strong>\r\nSTR;TLSE0;Toulouse;RTCM 3.1;1004(1),1006(10),1008(10),1012(1),1013(10),1019(30),1020(30),1033(10);2;GPS+GLO;IGS;FRA;43.56;1.48;0;1;sNTRIP;none;B;N;2400;rgp-ip.ign.fr:2101\/TLSE1(1)\r\n<\/pre>\n<p>While this caster line is pretty much meaningless, it is completely valid from an NTRIP protocol perspective. Regrettably, NTRIP is not strict on the precise capitalization of the list of suitable keywords to be used.<\/p>\n<hr \/>\n<h4>Providing a typical uBlox 6T example<\/h4>\n<p>Here is a starting point for use with a common uBlox6T device.\u00a0\u00a0 As you will be aware, this is an L1 only GPS device so we adjust the SigCnt and RTCMFormat entries to reflect this.\u00a0\u00a0 Here we presume that the raw uBlox messages have been converted to RTCM3.x by RTKLIB&#8217;s tools and that we will be sending one 1004 type message at 1Hz.\u00a0 If you plan to send raw uBlox messages use the &#8220;raw&#8221; keyword or the &#8220;uBlox raw&#8221; keyword in place of\u00a0 the &#8220;RTCM 3.1&#8221; keyword. Also, quite a few deployments leave the message list empty rather than try to enumerate each item.<\/p>\n<p><strong>Collocated Testing;RTCM 3.1;1004(1);1;GPS;SNIP;USA;34.00;-117.00;0;0;sNTRIP;;None;B;N;0;<\/strong><\/p>\n<p>Lacking a suitable name, we used &#8220;<strong>Collocated Testing<\/strong>&#8221; and our office for the Lat-Lon values.\u00a0 You can leave this entry blank if you desire. Some people repeat the mountPt as an alternative. Note also the &#8220;1&#8221; (not a 2 for L1\/L2) and the the &#8220;GPS&#8221; (not GPS+GLO) in the above line.<\/p>\n<p>When this connects to <span style=\"color: #0000ff;\"><strong>SNIP<\/strong><\/span> it will look like the below exchange. Note that the additional content after the line starting with &#8220;STR:&#8221; follows the above.\u00a0 <span style=\"color: #0000ff;\"><strong>SNIP<\/strong><\/span> will process this request and create the new PUSH stream called TEST.<\/p>\n<p style=\"margin-bottom: .0001pt; ;line-height: 100%; margin-left: 40px;\"><span style=\";font-family: Times New Roman;\">[<b><span style=\"color: blue;\">C60<\/span><\/b>]:\u00a0\u00a0A remote NTRIP <b>Server<\/b> (was a Client) sent: ======================<\/span><\/p>\n<p style=\"margin-bottom: .0001pt; ;line-height: 100%; margin-left: 40px;\"><span style=\";font-family: Courier New;\">[C60]: SOURCE foobar uBlox6T<\/span><\/p>\n<p style=\"margin-bottom: .0001pt; ;line-height: 100%; margin-left: 40px;\"><span style=\";font-family: Courier New;\">Source-Agent: NTRIP RTKLIB\/2.4.2<\/span><\/p>\n<p style=\"margin-bottom: .0001pt; ;line-height: 100%; margin-left: 40px;\"><span style=\";font-family: Courier New;\">STR: Collocated Testing;RTCM 3.1;1004(1);1;GPS;SNIP;USA;34.00;-117.00;0;0;sNTRIP;;None;B;N;0;<\/span><\/p>\n<p style=\"margin-bottom: .0001pt; ;line-height: 100%; margin-left: 40px;\"><span style=\";font-family: Times New Roman;\">[<b><span style=\"color: blue;\">C60<\/span><\/b>]:\u00a0\u00a0\u00a0 ====================== (an inbound PUSH data connection attempt)<\/span><\/p>\n<p style=\"margin-bottom: .0001pt; ;line-height: 100%; margin-left: 40px;\"><span style=\"font-family: Times New Roman;\">[<b><span style=\"color: blue;\">uBlox6T<\/span><\/b>]:\u00a0\u00a0<b><span style=\"color: blue;\">NTRIP PUSH Server<\/span><\/b> [#P00, <b>uBlox6T_02<\/b>] established at 01:10:47 PM (local)<\/span><\/p>\n<p style=\"margin-bottom: .0001pt; ;line-height: 100%; margin-left: 40px;\"><span style=\"font-family: Times New Roman;\">[<b><span style=\"color: blue;\">uBlox6T<\/span><\/b>]:\u00a0\u00a0<b><span style=\"color: blue;\">New PUSH Stream <\/span><\/b>\u00a0\u00a0 \u00a0is now <b>[#P00] <\/b>connected, at Thu 01:10:47 PM (Local)<\/span><\/p>\n<p style=\"margin-bottom: .0001pt; ;line-height: 100%; margin-left: 40px;\"><span style=\"font-family: Times New Roman;\">[<b><span style=\"color: blue;\">uBlox6T<\/span><\/b>]:\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0NTRIP Client [#C60] becomes an NTRIP Server PUSH stream <b>[#P00, uBlox6T_02]<\/b><\/span><\/p>\n<p style=\"margin-bottom: .0001pt; ;line-height: 100%; margin-left: 40px;\"><span style=\"font-family: Times New Roman;\">[<b><span style=\"color: blue;\">uBlox6T<\/span><\/b>]:\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0And now is awaiting data from [<b>69.75.31.227 : 53886<\/b>] <\/span><\/p>\n<p style=\"margin-bottom: .0001pt; ;line-height: 100%; margin-left: 40px;\"><span style=\"font-family: Times New Roman;\">[<\/span><b><span style=\"color: blue; ;font-family: Times New Roman;\">uBlox6T<\/span><span style=\"font-family: Times New Roman;\">]: <\/span><\/b><span style=\"font-family: Times New Roman;\">Log file: &#8230;\/simpleNTRIP\/data\/uBlox6T_02_160623.rtcm opened.<\/span><\/p>\n<p>&nbsp;<\/p>\n<p>When this action has completed, the Caster table will have a new entry (shown below in bold) reflecting the TEST mountPt. Below is a fragment (a few lines) of the new table.<\/p>\n<pre>STR;SCSC;Glendora, CA;RTCM 3.1;;;GPS+GLO;SNIP;USA;34.00;-117.00;1;;sNTRIP;;;;;;\r\nSTR;TLSE0;Toulouse;RTCM 3.1;1004(1),1006(10),1008(10),1012(1),1013(10),1019(30),1020(30),1033(10);2;GPS+GLO;IGS;FRA;43.56;1.48;0;1;sNTRIP;none;B;N;2400;rgp-ip.ign.fr:2101\/TLSE1(1)\r\n<strong>STR;uBlox6T_02;Colocated Testing;RTCM 3.1;1004(1);1;GPS;SNIP;USA;34.00;-117.00;0;0;sNTRIP;;None;B;N;0;\r\n<\/strong><\/pre>\n<p>If you will be using a uBlox device translated by RTKLIB as base station, a setting similar to this will be what you need.<\/p>\n<hr \/>\n<h4>A Gibberish ill-formed example<\/h4>\n<p>Here is an example where the provided caster table lines is not correctly formatted and cannot be used.<\/p>\n<p style=\"margin-bottom: .0001pt; ;line-height: 100%; margin-left: 40px;\"><span style=\";font-family: Times New Roman;\">[<b><span style=\"color: blue;\">C48<\/span><\/b>]:\u00a0\u00a0A remote NTRIP <b>Server<\/b> (was a Client) sent: ======================<\/span><\/p>\n<p style=\"margin-bottom: .0001pt; ;line-height: 100%; margin-left: 40px;\"><span style=\"font-family: Courier New;\">[C48]: SOURCE foobar TEST<\/span><\/p>\n<p style=\"margin-bottom: .0001pt; ;line-height: 100%; margin-left: 40px;\"><span style=\"font-family: Courier New;\">Source-Agent: NTRIP RTKLIB\/2.4.2<\/span><\/p>\n<p style=\"margin-bottom: .0001pt; ;line-height: 100%; margin-left: 40px;\"><span style=\"font-family: Courier New;\">STR: ee;0;<\/span><\/p>\n<p style=\"margin-bottom: .0001pt; ;line-height: 100%; margin-left: 40px;\"><span style=\";font-family: Times New Roman;\">[<b><span style=\"color: blue;\">C48<\/span><\/b>]: ====================== (an inbound PUSH data connection attempt)<\/span><\/p>\n<p style=\"margin-bottom: .0001pt; ;line-height: 100%; margin-left: 40px;\"><span style=\";font-family: Times New Roman;\">[<b><span style=\"color: blue;\">TEST<\/span><\/b>]:\u00a0\u00a0<b><span style=\"color: blue;\">NTRIP PUSH Server<\/span><\/b> [#P00, <b>TEST<\/b>] established at 12:58:36 PM (local)<\/span><\/p>\n<p style=\"margin-bottom: .0001pt; ;line-height: 100%; margin-left: 40px;\"><span style=\";font-family: Times New Roman;\">[<b><span style=\"color: blue;\">TEST<\/span><\/b>]:\u00a0\u00a0<b><span style=\"color: blue;\">New PUSH Stream <\/span><\/b>\u00a0\u00a0 \u00a0is now <b>[#P00] <\/b>connected, at Thu 12:58:36 PM (Local)<\/span><\/p>\n<p style=\"margin-bottom: .0001pt; ;line-height: 100%; margin-left: 40px;\"><span style=\";font-family: Times New Roman;\">[<b><span style=\"color: blue;\">TEST<\/span><\/b>]:\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0NTRIP Client [#C48] becomes an NTRIP Server PUSH stream <b>[#P00, TEST]<\/b><\/span><\/p>\n<p style=\"margin-bottom: .0001pt; ;line-height: 100%; margin-left: 40px;\"><span style=\";font-family: Times New Roman;\">[<b><span style=\"color: blue;\">TEST<\/span><\/b>]:\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0And now is awaiting data from [<b>69.75.31.227 : 53252<\/b>] <\/span><\/p>\n<p style=\"line-height: 100%; margin-left: 40px;\"><span style=\"line-height: 115%; ;font-family: Times New Roman;\">[<b><span style=\"color: blue;\">TEST<\/span><\/b>]:\u00a0\u00a0\u00a0\u00a0Re-Opening log file:\u00a0 TEST_160623.rtcm, is 31.607 MB<\/span><\/p>\n<p>When this action has completed, the Caster table will have a blank style default entry (shown below in bold) reflecting the TEST mountPt. Because the stream really exists (and is public &#8211; not hidden), an entry is required. But because the submitted line was unable to pass the internal\u00a0<span style=\"color: #0000ff;\"><strong>SNIP<\/strong><\/span> quality process rules, that line could not be used.\u00a0 A default entry is used instead. The most common user cause of this is too few or too many &#8220;;&#8221; characters, leading to ill formed content.<\/p>\n<pre>STR;SCSC;Glendora, CA;RTCM 3.1;;;GPS+GLO;SNIP;USA;34.00;-117.00;1;;sNTRIP;;;;;;\r\n<strong>STR;TEST;;Raw;Unknown;;;SNIP;XXX;;;0;0;sNTRIP;None;B;N;0;<\/strong>\r\nSTR;TLSE0;Toulouse;RTCM 3.1;1004(1),1006(10),1008(10),1012(1),1013(10),1019(30),1020(30),1033(10);2;GPS+GLO;IGS;FRA;43.56;1.48;0;1;sNTRIP;none;B;N;2400;rgp-ip.ign.fr:2101\/TLSE1(1)<\/pre>\n<hr \/>\n<p style=\"text-align: left;\">This article has presented some core concepts on how to enter a suitable caster string when sending PUSH data to <span style=\"color: #0000ff;\"><strong>SNIP<\/strong><\/span>. In general this data is not required for small networks when the number of caster choices is limited. But in larger networks and environments where others will seek to find which of your data streams suits their needs, it becomes essential.<\/p>\n<p style=\"text-align: left;\">This <a href=\"\/kb\/knowledge-base\/editing-caster-entries\/\">article<\/a> has some related concepts when creating caster table entries for serial data sources on <span style=\"color: #0000ff;\"><strong>SNIP<\/strong><\/span>.<\/p>\n<p style=\"text-align: center;\"><a href=\"https:\/\/www.use-snip.com\/download\/\" target=\"_blank\" rel=\"noopener\"><strong>Download your own copy of SNIP today<\/strong><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>One of the more complicated details when using the RTKLIB tools to push data to SNIP is how to set up the Caster table &#8220;string&#8221; entry in the dialog box shown below.\u00a0 This article deals with how to correctly enter this data. Aside:\u00a0 RTKLIB provides an NTRIP Server function only; [&hellip;]<\/p>\n","protected":false},"author":13,"comment_status":"open","ping_status":"closed","template":"","format":"standard","meta":{"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"footnotes":""},"ht-kb-category":[112,113],"ht-kb-tag":[],"class_list":["post-1906","ht_kb","type-ht_kb","status-publish","format-standard","hentry","ht_kb_category-general","ht_kb_category-rtk-lib"],"_links":{"self":[{"href":"https:\/\/www.use-snip.com\/kb\/wp-json\/wp\/v2\/ht-kb\/1906","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.use-snip.com\/kb\/wp-json\/wp\/v2\/ht-kb"}],"about":[{"href":"https:\/\/www.use-snip.com\/kb\/wp-json\/wp\/v2\/types\/ht_kb"}],"author":[{"embeddable":true,"href":"https:\/\/www.use-snip.com\/kb\/wp-json\/wp\/v2\/users\/13"}],"replies":[{"embeddable":true,"href":"https:\/\/www.use-snip.com\/kb\/wp-json\/wp\/v2\/comments?post=1906"}],"version-history":[{"count":48,"href":"https:\/\/www.use-snip.com\/kb\/wp-json\/wp\/v2\/ht-kb\/1906\/revisions"}],"predecessor-version":[{"id":5111,"href":"https:\/\/www.use-snip.com\/kb\/wp-json\/wp\/v2\/ht-kb\/1906\/revisions\/5111"}],"wp:attachment":[{"href":"https:\/\/www.use-snip.com\/kb\/wp-json\/wp\/v2\/media?parent=1906"}],"wp:term":[{"taxonomy":"ht_kb_category","embeddable":true,"href":"https:\/\/www.use-snip.com\/kb\/wp-json\/wp\/v2\/ht-kb-category?post=1906"},{"taxonomy":"ht_kb_tag","embeddable":true,"href":"https:\/\/www.use-snip.com\/kb\/wp-json\/wp\/v2\/ht-kb-tag?post=1906"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}