...
1 octet = 1 byte = 8 bits
Preamble | 1 octet |
Access-Address | 4 octets |
PDU |
|
CRS | 3 octets |
There are different PDU types:
...
Configurable settings are shown below:
Property | Description |
---|---|
antenna (string; Default: internal) | Choose whether to use an internal or an external Bluetooth antenna |
name (string; Default: ) | Descriptive name of Bluetooth chip/interface |
random-static-address (MAC address; Default: ) | A user-configurable address for the Bluetooth chip |
You can monitor chip stats with the command:
...
Configurable settings are shown below:
Property | Description |
---|---|
ad-structures (string; Default: ) | Choose a pre-configured structure for the advertisement packets. For more information see the "AD structures" section. |
channel-map (37 | 38 | 39; Default: 37, 38, 39) | Channels used for advertising. |
disabled (yes | no; Default: yes) | An option to disable or enable the Bluetooth chip to broadcast advertising packets. |
max-interval (integer:20..10240; Default: 2560 ms) | The maximal interval for broadcasting advertising packets. |
min-interval (integer:20..10240; Default: 1280 ms) | The minimal interval for broadcasting advertising packets. |
own-address-type (public | random-static | rpa-fallback-to-public | rpa-fallback-to-random; Default: random-static) | The MAC address that is going to be used in the advertising packet's payload:
|
note: Advertising packets will be broadcasted each min-interval <= X <= max-interval milliseconds.
...
Configurable properties are shown below:
Property | Description |
---|---|
data (string; Default: ) | Define advertising packet's AdvData part of the payload |
name (string; Default: ) | Descriptive name of AD structure |
type (complete-local-name | manufacturer-data | short-local-name | service-data; Default: ) | An option to set AD structure's type:
|
If, for example, the "Shortened Local Name" type is chosen and the "data" field is configured with "TEST" → AdvData part of the payload is going to look like this:
...
Currenetly, only "central
" role is supported. "Pheriperal device
" role, "pairing
" and "encryption
" options are not supported.
Availible sections are:
Section | Description |
---|---|
async-data | used to view subscribed data. |
characteristics | used to view all supported characteristics of the device. |
connect | used to connect to the device that is in the connactable state. |
disconnect | used to disconnect from the device. |
read | used to read characteristics values. |
write | used to write characteristics values. |
subscribe | used to subscribe to a charasteristic value. |
unsubscribe | used to unsubscribe from a charasteristic value. |
In order to connect to a Bluetooth device that is in the connactable
state, use the command (where pdev
is the device address):
...
Configurable properties are shown below:
Property | Description | ||
---|---|---|---|
disabled (yes | no; Default: no) | An option to disable or enable the Bluetooth chip to receive advertising reports. | ||
filter-duplicates (keep-newest | keep-oldest | keep-unique | off; Default: off) | An option to discard duplicate advertisements from the same advertiser:
| ||
filter-policy (default | whitelist | no; Default: default) | An option to set up a filtering policy (controller-level advertisement filtering):
| ||
interval (integer:3..10240; Default: 10 ms) | Time after which scanner will start scanning the next advertisement channel. | ||
own-address-type (public | random-static | rpa-fallback-to-public | rpa-fallback-to-random; Default: random-static) | Address type used in scan requests (if active scanning type is used):
| ||
type (active | passive; Default: passive) | Defines the scanner's type:
| ||
window (integer:3..10240; Default: 10 ms) | The time that the scanner will spend scanning a single advertisement channel. |
For example, if the scanner interval is set to 20ms, it means that only after 20ms, the device will begin scanning the next channel in line. If the scanner window is set to 10ms, it means that the device will scan each channel only during that 10ms window. Meaning, it will scan channel 37 for 10ms (window time) and begin scanning the next channel after 10 more ms (20ms[interval]-10ms[window]). It will take 10ms to scan channel 38, and after 10 more ms, the device will begin scanning channel 39.
...
Possible filters (you can filter the list of advertising reports with the help of the following parameters):
Filter | Description |
---|---|
address | Bluetooth advertisers address |
address-type | Advertisers address type (for example, public or random) |
data | Advertisement data in hex format (AdvData payload) |
device | Bluetooth chip/interface name |
epoch | Milliseconds since Unix Epoch |
filter-comment | Comment of the matching whitelist filter |
length | Advertisement data length |
pdu-type | Advertisement PDU type |
rssi | Signal strength |
time | Time of the advertisement packet reception |
Whitelist
In this tab, it is possible to configure a whitelist that is going to be used in the filter policy in the "Scanners" section. In other words, an option to specify which Bluetooth addresses are going to be scanned (displayed in the "Advertising reports").
...
Code Block | ||
---|---|---|
| ||
/iot bluetooth whitelist print Columns: DEVICE, ADDRESS-TYPE, ADDRESS # DEVICE ADDRESS-TYPE ADDRESS 0 bt1 0any bt1 public 08:55:31:CF:F3:9C*:*:*:*:*:* |
You can add a new whitelist entry with the command:
Code Block | ||
---|---|---|
| ||
/iot bluetooth whitelist add |
Configurable properties:
Property | Description |
---|---|
address (MAC address; Default: ) | Advertiser's address |
address-type (any | public | random; Default:) | Advertiser's address type |
comment (string; Default: ) | Short description of the whitelisted entry |
copy-from | An option to copy an entry - for more information check the console documentation |
device (bt1; Default: ) | Select the Bluetooth interface/chip name |
disabled (yes | no; Default: ) | An option to disable or to enable the entry |
Info |
---|
Only 8 whitelisted entries can be added prior to 7.14beta8 version. Starting with 7.14beta8 version, whitelist is no longer limited to 8 entries and address field supports asterisk wildcards. |
If, for example, you want to whitelist all MAC addresses that begin with "DC:2C:..." octets, add an entry using wildcard asterisk characters:
Code Block | ||
---|---|---|
| ||
/iot bluetooth whitelist add address=DC:2C:*:*:*:* |
Wildcard asterisk can not be used in-between specific octets, like "AA:*:*:BB:*:*
" (it is an invaldi entry).
Valid entries would be:
AA:BB:CC:DD:*:*
AA:BB:CC:DD:EE:*
AA:*:*:*:*:*
Peripheral Devices
This section displays decoded Eddystone TLM, Eddystone UID, iBeacon and MikroTik Bluetooth payloads. If the "Peripheral Devices" captures other beacon types, they will not be decoded.
...