{"id":4924,"date":"2018-02-08T13:38:15","date_gmt":"2018-02-08T13:38:15","guid":{"rendered":"https:\/\/www.use-snip.com\/kb\/?post_type=ht_kb&#038;p=4924"},"modified":"2020-12-23T19:30:05","modified_gmt":"2020-12-23T19:30:05","slug":"pfat-add-settings-and-uses","status":"publish","type":"ht_kb","link":"https:\/\/www.use-snip.com\/kb\/knowledge-base\/pfat-add-settings-and-uses\/","title":{"rendered":"PFAT: Add Settings and Uses"},"content":{"rendered":"<p>The the <strong>P.F.A.T.&#x2122;<\/strong> control system provides several innovative ways to control the messages present in every data stream.\u00a0 The <a href=\"https:\/\/www.use-snip.com\/kb\/knowledge-base\/introducing-pfat\/\">PFAT features<\/a> are available in the <span style=\"color: #993300;\"><em><strong>Pro<\/strong><\/em><\/span>, <span style=\"color: #993300;\"><em><strong>Basic<\/strong><\/em><\/span>, editions of <span style=\"color: #0000ff;\"><strong>SNIP<\/strong><\/span>.\u00a0 <span style=\"color: #993300;\"><em><strong>Lite<\/strong><\/em> <\/span>copies of <span style=\"color: #0000ff;\"><strong>SNIP<\/strong> <\/span>share the same code base, but many of these innovative features are disabled in the freely available <span style=\"color: #993300;\"><em><strong>Lite<\/strong> <\/em><\/span>edition.<\/p>\n<h3>Using the PFAT <strong>Add<\/strong> Dialog Control<\/h3>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-4911 alignright\" src=\"https:\/\/www.use-snip.com\/kb\/wp-content\/uploads\/2018\/02\/PFAT_Add_norm.ico\" alt=\"\" width=\"64\" height=\"64\" \/><\/p>\n<p>The <strong>PFAT<\/strong> <em>Add<\/em> control is used to <strong>add<\/strong> the selected <a href=\"https:\/\/www.use-snip.com\/kb\/knowledge-base\/rtcm-3-message-list\/\">RTCM3 message types<\/a> found in any Base Station data stream to the current stream.\u00a0 The add action combines all the messages present in both streams (post any filtering that may be active)\u00a0 to form a composite.\u00a0 Various logic rules in <span style=\"color: #0000ff;\"><strong>SNIP<\/strong><\/span> check for, and warn on, creating conflicting content.\u00a0 The result is then forwarded on to any <a href=\"https:\/\/www.use-snip.com\/kb\/knowledge-base\/question-what-is-an-ntrip-client\/\">NTRIP Clients<\/a> or to other users in <span style=\"color: #0000ff;\"><strong>SNIP<\/strong><\/span> (such as a <a href=\"https:\/\/www.use-snip.com\/kb\/knowledge-base\/the-pushed-out-streams-tab-output-data\/\">PUSH_Out<\/a> stream).\u00a0 All the messages are still parsed and may be used in various <a href=\"https:\/\/www.use-snip.com\/kb\/knowledge-base\/graphical-monitoring\/\">navigation<\/a> and monitoring services.\u00a0 Whenever <strong>PFAT<\/strong> <em>Add<\/em> is active, the <a href=\"https:\/\/www.use-snip.com\/kb\/knowledge-base\/the-stream-menu-controls\/\">right-click menu<\/a> for the stream shows a check mark. Selecting the menu item displays the <em>Add<\/em> dialog box. The message stream must be <a href=\"https:\/\/www.use-snip.com\/kb\/knowledge-base\/pfat-parse-settings\/\">Parsed<\/a> in order to Filter the messages.<\/p>\n<p>The individual controls of the <em>Add<\/em> dialog is described in further detail here (link to be provided at release).\u00a0 The basic user interaction is to select one or more data streams from other streams present on the machine to which is then added to the subject stream.\u00a0 Multiple data streams can be added when required.\u00a0 Like all <strong>PFAT<\/strong> settings, the values selected are preserved and used each time the stream (or <span style=\"color: #0000ff;\"><strong>SNIP<\/strong><\/span>) is started.<\/p>\n<p style=\"padding-left: 30px;\"><span style=\"color: #ff6600;\"><strong>Caution<\/strong><\/span>: The <strong>PFAT<\/strong> <em>Add<\/em> function is very powerful and it is quite easy to create composite message streams which make no logical sense or which are not internally consistent across all the combined messages.<\/p>\n<p>The logic in <span style=\"color: #0000ff;\"><strong>SNIP<\/strong> <\/span>will detect <em>some<\/em> but not all possible conflicts that can result.\u00a0 Among the things that <span style=\"color: #0000ff;\"><strong>SNIP<\/strong><\/span> will detect are:<\/p>\n<ul>\n<li>If more than one stream is sending the same message types (such as two streams sending 1004 observations).<\/li>\n<li>If more then one stream is sending conflicting messages with the same content (such as 1002 and 1004 at the same time).<\/li>\n<\/ul>\n<p>If such conflicts are found among the proposed set of streams, a warning note is provided in the dialog.\u00a0 If the user attempts to save such a conflict, the warning is repeated asking the user to confirm his\/her intent.\u00a0 <span style=\"color: #0000ff;\"><strong>SNIP<\/strong><\/span> does allow the creating of conflicting streams; this has some value to the GNSS research community that uses it in unique ways.<\/p>\n<p><span style=\"color: #008000;\"><strong>Note<\/strong><\/span>: When using <em>Add<\/em> and editing the streams, the subject stream will be re-parsed and message analysis process performed as the settings are changed.\u00a0 This allows <span style=\"color: #0000ff;\"><strong>SNIP<\/strong><\/span> to consider the composite data stream and its contents in real time.\u00a0 However, every time the message analysis is performed it can disrupt the message traffic seen by any <a href=\"https:\/\/www.use-snip.com\/kb\/knowledge-base\/question-what-is-an-ntrip-client\/\">NTRIP Clients<\/a> who are actively connected to that stream, and it also resets the accumulated statistical data for that stream.<\/p>\n<h3>Typical Uses Cases for Adding<\/h3>\n<p>Common uses of the <strong>PFAT<\/strong> <em>Add<\/em> operation are described further in the examples below.<\/p>\n<h4>Adding Broadcast Orbital Data<\/h4>\n<p>A common use is adding orbital ephemeris messages to a stream.<\/p>\n<p>As described in the article on <a href=\"https:\/\/www.use-snip.com\/kb\/knowledge-base\/pfat-filter-settings-and-uses\/\">filtering<\/a>, <strong>PFAT<\/strong> filtering allows you to take a broadcast ephemeris stream with several GNSS types\u00a0 [GPS + GLO + GAL + BDS + QZS] and reduce that to only the types of interest.\u00a0 In the example below the common <strong>RTCM3EPH <\/strong>stream has been used to create a stream with only GPS+GLO\u00a0 messages (MTs 1019 and 1020).\u00a0 This stream has then be added to a the steam &#8220;<strong>AnExample<\/strong>&#8221;\u00a0 which is a common Base Station with the normal observation messages (MTs 1004 and 1012).<\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-4934\" src=\"https:\/\/www.use-snip.com\/kb\/wp-content\/uploads\/2018\/02\/PFAT_ADD_Orbits.png\" alt=\"\" width=\"480\" height=\"270\" srcset=\"https:\/\/www.use-snip.com\/kb\/wp-content\/uploads\/2018\/02\/PFAT_ADD_Orbits.png 480w, https:\/\/www.use-snip.com\/kb\/wp-content\/uploads\/2018\/02\/PFAT_ADD_Orbits-300x169.png 300w, https:\/\/www.use-snip.com\/kb\/wp-content\/uploads\/2018\/02\/PFAT_ADD_Orbits-50x28.png 50w, https:\/\/www.use-snip.com\/kb\/wp-content\/uploads\/2018\/02\/PFAT_ADD_Orbits-320x180.png 320w\" sizes=\"auto, (max-width: 480px) 100vw, 480px\" \/><\/p>\n<p>The resulting message stream for <strong>AnExample <\/strong>will now contain MTs 1004, 1005, 1012, 1019 and 1020.<\/p>\n<h4>\u00a0Adding Precise Clock and Orbital Data<\/h4>\n<p>Another common use is adding precise orbital ephemeris message and \/ or precise clock data products to a stream.\u00a0 This is common with those developing various long baseline applications and hybrid PPP style navigation filters.\u00a0 Some deployments add this data to an observational data stream, others add it to ephemeris data stream.<\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-4932\" src=\"https:\/\/www.use-snip.com\/kb\/wp-content\/uploads\/2018\/02\/PFAT_ADD_Clks.png\" alt=\"\" width=\"480\" height=\"270\" srcset=\"https:\/\/www.use-snip.com\/kb\/wp-content\/uploads\/2018\/02\/PFAT_ADD_Clks.png 480w, https:\/\/www.use-snip.com\/kb\/wp-content\/uploads\/2018\/02\/PFAT_ADD_Clks-300x169.png 300w, https:\/\/www.use-snip.com\/kb\/wp-content\/uploads\/2018\/02\/PFAT_ADD_Clks-50x28.png 50w, https:\/\/www.use-snip.com\/kb\/wp-content\/uploads\/2018\/02\/PFAT_ADD_Clks-320x180.png 320w\" sizes=\"auto, (max-width: 480px) 100vw, 480px\" \/><\/p>\n<p>When doing this, you (and your end user community) need to be sure if the precise corrections refer to the center of mass (COM) or the antenna phase center (APC) of the Space Vehicles (SVs). The final navigation filter needs this information to operate correctly.<\/p>\n<p>Many of these data products can be obtained from IGS, <a href=\"http:\/\/www.igs.org\/products\" target=\"_blank\" rel=\"noopener noreferrer\">here<\/a> and from <a href=\"http:\/\/mgex.igs.org\/IGS_MGEX_Data.php\" target=\"_blank\" rel=\"noopener noreferrer\">here<\/a>.\u00a0 Registration is free but required for most of this data.\u00a0 God bless IGS and the folks at the MGEX effort that provide these data products. Truly an effort with many positive ramifications for the entire world.<\/p>\n<h4>Adding Private message Content<\/h4>\n<p>The <strong>PFAT<\/strong> <em>Add<\/em> function can also be used to add private message types to a stream.\u00a0 As an example SCSC (the developers of <span style=\"color: #0000ff;\"><strong>SNIP<\/strong><\/span>), have used this method to add RTCM 2.x messages encoded in a unique way into an RTCM3.x stream for comparison and validation testing.\u00a0 In another project, raw vehicle IMU data was inserted into a stream by this means.\u00a0 As long as both message streams contain <em>well-formed<\/em> RTCM3 message content, the <em>Add<\/em> function can be used.<\/p>\n<h3>See Also<\/h3>\n<ul>\n<li><a href=\"https:\/\/www.use-snip.com\/kb\/knowledge-base\/pfat-filter-settings-and-uses\/\">PFAT Filter<\/a>; used for <strong>Filtering <\/strong>message types from a data stream<\/li>\n<li><a href=\"https:\/\/www.use-snip.com\/kb\/knowledge-base\/pfat-translate-settings-uses\/\">PFAT Translate<\/a>; used for <strong>Translating<\/strong> the messages in a data stream<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The the P.F.A.T.&#x2122; control system provides several innovative ways to control the messages present in every data stream.\u00a0 The PFAT features are available in the Pro, Basic, editions of SNIP.\u00a0 Lite copies of SNIP share the same code base, but many of these innovative features are disabled in the freely [&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":[334],"ht-kb-tag":[400,205,381],"class_list":["post-4924","ht_kb","type-ht_kb","status-publish","format-standard","hentry","ht_kb_category-advanced-topics","ht_kb_tag-add","ht_kb_tag-messages","ht_kb_tag-pfat"],"_links":{"self":[{"href":"https:\/\/www.use-snip.com\/kb\/wp-json\/wp\/v2\/ht-kb\/4924","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=4924"}],"version-history":[{"count":17,"href":"https:\/\/www.use-snip.com\/kb\/wp-json\/wp\/v2\/ht-kb\/4924\/revisions"}],"predecessor-version":[{"id":6686,"href":"https:\/\/www.use-snip.com\/kb\/wp-json\/wp\/v2\/ht-kb\/4924\/revisions\/6686"}],"wp:attachment":[{"href":"https:\/\/www.use-snip.com\/kb\/wp-json\/wp\/v2\/media?parent=4924"}],"wp:term":[{"taxonomy":"ht_kb_category","embeddable":true,"href":"https:\/\/www.use-snip.com\/kb\/wp-json\/wp\/v2\/ht-kb-category?post=4924"},{"taxonomy":"ht_kb_tag","embeddable":true,"href":"https:\/\/www.use-snip.com\/kb\/wp-json\/wp\/v2\/ht-kb-tag?post=4924"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}