At present NMEA filtering works like this:
You can define the NMEA sentences to pass. Multiple filters have to be separated by comma.
For records starting with a $ the next 2 characters will be ignored (the talker id). A filter for all $XXRMC records will look like: $RMC
For AIS only (no other NMEA data): ! or !AIVDM
All RMC and RMB records: $RMC,$RMB
If you want to invert the filter, prefix the expression with ^. ^$RMB,^$APB
To provide enhanced flexibility for filtering - without breaking existing definitions - I suggest to extend the syntax:
$XX - selects all messages of a given talker ID xx (irrespective of message type), eg $GB
$YYY - selects all messages of a given yyy (irrespective of talker ID), eg $GGA (as implemented at present)
$XXYYY - selects a specific NMEA message with talker ID xx and type yyy eg $GBGGA
Inverting by ^ as well as AIS handling remain unchanged.
At present NMEA filtering works like this:
You can define the NMEA sentences to pass. Multiple filters have to be separated by comma.
For records starting with a $ the next 2 characters will be ignored (the talker id). A filter for all $XXRMC records will look like: $RMC
For AIS only (no other NMEA data): ! or !AIVDM
All RMC and RMB records: $RMC,$RMB
If you want to invert the filter, prefix the expression with ^. ^$RMB,^$APB
To provide enhanced flexibility for filtering - without breaking existing definitions - I suggest to extend the syntax:
$XX - selects all messages of a given talker ID xx (irrespective of message type), eg $GB
$YYY - selects all messages of a given yyy (irrespective of talker ID), eg $GGA (as implemented at present)
$XXYYY - selects a specific NMEA message with talker ID xx and type yyy eg $GBGGA
Inverting by ^ as well as AIS handling remain unchanged.