BLE Tag Filtering
A collection of Advanced System Parameters
Table of Contents
Digital Matter devices filter out the tags you require from background Bluetooth® noise, but sometimes this isn't enough - especially when dealing with iBeacon and Eddystone tags. It can be easy for the scanner to log tags from other companies, using more data than necessary. The iBeacon UUID and Eddystone Namespace IDs are designed to solve this problem, allowing companies to have their own unique IDs associated with their tags. For a more general filter, the MAC address can be used as a filter as well.
iBeacon Filtering
Every iBeacon has a UUID, a major value and a minor value. The UUID is meant to be unique to a company, and the major and minor values are meant to be used to differentiate between a company's own tags. Some iBeacons come with the UUID, major and minor already unique, however some manufacturers configure their iBeacons to have identical UUID, major and minor values, and it is up to the user to configure them via an app or some other method. Either way, it is useful to configure the iBeacons to have a UUID that is unique to your company and set a unique major and minor for each of your tags.
You can filter iBeacons by adding the following parameter tab:
- Filter by iBeacon UUIDs - If this is set to Y
es
, only iBeacons which have a matching UUID to one of the three UUID filters below will be logged by the device.
- Use MAC addresses as tag identifiers - If your devices do not have unique UUIDs, major values and minor values, then the MAC address can be used to differentiate between tags. However, typically it is advised for your devices to have identical UUIDs and unique major and minor values.
- 4. 5. UUID Filters 1, 2 and 3 - The device will only log iBeacons with UUIDs that match one of these filters. The UUID must be exactly 32 characters long or it will be rejected.
Eddystone Filtering
Eddystone tags have namespace and instance IDs. The namespace ID is meant to be unique to a company, and the instance ID is meant to be used to differentiate between a company's own tags. Some Eddystone tags come with the namespace and instance IDs already unique, however some manufacturer's configure their Eddystone tags to have identical namepsace and instance IDs, and it is up to the user to configure them via an app. Either way, it is useful to configure the Eddystone tags to have a namespace that is unique to your company, and set a unique instance ID for each of your tags.
You can filter Eddystone tags by adding the following parameter tab:
- Filter by Eddystone Namespace - If this is set to yes, only Eddystone tags which have a matching namespace to one of three namespace filters below will be logged by the device.
- Log Telemetry Frames - If set to yes, then telemetry data from Eddystone tags will be logged. Please note that not all tags send this data, and that telemetry frames cannot be filtered by namespace.
- Use MAC addresses as tag identifiers - If your devices do not have unique namespace and instance IDs, then the MAC address can be used to differentiate between tags. However, typically it is advised for your devices to have identical namespace IDs and unique instance IDs.
- 5. 6. Namespace Filters 1, 2 and 3 - The device will only log Eddystone tags with namespaces that match one of these filters. The namespaces must be exactly 20 characters long or it will be rejected.
MAC Address Filtering
Every Bluetooth® device has a MAC address and it can be useful to filter devices based on them. It is mainly useful for iBeacons and Eddystone tags when using the MAC addresses as tag identifiers.
To filter by MAC addresses you must first add the following parameter tab:
- Apply to X Tags - If this is set to yes, then that tag type will only be logged if its MAC address matches the filter specified in MAC Filter 1, 2 or 3. “Other Tag” is a reference to the coarse tag type filters chosen on either BLE Periodic or Continuous Tag Scanning
- MAC Filter 1, 2 and 3 - All or part of the MAC address can be used in the filter. The MAC address must be entered with a colon separating each byte of the address (eg FF:FF:FF:FF:FF:FF). Bytes of the MAC address can be ignored by using an asterisk. For example, FF:FF:FF:* will only compare the first three bytes of the MAC address and FF:*:FF:*:FF:* will only compare the 1st, 3rd and 5th bytes of the MAC address.
Next Steps
For more filtering options on BLE tags, consider using the Generic Protocol Tag method.