105 lines
4.0 KiB
Plaintext
105 lines
4.0 KiB
Plaintext
btsak -- Bluetooth Swiss Army Knife
|
|
|
|
Commands:
|
|
|
|
Command: help
|
|
Description: Should overall command help
|
|
Usage: bt <ifname> help
|
|
|
|
Command: info
|
|
Description: Show Bluetooth driver information
|
|
Usage: bt <ifname> info [-h]
|
|
|
|
Command: features
|
|
Description: Show Bluetooth driver information
|
|
Usage: bt <ifname> features [-h] [le]
|
|
Where: le - Selects LE features vs BR/EDR features
|
|
|
|
Command: scan
|
|
Description: Bluetooth scan commands
|
|
Usage: bt <ifname> scan [-h] <start [-d]|get|stop>
|
|
Where: start - Starts scanning. The -d option enables duplicate
|
|
filtering.
|
|
get - Shows new accumulated scan results
|
|
stop - Stops scanning
|
|
|
|
Command: advertise
|
|
Description: Bluetooth advertise commands
|
|
Usage: bt <ifname> advertise [-h] <start|stop>
|
|
Where: start - Starts advertising
|
|
stop - Stops advertising
|
|
|
|
Command: security
|
|
Description: Enable security (encryption) for a connection:
|
|
If device is paired, key encryption will be enabled. If
|
|
the link is already encrypted with sufficiently strong
|
|
key this command does nothing.
|
|
|
|
If the device is not paired pairing will be initiated. If
|
|
the device is paired and keys are too weak but input output
|
|
capabilities allow for strong enough keys pairing will be
|
|
initiated.
|
|
|
|
This command may return error if required level of security
|
|
is not possible to achieve due to local or remote device
|
|
limitation (eg input output capabilities).
|
|
Usage: bt <ifname> security [-h] <addr> public|private <level>
|
|
Where: <addr> - The 6-byte address of the connected peer
|
|
<level> - Security level, on of:
|
|
|
|
low - No encryption and no authentication
|
|
medium - Encryption and no authentication (no MITM)
|
|
high - Encryption and authentication (MITM)
|
|
fips - Authenticated LE secure connections and encryption
|
|
|
|
Command: gatt
|
|
Description: Generic Attribute (GATT) commands
|
|
Usage: bt <ifname> gatt [-h] <cmd> [option [option [option...]]]
|
|
Where: See "GATT Commands" below
|
|
|
|
GATT Commands
|
|
|
|
Command: exchange-mtu
|
|
Description: Set MTU to out maximum and negotiate MTU with peer
|
|
Usage: bt <ifname> gatt exchange-mtu [-h] <addr> public|private
|
|
|
|
Command: mget
|
|
Description: Get the pass/fail result of the last GATT 'exchange-mtu' command
|
|
Usage: bt <ifname> gatt mget [-h]
|
|
|
|
Command: discover
|
|
Description: Initiate discovery
|
|
Usage: bt <ifname> gatt discover [-h] <addr> public|private <uuid16> [<start> [<end>]]
|
|
|
|
Command: characteristic
|
|
Description: Initiate characteristics discovery
|
|
Usage: bt <ifname> gatt characteristic [-h] <addr> public|private [<start> [<end>]]
|
|
|
|
Command: descriptor
|
|
Description: Initiate characteristics discovery
|
|
Usage: bt <ifname> gatt descriptor [-h] <addr> public|private [<start> [<end>]]
|
|
|
|
Command: dget
|
|
Description: Get the result of the last discovery action
|
|
Usage: bt <ifname> gatt dget [-h]
|
|
|
|
Command: read
|
|
Description: Initiate a GATT read operation.
|
|
Usage: bt <ifname> gatt read [-h] <addr> public|private <handle> [<offset>]
|
|
|
|
Command: read-multiple
|
|
Description: Initiate a GATT read-multiple operation.
|
|
Usage: bt <ifname> gatt read-multiple [-h] <addr> public|private <handle> [<handle> [<handle>]..]
|
|
|
|
Command: rget
|
|
Description: Get the data resulting from the last read operation
|
|
Usage: bt <ifname> gatt rget [-h]
|
|
|
|
Command: write
|
|
Description: Initiate a GATT write operation.
|
|
Usage: bt <ifname> gatt write [-h] <addr> public|private <handle> <byte> [<byte> [<byte>]..]
|
|
|
|
Command: wget
|
|
Description: Get the pass/fail result of the last GATT 'write' command
|
|
Usage: bt <ifname> gatt wget [-h]
|