uSmartDigi for Amateur Radio Packet Filtering Rules Version 2.7 and earlier. Rich Painter, ab0vo (c) Copyright 2004 - 2007 Painter Engineering, Inc. File format Action Command Args... Where Action and Command can be any case combination. Abbreviations exist for both Actions and Commands. Text following the args is ignored and can serve as comments. Action, Command may be preceeded or followed by any amount of white space. All Latitudes and Longitudes are specified in any of 3 formats (see below). White space is any combination of spaces and tabs. White lines are ignored. Lines may start with white space. Comments start with the characters [#/;] and are ignored. Basic operation For every packet that is APRS the ordered list of rules are checked. If a packet matches a rule then the action (Drop or Pass) is taken. If a packet does not match any rule then it is implicitly Pass by default unless changed with the Implicit Command. Actions: drop do not repeat the packets that match this rule pass repeat the packets that match this rule Commands: implicit This has no arguments. This changes the implicit rule to that of Drop or Pass. Only one of these can be in the rule file. source Specify a source call sign (complete or partial) with optional trailing * as a wild-card matching operator. The argument can be a single * to match everything. Format {action} source call_sign[*] destination Specify a destination string with optional trailing * as a wild-card matching operator. The argument can be a single * to match everything. Valid APRS destination strings can be found in the APRS Spec v1.0.1 page 13. Format {action} destination dst_string[*] circle Specify a circular zone of a specific radius in statute miles centered on a specified latitude and longitide. The rule applies INSIDE the circle. Format {action} circle radius Latitude_center, Longitude_center Where the Latitude argument MUST be followed by a comma. compass Specify a compass direction centered on a specified latitude and longitide. Format {action} compass direction Latitude_center, Longitude_center Where the Latitude argument MUST be followed by a comma and the Direction identifier is one of the following: ID Direction N everything N S everything S E everything E W everything W NE everything in NE quadrant SE everything in SE quadrant SW everything in SW quadrant NW everything in NW quadrant rectangle Specify a rectangle using two (2) latitude-longitude pairs that form the Upper Left (NW) and Lower Right (SE) corners of a rectangle. Format {action} rectangle NW_Latitude, NW_Longitude, SE_Latitude, SE_Longitude Where the Latitude argument MUST be followed by a comma. sector Specify a pie-slice shaped region using two (2) angles referenced from North, an Inner range and optional Outer range centered at the repeater's location. Ranges are in statute miles. The action applies to ranges greater than Inner Range to the Outer range or infinity if Outer range is not specified. Format {action} sector Angle1, Angle2, Inner_range [Outer_range] Where the Angle1 and Angle2 arguments MUST be followed by a comma and use the Colon, Dotted or DMC formsts. These Angles must be positive, measured clockwise from North resulting in a range of [0..360]. Command Examples drop dest TLM* ; drops all telemetry packets pass source ab0vo* ; passes all ab0vo packets, including ab0vo-1 ; and the like This two-rule sequence creates a donut where no repeats happen: pass circle 2.5 n 39d 31m, w 104.669d // hole drop cir 50.5 n 39d 31m, w 104.669d // torus drop compass W 39:31:00, w 104.669d # drops everything W of # this Lat-Lon drop rect 40d 0m .5c, -104d 30m, 39d, -103d /* drop within /* this Lat-Lon box drop sect 32d, 60d, 5 // drops all packets 5 miles or // greater from the repeater // from 32 deg from North to 60 deg // from North Colon, Dotted and DMC formats for Angles, Latitudes and Longitudes Colon format The Colon format is a fixed-position, colon-separated notation with an optional negative sign and optional fractional Seconds. Two (2) colons are always required for this format! No imbedded white space is allowed! [s]DD:MM:SS[.F*] for Latitudes [s]DDD:MM:SS[.F*] for Longitudes Where: s is an optional negative sign (-) representing South Latitudes or West Longitudes DD is 2 decimal digits representing Latitude in Degrees DDD is 3 decimal digits representing Longitude Degrees MM is 2 decimal digits representing Latitude or Longitude Minutes SS is 2 decimal digits representing Latitude or Longitude whole Seconds .F* is optional decimal point and 0 or more decimal digits representing Fractional seconds. Examples: 45:22:33 -103:00:00 -38:33:29.222 45:18: Dotted format The Dotted format is a fixed-position, period-separated notation with an optional negative sign and optional fractional Seconds. Two (2) periods are always required for this format! No imbedded white space is allowed! [s]DD.MM.[F*] for Latitudes [s]DDD.MM.[F*] for Longitudes Where: s is an optional negative sign (-) representing South Latitudes or West Longitudes DD is 2 decimal digits representing Latitude in Degrees DDD is 3 decimal digits representing Longitude Degrees MM is 2 decimal digits representing Latitude or Longitude Minutes F* is optional decimal point and 0 or more decimal digits representing Fractional Latitude or Longitude Minutes. Examples: 45.22.64 -103.00. -38.33.379 DMC format The DMC format allows a wide range of means to specify any Latitude or Longitude. Extensive error checks are made to ensure that the resulting specification does not exceed legal ranges nor conflicting directions are used. DMC stands for Degrees, Minutes and seConds. S cannot be used for the seconds identifier because that is reserved for the S direction. Angle identifiers MUST follow the numeric real number (integer and decimal) but may be preceded with white space. White space is any combination of spaces and tabs. The angle identifiers are: D, d Degrees M, m Minutes C, c seConds The direction identifiers may be used before or after any one of the angle specifiers and are: N, n North S, s South E, e East W, w West Direction identifiers are optional. Without them, or a negative angle specifier (see below), Latitudes are North and Longitudes are East. An alternative method for specifying direction identifiers is to use a negative sign (-) with ONE and only one of the degrees, minutes or seconds parts. It is usually placed on the degree component but it could instead be on the minutes or seconds. Negative sign can only be found ONCE and cannot be used in conjunction with the direction identifiers! Any legal combination of degrees, minutes and seconds can be used, including fractions for any or all parts. They can be used in ANY order but usually are ordered degrees, minutes and seconds. Examples: N 39d 23.7m 33.9c # a North latitude 39d23.7m33.9C # the same thing 39.404415D # the same thing (approx.) n39.395d 33.9c # the same thing (approx.) -42.5d # South latitude or West longitude N39d1m41.1c # author's latitude W104d40m8.4c # author's longitude W40m8.4c104d # author's longitude