bluetoothctl-mgmt(1)

Name
bluetoothctl-mgmt - Management Submenu

SYNOPSIS

bluetoothctl [--options] [mgmt.commands]

Note: This submenu communicates directly with the kernel via the Bluetooth Management socket (mgmt), bypassing the BlueZ D-Bus API. Commands use the Bluetooth Management API defined in the kernel documentation.

Mgmt Commands

  select

Select a different index

Usage
    > select <index>

<index>
    Controller index number (0-based) to select

Example Select controller index 0 (hci0)
    > select 0

Example Select controller index 1 (hci1)
    > select 1

Example Select controller index 2 (hci2)
    > select 2

  revision

Get the MGMT Revision

Usage
    > revision

Example Display MGMT API revision information
    > revision

  commands

List supported commands

Usage
    > commands

Example List all supported management commands
    > commands

  config

Show configuration info

Usage
    > config

Example Show current controller configuration
    > config

  info

Show controller info

Usage
    > info

Example Show detailed controller information
    > info

  extinfo

Show extended controller info

Usage
    > extinfo

Example Show extended controller information
    > extinfo

  auto-power

Power all available features

Usage
    > auto-power

Example Automatically power on all available controller features
    > auto-power

  power

Toggle powered state

Usage
    > power <on/off>

<on/off>
    Power state - "on" to enable controller, "off" to disable

Example Power on the controller
    > power on

Example Power off the controller
    > power off

  discov

Toggle discoverable state

Usage
    > discov <yes/no/limited> [timeout]

<yes/no/limited>
    Discoverable mode - "yes" for general, "no" to disable, "limited" for limited discoverable

[timeout]
    Optional timeout in seconds for discoverable mode duration

Example Make controller discoverable indefinitely
    > discov yes

Example Make controller non-discoverable
    > discov no

Example Enable limited discoverable mode
    > discov limited

Example Make discoverable for 30 seconds
    > discov yes 30

Example Make discoverable for 2 minutes
    > discov yes 120

Example Make discoverable for 5 minutes
    > discov yes 300

Example Limited discoverable for 60 seconds
    > discov limited 60

  connectable

Toggle connectable state

Usage
    > connectable <on/off>

<on/off>
    Connectable state - "on" to allow connections, "off" to reject

Example Make controller connectable
    > connectable on

Example Make controller non-connectable
    > connectable off

  fast-conn

Toggle fast connectable state

Usage
    > fast-conn <on/off>

<on/off>
    Fast connectable state - "on" to enable fast connection mode, "off" to disable

Example Enable fast connectable mode
    > fast-conn on

Example Disable fast connectable mode
    > fast-conn off

  bondable

Toggle bondable state

Usage
    > bondable <on/off>

<on/off>
    Bondable state - "on" to enable bonding capability, "off" to disable

Example Enable bonding capability
    > bondable on

Example Disable bonding capability
    > bondable off

  pairable

Toggle bondable state

Usage
    > pairable <on/off>

<on/off>
    Pairable state - "on" to enable pairing capability, "off" to disable

Example Enable pairing capability
    > pairable on

Example Disable pairing capability
    > pairable off

  linksec

Toggle link level security

Usage
    > linksec <on/off>

<on/off>
    Link level security - "on" to enable, "off" to disable

Example Enable link level security
    > linksec on

Example Disable link level security
    > linksec off

  ssp

Toggle SSP mode

Usage
    > ssp <on/off>

<on/off>
    Secure Simple Pairing mode - "on" to enable SSP, "off" to disable

Example Enable Secure Simple Pairing
    > ssp on

Example Disable Secure Simple Pairing
    > ssp off

  sc

Toggle SC support

Usage
    > sc <on/off/only>

<on/off/only>
    Secure Connections support - "on" to enable, "off" to disable, "only" for exclusive use

Example Enable Secure Connections support
    > sc on

Example Disable Secure Connections support
    > sc off

Example Use Secure Connections exclusively
    > sc only

  hs

Toggle HS support

Usage
    > hs <on/off>

<on/off>
    High Speed support - "on" to enable 802.11 High Speed, "off" to disable

Example Enable High Speed support
    > hs on

Example Disable High Speed support
    > hs off

  le

Toggle LE support

Usage
    > le <on/off>

<on/off>
    Low Energy support - "on" to enable LE functionality, "off" to disable

Example Enable Low Energy support
    > le on

Example Disable Low Energy support
    > le off

  advertising

Toggle LE advertising

Usage
    > advertising <on/off>

<on/off>
    LE advertising state - "on" to enable advertising, "off" to disable

Example Enable LE advertising
    > advertising on

Example Disable LE advertising
    > advertising off

  bredr

Toggle BR/EDR support

Usage
    > bredr <on/off>

<on/off>
    BR/EDR support - "on" to enable Classic Bluetooth, "off" to disable

Example Enable BR/EDR (Classic Bluetooth) support
    > bredr on

Example Disable BR/EDR support
    > bredr off

  privacy

Toggle privacy support

Usage
    > privacy <on/off> [irk]

<on/off>
    Privacy support - "on" to enable privacy features, "off" to disable

[irk]
    Optional 32-character hexadecimal Identity Resolving Key

Example Enable privacy with auto-generated IRK
    > privacy on

Example Disable privacy
    > privacy off

Example Enable privacy with specific IRK
    > privacy on 0123456789abcdef0123456789abcdef

Example Enable privacy with different IRK
    > privacy on 1234567890abcdef1234567890abcdef

  class

Set device major/minor class

Usage
    > class <major> <minor>

<major>
    Major device class code (hexadecimal)

<minor>
    Minor device class code (hexadecimal)

Example Set class to Audio/Video - Wearable Headset
    > class 0x04 0x01

Example Set class to Audio/Video - Hands-free
    > class 0x04 0x02

Example Set class to Audio/Video - Headphones
    > class 0x04 0x06

Example Set class to Audio/Video - VCR
    > class 0x04 0x0B

Example Set class to Computer - Desktop workstation
    > class 0x01 0x01

Example Set class to Computer - Server
    > class 0x01 0x02

Example Set class to Computer - Laptop
    > class 0x01 0x03

Example Set class to Computer - Handheld PC/PDA
    > class 0x01 0x04

Example Set class to Phone - Cellular
    > class 0x02 0x01

Example Set class to Phone - Cordless
    > class 0x02 0x02

Example Set class to Phone - Smart phone
    > class 0x02 0x03

  disconnect

Disconnect device

Usage
    > disconnect [-t type] <remote address>

[-t type]
    Optional address type (public, random, le_public, le_random)

<remote address>
    Bluetooth address of device to disconnect

Example Disconnect device using public address
    > disconnect 00:11:22:33:44:55

Example Disconnect another device
    > disconnect AA:BB:CC:DD:EE:FF

Example Disconnect device with public address type
    > disconnect -t public 00:11:22:33:44:55

Example Disconnect device with random address type
    > disconnect -t random AA:BB:CC:DD:EE:FF

Example Disconnect LE device with public address
    > disconnect -t le_public 11:22:33:44:55:66

Example Disconnect LE device with random address
    > disconnect -t le_random CC:DD:EE:FF:00:11

  con

List connections

Usage
    > con

Example List all active connections
    > con

  find

Discover nearby devices

Usage
    > find [-l|-b] [-L]

[-l|-b]
    Discovery type - "-l" for LE only, "-b" for BR/EDR only (default: both)

[-L]
    Limited discovery mode flag

Example Discover both LE and BR/EDR devices
    > find

Example Discover LE devices only
    > find -l

Example Discover BR/EDR devices only
    > find -b

Example Discover devices in limited mode
    > find -L

Example Discover LE devices in limited mode
    > find -l -L

Example Discover BR/EDR devices in limited mode
    > find -b -L

  find-service

Discover nearby service

Usage
    > find-service [-u UUID] [-r RSSI_Threshold] [-l|-b]

[-u UUID]
    Service UUID to search for (16-bit, 32-bit, or 128-bit)

[-r RSSI_Threshold]
    Minimum RSSI value in dBm for device filtering

[-l|-b]
    Discovery type - "-l" for LE only, "-b" for BR/EDR only

Example Find devices with Generic Access service
    > find-service -u 0x1800

Example Find devices with Battery Service
    > find-service -u 0x180F

Example Find devices with custom service
    > find-service -u 12345678-1234-5678-9abc-123456789abc

Example Find devices with RSSI ≥ -60 dBm
    > find-service -r -60

Example Find devices with RSSI ≥ -80 dBm
    > find-service -r -80

Example Find Battery Service devices with RSSI ≥ -70 dBm
    > find-service -u 0x180F -r -70

Example Find Generic Access on LE devices with strong signal
    > find-service -u 0x1800 -r -50 -l

Example Find Serial Port Profile on BR/EDR devices
    > find-service -u 0x1101 -b

Example Find Battery Service on LE devices
    > find-service -u 0x180F -l

  stop-find

Stop discovery

Usage
    > stop-find [-l|-b]

[-l|-b]
    Discovery type to stop - "-l" for LE only, "-b" for BR/EDR only (default: all)

Example Stop all discovery
    > stop-find

Example Stop LE discovery only
    > stop-find -l

Example Stop BR/EDR discovery only
    > stop-find -b

  name

Set local name

Usage
    > name <name> [shortname]

<name>
    Complete local name for the controller

[shortname]
    Optional shortened local name

Example Set complete local name
    > name "My Bluetooth Device"

Example Set name without spaces
    > name MyComputer

Example Set name with hyphens
    > name "Home-Office-PC"

Example Set both complete and shortened names
    > name "My Long Device Name" MyDevice

Example Set descriptive and short names
    > name "Professional Workstation" ProWork

Example Set audio device names
    > name "Bluetooth Audio Headset" BT-Audio

  pair

Pair with a remote device

Usage
    > pair [-c cap] [-t type] <remote address>

[-c cap]
    IO capability (DisplayOnly, DisplayYesNo, KeyboardOnly, NoInputNoOutput, KeyboardDisplay)

[-t type]
    Address type (public, random, le_public, le_random)

<remote address>
    Bluetooth address of device to pair with

Example Pair with device using default settings
    > pair 00:11:22:33:44:55

Example Pair with another device
    > pair AA:BB:CC:DD:EE:FF

Example Pair with display-only IO capability
    > pair -c DisplayOnly 00:11:22:33:44:55

Example Pair with display and yes/no capability
    > pair -c DisplayYesNo AA:BB:CC:DD:EE:FF

Example Pair with keyboard-only capability
    > pair -c KeyboardOnly 11:22:33:44:55:66

Example Pair with no I/O capability
    > pair -c NoInputNoOutput CC:DD:EE:FF:00:11

Example Pair with keyboard and display capability
    > pair -c KeyboardDisplay 22:33:44:55:66:77

Example Pair with public address device
    > pair -t public 00:11:22:33:44:55

Example Pair with random address device
    > pair -t random AA:BB:CC:DD:EE:FF

Example Pair with LE public address device
    > pair -t le_public 11:22:33:44:55:66

Example Pair with LE random address device
    > pair -t le_random CC:DD:EE:FF:00:11

Example Pair LE device with keyboard/display capability
    > pair -c KeyboardDisplay -t le_public 00:11:22:33:44:55

Example Pair random address device with display/yes-no capability
    > pair -c DisplayYesNo -t random AA:BB:CC:DD:EE:FF

  cancelpair

Cancel pairing

Usage
    > cancelpair [-t type] <remote address>

[-t type]
    Address type (public, random, le_public, le_random)

<remote address>
    Bluetooth address of device to cancel pairing with

Example Cancel ongoing pairing with device
    > cancelpair 00:11:22:33:44:55

Example Cancel pairing with another device
    > cancelpair AA:BB:CC:DD:EE:FF

Example Cancel pairing with public address device
    > cancelpair -t public 00:11:22:33:44:55

Example Cancel pairing with LE random address device
    > cancelpair -t le_random AA:BB:CC:DD:EE:FF

  unpair

Unpair device

Usage
    > unpair [-t type] <remote address>

[-t type]
    Address type (public, random, le_public, le_random)

<remote address>
    Bluetooth address of device to unpair

Example Remove pairing with device
    > unpair 00:11:22:33:44:55

Example Remove pairing with another device
    > unpair AA:BB:CC:DD:EE:FF

Example Unpair public address device
    > unpair -t public 00:11:22:33:44:55

Example Unpair LE public address device
    > unpair -t le_public 11:22:33:44:55:66

Example Unpair LE random address device
    > unpair -t le_random CC:DD:EE:FF:00:11

  keys

Load Link Keys

Usage
    > keys

Example Load stored link keys
    > keys

  ltks

Load Long Term Keys

Usage
    > ltks

Example Load stored LE long term keys
    > ltks

  irks

Load Identity Resolving Keys

Usage
    > irks [--local index] [--file file path]

[--local index]
    Local controller index to use

[--file file path]
    Custom IRK configuration file path

Example Load IRKs with default local index and file
    > irks

Example Load IRKs for controller index 0
    > irks --local 0

Example Load IRKs for controller index 1
    > irks --local 1

Example Load IRKs from custom configuration file
    > irks --file /etc/bluetooth/irks.conf

Example Load IRKs from user file
    > irks --file /home/user/bluetooth_irks.txt

Example Load IRKs for hci0 from specific file
    > irks --local 0 --file /etc/bluetooth/hci0_irks.conf

  block

Block Device

Usage
    > block [-t type] <remote address>

[-t type]
    Address type (public, random, le_public, le_random)

<remote address>
    Bluetooth address of device to block

Example Block device using default address type
    > block 00:11:22:33:44:55

Example Block another device
    > block AA:BB:CC:DD:EE:FF

Example Block device with public address
    > block -t public 00:11:22:33:44:55

Example Block device with random address
    > block -t random AA:BB:CC:DD:EE:FF

Example Block LE device with public address
    > block -t le_public 11:22:33:44:55:66

Example Block LE device with random address
    > block -t le_random CC:DD:EE:FF:00:11

  unblock

Unblock Device

Usage
    > unblock [-t type] <remote address>

[-t type]
    Address type (public, random, le_public, le_random)

<remote address>
    Bluetooth address of device to unblock

Example Unblock device using default address type
    > unblock 00:11:22:33:44:55

Example Unblock another device
    > unblock AA:BB:CC:DD:EE:FF

Example Unblock device with public address
    > unblock -t public 00:11:22:33:44:55

Example Unblock device with random address
    > unblock -t random AA:BB:CC:DD:EE:FF

Example Unblock LE device with public address
    > unblock -t le_public 11:22:33:44:55:66

Example Unblock LE device with random address
    > unblock -t le_random CC:DD:EE:FF:00:11

  add-uuid

Add UUID

Usage
    > add-uuid <UUID> <service class hint>

<UUID>
    Service UUID (16-bit, 32-bit, or 128-bit format)

<service class hint>
    Service class hint bitmask (hexadecimal)

Example Add Serial Port Profile with object transfer hint
    > add-uuid 0x1101 0x100000

Example Add A2DP with audio hint
    > add-uuid 0x110E 0x200000

Example Add HFP with audio hint
    > add-uuid 0x111E 0x200000

Example Add custom service UUID with no hint
    > add-uuid 12345678-1234-5678-9abc-123456789abc 0x000000

Example Add custom UUID with object transfer hint
    > add-uuid ABCD1234-ABCD-1234-ABCD-123456789ABC 0x100000

Example Add Generic Access with no specific hint
    > add-uuid 0x1800 0x000000

Example Add Battery Service with no hint
    > add-uuid 0x180F 0x000000

  rm-uuid

Remove UUID

Usage
    > rm-uuid <UUID>

<UUID>
    Service UUID to remove (16-bit, 32-bit, or 128-bit format)

Example Remove Serial Port Profile UUID
    > rm-uuid 0x1101

Example Remove A2DP UUID
    > rm-uuid 0x110E

Example Remove custom service UUID
    > rm-uuid 12345678-1234-5678-9abc-123456789abc

  clr-uuids

Clear UUIDs

Usage
    > clr-uuids

Example Clear all registered UUIDs
    > clr-uuids

  local-oob

Local OOB data

Usage
    > local-oob

Example Generate and display local OOB authentication data
    > local-oob

  remote-oob

Remote OOB data

Usage
    > remote-oob [-t <addr_type>] [-r <rand192>] [-h <hash192>] [-R <rand256>] [-H <hash256>] <addr>

[-t <addr_type>]
    Address type (public, random, le_public, le_random)

[-r <rand192>]
    P-192 random value (32 hexadecimal characters)

[-h <hash192>]
    P-192 hash value (32 hexadecimal characters)

[-R <rand256>]
    P-256 random value (64 hexadecimal characters)

[-H <hash256>]
    P-256 hash value (64 hexadecimal characters)

<addr>
    Remote device Bluetooth address

Example Set remote OOB data for device (minimal)
    > remote-oob 00:11:22:33:44:55

Example Set P-192 random and hash values
    > remote-oob -r 0123456789abcdef0123456789abcdef -h fedcba9876543210fedcba9876543210 00:11:22:33:44:55

Example Set P-256 random and hash values
    > remote-oob -R 0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef -H fedcba9876543210fedcba9876543210fedcba9876543210fedcba9876543210 AA:BB:CC:DD:EE:FF

Example Set OOB data for LE public address device
    > remote-oob -t le_public 11:22:33:44:55:66

Example Set OOB data for LE random address device
    > remote-oob -t le_random CC:DD:EE:FF:00:11

Example Set complete OOB data with both P-192 and P-256 values
    > remote-oob -t public -r 0123456789abcdef0123456789abcdef -h fedcba9876543210fedcba9876543210 -R 0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef -H fedcba9876543210fedcba9876543210fedcba9876543210fedcba9876543210 00:11:22:33:44:55

  did

Set Device ID

Usage
    > did <source>:<vendor>:<product>:<version>

<source>:<vendor>:<product>:<version>
    Device ID in format source:vendor:product:version (all hexadecimal)

Example Set USB source with Linux Foundation vendor ID
    > did 0x0002:0x1D6B:0x0001:0x0100

Example Set USB device with Cypress vendor ID
    > did 0x0002:0x04B4:0x1234:0x0200

Example Set Bluetooth SIG source with Broadcom vendor
    > did 0x0001:0x000F:0x0001:0x0100

Example Set Bluetooth SIG source with Apple vendor
    > did 0x0001:0x004C:0x0001:0x0100

Example Set custom USB device ID
    > did 0x0002:0xFFFF:0x1234:0x5678

Example Set Qualcomm Bluetooth device
    > did 0x0001:0x05F1:0xABCD:0x0001

  static-addr

Set static address

Usage
    > static-addr <address>

<address>
    Static random Bluetooth address (must have bits 47-46 set to 11)

Example Set static random address (bit 47=1, bit 46=1)
    > static-addr C0:00:00:00:00:01

Example Set another static random address
    > static-addr D0:11:22:33:44:55

Example Set different static address
    > static-addr E0:AA:BB:CC:DD:EE

  public-addr

Set public address

Usage
    > public-addr <address>

<address>
    Public Bluetooth address to set for the controller

Example Set public Bluetooth address
    > public-addr 00:11:22:33:44:55

Example Set different public address
    > public-addr AA:BB:CC:DD:EE:FF

Example Set custom public address
    > public-addr 12:34:56:78:9A:BC

  ext-config

External configuration

Usage
    > ext-config <on/off>

<on/off>
    External configuration - "on" to enable external config, "off" to disable

Example Enable external configuration
    > ext-config on

Example Disable external configuration
    > ext-config off

  debug-keys

Toggle debug keys

Usage
    > debug-keys <on/off>

<on/off>
    Debug keys support - "on" to enable debug keys, "off" to disable

Example Enable debug key support
    > debug-keys on

Example Disable debug key support
    > debug-keys off

  conn-info

Get connection information

Usage
    > conn-info [-t type] <remote address>

[-t type]
    Address type (public, random, le_public, le_random)

<remote address>
    Bluetooth address of connected device

Example Get connection information for device
    > conn-info 00:11:22:33:44:55

Example Get info for another device
    > conn-info AA:BB:CC:DD:EE:FF

Example Get info for public address device
    > conn-info -t public 00:11:22:33:44:55

Example Get info for LE public address device
    > conn-info -t le_public 11:22:33:44:55:66

Example Get info for LE random address device
    > conn-info -t le_random CC:DD:EE:FF:00:11

  io-cap

Set IO Capability

Usage
    > io-cap <cap>

<cap>
    IO capability (DisplayOnly, DisplayYesNo, KeyboardOnly, NoInputNoOutput, KeyboardDisplay)

Example Set IO capability to display only
    > io-cap DisplayOnly

Example Set IO capability to display with yes/no
    > io-cap DisplayYesNo

Example Set IO capability to keyboard only
    > io-cap KeyboardOnly

Example Set IO capability to no input/output
    > io-cap NoInputNoOutput

Example Set IO capability to keyboard and display
    > io-cap KeyboardDisplay

  scan-params

Set Scan Parameters

Usage
    > scan-params <interval> <window>

<interval>
    Scan interval in hexadecimal (0x0004 to 0x4000, units of 0.625ms)

<window>
    Scan window in hexadecimal (0x0004 to 0x4000, units of 0.625ms)

Example Set fast scan (16ms interval, 16ms window)
    > scan-params 0x0010 0x0010

Example Set moderate fast scan (32ms interval, 32ms window)
    > scan-params 0x0020 0x0020

Example Set balanced scan (96ms interval, 48ms window)
    > scan-params 0x0060 0x0030

Example Set slow scan (256ms interval, 80ms window)
    > scan-params 0x0100 0x0050

Example Set background scan (2.56s interval, 18ms window)
    > scan-params 0x0800 0x0012

Example Set very slow background scan
    > scan-params 0x1000 0x0020

  get-clock

Get Clock Information

Usage
    > get-clock [address]

[address]
    Optional remote device Bluetooth address (omit for local clock)

Example Get local Bluetooth clock information
    > get-clock

Example Get clock information for remote device
    > get-clock 00:11:22:33:44:55

Example Get clock for another remote device
    > get-clock AA:BB:CC:DD:EE:FF

  add-device

Add Device

Usage
    > add-device [-a action] [-t type] <address>

[-a action]
    Device action (auto, allow, deny) - "auto" for auto-connect, "allow" for allow-only, "deny" to block

[-t type]
    Address type (public, random, le_public, le_random)

<address>
    Bluetooth address of device to add

Example Add device with auto-connect action and default type
    > add-device 00:11:22:33:44:55

Example Add another device with defaults
    > add-device AA:BB:CC:DD:EE:FF

Example Add device with auto-connect action
    > add-device -a auto 00:11:22:33:44:55

Example Add device with allow-only action (no auto-connect)
    > add-device -a allow 11:22:33:44:55:66

Example Add device with deny action (blocked)
    > add-device -a deny CC:DD:EE:FF:00:11

Example Add device with public address type
    > add-device -t public 00:11:22:33:44:55

Example Add device with random address type
    > add-device -t random AA:BB:CC:DD:EE:FF

Example Add LE device with public address
    > add-device -t le_public 11:22:33:44:55:66

Example Add LE device with random address
    > add-device -t le_random CC:DD:EE:FF:00:11

Example Add LE public device with auto-connect
    > add-device -a auto -t le_public 00:11:22:33:44:55

Example Add random address device with allow action
    > add-device -a allow -t random AA:BB:CC:DD:EE:FF

Example Add LE random device with deny action
    > add-device -a deny -t le_random CC:DD:EE:FF:00:11

  del-device

Remove Device

Usage
    > del-device [-t type] <address>

[-t type]
    Address type (public, random, le_public, le_random)

<address>
    Bluetooth address of device to remove

Example Remove device using default address type
    > del-device 00:11:22:33:44:55

Example Remove another device
    > del-device AA:BB:CC:DD:EE:FF

Example Remove device with public address type
    > del-device -t public 00:11:22:33:44:55

Example Remove device with random address type
    > del-device -t random AA:BB:CC:DD:EE:FF

Example Remove LE device with public address
    > del-device -t le_public 11:22:33:44:55:66

Example Remove LE device with random address
    > del-device -t le_random CC:DD:EE:FF:00:11

  clr-devices

Clear Devices

Usage
    > clr-devices

Example Clear all devices from the device list
    > clr-devices

  bredr-oob

Local OOB data (BR/EDR)

Usage
    > bredr-oob

Example Generate and display local BR/EDR OOB authentication data
    > bredr-oob

  le-oob

Local OOB data (LE)

Usage
    > le-oob

Example Generate and display local LE OOB authentication data
    > le-oob

  advinfo

Show advertising features

Usage
    > advinfo

Example Display advertising capabilities and supported features
    > advinfo

  advsize

Show advertising size info

Usage
    > advsize [options] <instance_id>

[options]
    Advertising options flags

<instance_id>
    Advertising instance identifier (0-based)

Example Show advertising data size information for instance 0
    > advsize 0

Example Show size information for advertising instance 1
    > advsize 1

Example Show size information for advertising instance 5
    > advsize 5

  add-adv

Add advertising instance

Usage
    > add-adv [options] <instance_id>

[options]
    Advertising options (-c connectable, -s scannable, -g general discoverable, -l limited discoverable, -m managed flags, -p TX power)

<instance_id>
    Advertising instance identifier (0-based)

Example Add advertising instance 0 with default settings
    > add-adv 0

Example Add advertising instance 1
    > add-adv 1

Example Add advertising instance 5
    > add-adv 5

Example Add connectable advertising instance 0
    > add-adv -c 0

Example Add scannable advertising instance 1
    > add-adv -s 1

Example Add general discoverable advertising instance 2
    > add-adv -g 2

Example Add limited discoverable advertising instance 3
    > add-adv -l 3

Example Add managed flags advertising instance 4
    > add-adv -m 4

Example Add TX power advertising instance 5
    > add-adv -p 5

Example Add connectable and scannable advertising instance
    > add-adv -c -s 0

Example Add general discoverable with TX power
    > add-adv -g -p 1

Example Add connectable, general discoverable, and scannable
    > add-adv -c -g -s 2

  rm-adv

Remove advertising instance

Usage
    > rm-adv <instance_id>

<instance_id>
    Advertising instance identifier (0-based) to remove

Example Remove advertising instance 0
    > rm-adv 0

Example Remove advertising instance 1
    > rm-adv 1

Example Remove advertising instance 5
    > rm-adv 5

  clr-adv

Clear advertising instances

Usage
    > clr-adv

Example Clear all advertising instances
    > clr-adv

  add-ext-adv-params

Add extended advertising params

Usage
    > add-ext-adv-params [options] <instance_id>

[options]
    Extended advertising options (-c connectable, -s scannable, -d directed, -h high duty cycle, -l legacy PDU, -a anonymous, -i include TX power)

<instance_id>
    Extended advertising instance identifier (0-based)

Example Add extended advertising parameters for instance 0
    > add-ext-adv-params 0

Example Add extended advertising parameters for instance 1
    > add-ext-adv-params 1

Example Add connectable extended advertising for instance 0
    > add-ext-adv-params -c 0

Example Add scannable extended advertising for instance 1
    > add-ext-adv-params -s 1

Example Add directed extended advertising for instance 2
    > add-ext-adv-params -d 2

Example Add high duty cycle extended advertising for instance 3
    > add-ext-adv-params -h 3

Example Add legacy PDU extended advertising for instance 4
    > add-ext-adv-params -l 4

Example Add anonymous extended advertising for instance 5
    > add-ext-adv-params -a 5

Example Add include TX power extended advertising for instance 6
    > add-ext-adv-params -i 6

Example Add connectable and scannable extended advertising
    > add-ext-adv-params -c -s 0

Example Add connectable extended advertising with TX power
    > add-ext-adv-params -c -i 1

Example Add scannable legacy PDU extended advertising
    > add-ext-adv-params -s -l 2

  add-ext-adv-data

Add extended advertising data

Usage
    > add-ext-adv-data [options] <instance_id>

[options]
    Data options (-s for scan response data, -c for complete data)

<instance_id>
    Extended advertising instance identifier (0-based)

Example Add advertising data to extended instance 0
    > add-ext-adv-data 0

Example Add advertising data to extended instance 1
    > add-ext-adv-data 1

Example Add scan response data to extended instance 0
    > add-ext-adv-data -s 0

Example Add scan response data to extended instance 1
    > add-ext-adv-data -s 1

Example Add complete advertising data to instance 0
    > add-ext-adv-data -c 0

Example Add complete scan response data to instance 1
    > add-ext-adv-data -c -s 1

  appearance

Set appearance

Usage
    > appearance <appearance>

<appearance>
    Appearance value (16-bit integer) representing device type

Example Set appearance to Unknown
    > appearance 0

Example Set appearance to Generic Phone
    > appearance 64

Example Set appearance to Generic Computer
    > appearance 128

Example Set appearance to Generic Audio/Video device
    > appearance 832

Example Set appearance to Speaker
    > appearance 833

Example Set appearance to Microphone
    > appearance 834

Example Set appearance to Headset
    > appearance 835

Example Set appearance to Headphones
    > appearance 836

Example Set appearance to Generic HID
    > appearance 960

Example Set appearance to Keyboard
    > appearance 961

Example Set appearance to Mouse
    > appearance 962

Example Set appearance to Joystick
    > appearance 963

Example Set appearance to Generic Health Sensor
    > appearance 1344

Example Set appearance to Heart Rate Sensor
    > appearance 1345

Example Set appearance to Blood Pressure Monitor
    > appearance 1346

Example Set appearance to Generic Sports and Fitness
    > appearance 1472

Example Set appearance to Location Display
    > appearance 1473

Example Set appearance to Location Navigation Display
    > appearance 1474

  phy

Get/Set PHY Configuration

Usage
    > phy [LE1MTX] [LE1MRX] [LE2MTX] [LE2MRX] [LECODEDTX] [LECODEDRX] [BR1M1SLOT] [BR1M3SLOT] [BR1M5SLOT][EDR2M1SLOT] [EDR2M3SLOT] [EDR2M5SLOT][EDR3M1SLOT] [EDR3M3SLOT] [EDR3M5SLOT]

[PHY flags]
    PHY configuration flags to enable (LE1MTX, LE1MRX, LE2MTX, LE2MRX, LECODEDTX, LECODEDRX, BR1M1SLOT, etc.)

Example Display current PHY configuration
    > phy

Example Enable LE 1M TX PHY
    > phy LE1MTX

Example Enable LE 1M RX PHY
    > phy LE1MRX

Example Enable LE 2M TX PHY
    > phy LE2MTX

Example Enable LE 2M RX PHY
    > phy LE2MRX

Example Enable LE Coded TX PHY
    > phy LECODEDTX

Example Enable LE Coded RX PHY
    > phy LECODEDRX

Example Enable BR 1M 1-slot packets
    > phy BR1M1SLOT

Example Enable BR 1M 3-slot packets
    > phy BR1M3SLOT

Example Enable BR 1M 5-slot packets
    > phy BR1M5SLOT

Example Enable EDR 2M 1-slot packets
    > phy EDR2M1SLOT

Example Enable EDR 2M 3-slot packets
    > phy EDR2M3SLOT

Example Enable EDR 2M 5-slot packets
    > phy EDR2M5SLOT

Example Enable EDR 3M 1-slot packets
    > phy EDR3M1SLOT

Example Enable EDR 3M 3-slot packets
    > phy EDR3M3SLOT

Example Enable EDR 3M 5-slot packets
    > phy EDR3M5SLOT

Example Enable LE 1M TX and RX PHYs
    > phy LE1MTX LE1MRX

Example Enable LE 1M and 2M TX/RX PHYs
    > phy LE1MTX LE1MRX LE2MTX LE2MRX

Example Enable 1-slot packets for all BR/EDR PHYs
    > phy BR1M1SLOT EDR2M1SLOT EDR3M1SLOT

  wbs

Toggle Wideband-Speech support

Usage
    > wbs <on/off>

<on/off>
    Wideband Speech support - "on" to enable for audio profiles, "off" to disable

Example Enable Wideband Speech support for audio profiles
    > wbs on

Example Disable Wideband Speech support
    > wbs off

  secinfo

Show security information

Usage
    > secinfo

Example Display security features and capabilities
    > secinfo

  expinfo

Show experimental features

Usage
    > expinfo

Example Display available experimental features and their status
    > expinfo

  exp-debug

Set debug feature

Usage
    > exp-debug <on/off>

<on/off>
    Experimental debug features - "on" to enable, "off" to disable

Example Enable experimental debug features
    > exp-debug on

Example Disable experimental debug features
    > exp-debug off

  exp-privacy

Set LL privacy feature

Usage
    > exp-privacy <on/off>

<on/off>
    Experimental Link Layer privacy - "on" to enable LL privacy features, "off" to disable

Example Enable experimental Link Layer privacy features
    > exp-privacy on

Example Disable experimental Link Layer privacy features
    > exp-privacy off

  exp-quality

Set bluetooth quality report feature

Usage
    > exp-quality <on/off>

<on/off>
    Experimental quality reporting - "on" to enable Bluetooth quality reports, "off" to disable

Example Enable experimental Bluetooth quality reporting
    > exp-quality on

Example Disable experimental Bluetooth quality reporting
    > exp-quality off

  exp-offload

Toggle codec support

Usage
    > exp-offload <on/off>

<on/off>
    Experimental codec offload - "on" to enable codec offload support, "off" to disable

Example Enable experimental codec offload support
    > exp-offload on

Example Disable experimental codec offload support
    > exp-offload off

  exp-iso

Toggle ISO Socket support

Usage
    > exp-iso <on/off>

<on/off>
    Experimental ISO Socket support - "on" to enable ISO Socket support, "off" to disable

Example Enable experimental ISO Socket support
    > exp-offload on

Example Disable experimental ISO Socket support
    > exp-offload off

  read-sysconfig

Read System Configuration

Usage
    > read-sysconfig

Example Read current system configuration parameters
    > read-sysconfig

  set-sysconfig

Set System Configuration

Usage
    > set-sysconfig <-v|-h> [options...]

<-v|-h>
    Verbose output or help flag

[options...]
    System configuration options (--br-page-scan-type, --br-page-scan-interval, etc.)

Example Show help for system configuration options
    > set-sysconfig -h

Example Set system configuration with verbose output
    > set-sysconfig -v

Example Set BR/EDR page scan type with verbose output
    > set-sysconfig -v --br-page-scan-type=0

Example Set BR/EDR page scan interval
    > set-sysconfig -v --br-page-scan-interval=0x800

Example Set BR/EDR page scan window
    > set-sysconfig -v --br-page-scan-window=0x12

Example Set BR/EDR inquiry scan type
    > set-sysconfig -v --br-inquiry-scan-type=0

Example Set BR/EDR link supervision timeout
    > set-sysconfig -v --br-link-supervision-timeout=0x2000

Example Set LE minimum connection interval
    > set-sysconfig -v --le-min-connection-interval=0x18

Example Set LE maximum connection interval
    > set-sysconfig -v --le-max-connection-interval=0x28

Example Set multiple BR/EDR scan parameters
    > set-sysconfig -v --br-page-scan-type=0 --br-page-scan-interval=0x800 --br-page-scan-window=0x12

Example Set multiple LE connection parameters
    > set-sysconfig -v --le-min-connection-interval=0x18 --le-max-connection-interval=0x28 --le-connection-latency=0

  get-flags

Get device flags

Usage
    > get-flags [-t type] <address>

[-t type]
    Address type (public, random, le_public, le_random)

<address>
    Bluetooth address of device to query flags for

Example Get device flags for device using default type
    > get-flags 00:11:22:33:44:55

Example Get flags for another device
    > get-flags AA:BB:CC:DD:EE:FF

Example Get flags for public address device
    > get-flags -t public 00:11:22:33:44:55

Example Get flags for random address device
    > get-flags -t random AA:BB:CC:DD:EE:FF

Example Get flags for LE public address device
    > get-flags -t le_public 11:22:33:44:55:66

Example Get flags for LE random address device
    > get-flags -t le_random CC:DD:EE:FF:00:11

  set-flags

Set device flags

Usage
    > set-flags [-f flags] [-t type] <address>

[-f flags]
    Device flags bitmask in hexadecimal (0x01=remote wake, 0x02=privacy)

[-t type]
    Address type (public, random, le_public, le_random)

<address>
    Bluetooth address of device to set flags for

Example Set default flags for device
    > set-flags 00:11:22:33:44:55

Example Set default flags for another device
    > set-flags AA:BB:CC:DD:EE:FF

Example Set remote wake flag for device
    > set-flags -f 0x01 00:11:22:33:44:55

Example Set device privacy flag
    > set-flags -f 0x02 AA:BB:CC:DD:EE:FF

Example Set both remote wake and privacy flags
    > set-flags -f 0x03 11:22:33:44:55:66

Example Set remote wake for public address device
    > set-flags -f 0x01 -t public 00:11:22:33:44:55

Example Set privacy flag for LE public device
    > set-flags -f 0x02 -t le_public 11:22:33:44:55:66

Example Set multiple flags for LE random device
    > set-flags -f 0x03 -t le_random CC:DD:EE:FF:00:11

Example Clear all flags for device
    > set-flags -f 0x00 00:11:22:33:44:55

Example Clear all flags for LE public device
    > set-flags -f 0x00 -t le_public 11:22:33:44:55:66

RESOURCES

<http://www.bluez.org>

REPORTING BUGS

<linux-bluetooth@vger.kernel.org>

Copyright
Free use of this software is granted under the terms of the GNU Lesser General Public Licenses (LGPL).