====Bluetooth==== See [[tools:bluetooth]] for Linux Bluetooth services and development. There are two standards in use known as BT classic and BT low energy. Anything other than BLE is considered to be legacy now. ^HCI / LMP^Version^ |0| 1.0b| |1| 1.1| |2| 1.2| |3| 2.0+EDR| |4| 2.1+EDR| |5| 3.0+HS| |6| 4.0| |7| 4.1| |8| 4.2| |9| 5.0| |10| 5.1| |11| 5.2| |12| 5.3| BT 3.0+HS utilises WiFi. BT 4.0 onward is BLE, anything prior is BDR/EDR. ===RPi=== The Raspberry Pi3/4 have built in BT BLE 5.0 but it can be awkward to setup the UART configuration. UART can be /dev/ttyS0 or /dev/ttyAMA0 depending on how you configure it in /boot/config.txt If the device needs to be attached to a specific the UART it can be done like this. btattach -B /dev/ttyAMA0 -P bcm -S 3000000 Alternatively, the kernel can attach with the following entry in /boot/config.txt on both the Pi3 and Pi4 (reboot to take effect). dtparam=krnbt=on __Pi400__ Raspberry Pi 400 Rev 1.0 hci0: Type: Primary Bus: UART BD Address: DC:A6:32:DC:5A:E8 ACL MTU: 1021:8 SCO MTU: 64:1 UP RUNNING RX bytes:6038 acl:0 sco:0 events:400 errors:0 TX bytes:52632 acl:0 sco:0 commands:356 errors:0 Features: 0xbf 0xfe 0xcf 0xfe 0xdb 0xff 0x7b 0x87 Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3 Link policy: RSWITCH SNIFF Link mode: SLAVE ACCEPT Name: 'BlueZ 5.55' Class: 0x000000 Service Classes: Unspecified Device Class: Miscellaneous, HCI Version: 5.0 (0x9) Revision: 0x36 LMP Version: 5.0 (0x9) Subversion: 0x6606 Manufacturer: Broadcom Corporation (15) __Pi3__ Raspberry Pi 3 Model B Plus Rev 1.3 hci0: Type: Primary Bus: UART BD Address: 43:45:C0:00:1F:AC ACL MTU: 1021:8 SCO MTU: 64:1 UP RUNNING RX bytes:4726 acl:0 sco:0 events:398 errors:0 TX bytes:60451 acl:0 sco:0 commands:398 errors:0 Features: 0xbf 0xfe 0xcf 0xfe 0xdb 0xff 0x7b 0x87 Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3 Link policy: RSWITCH SNIFF Link mode: SLAVE ACCEPT Name: 'BlueZ 5.50' Class: 0x000000 Service Classes: Unspecified Device Class: Miscellaneous, HCI Version: 5.0 (0x9) Revision: 0x156 LMP Version: 5.0 (0x9) Subversion: 0x6119 Manufacturer: Cypress Semiconductor Corporation (305) __Pi4__ Raspberry Pi 4 Model B Rev 1.1 hci0: Type: Primary Bus: UART BD Address: DC:A6:32:03:03:0E ACL MTU: 1021:8 SCO MTU: 64:1 UP RUNNING RX bytes:3680 acl:0 sco:0 events:385 errors:0 TX bytes:66436 acl:0 sco:0 commands:385 errors:0 Features: 0xbf 0xfe 0xcf 0xfe 0xdb 0xff 0x7b 0x87 Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3 Link policy: RSWITCH SNIFF Link mode: SLAVE ACCEPT Name: 'BlueZ 5.55' Class: 0x000000 Service Classes: Unspecified Device Class: Miscellaneous, HCI Version: 5.0 (0x9) Revision: 0x17e LMP Version: 5.0 (0x9) Subversion: 0x6119 Manufacturer: Cypress Semiconductor (305) ===USB=== Here is a list of legacy BT USB adapters all of which are either BT 2.0 or 1.2. __BARROT__ CSR clones which are very cheap and found in pound stores. BT 2.0 usb 2-1: new full-speed USB device number 44 using ohci-platform usb 2-1: device descriptor read/all, error -62 usb 2-1: new full-speed USB device number 45 using ohci-platform usb 2-1: New USB device found, idVendor=0a12, idProduct=0001, bcdDevice= 1.34 usb 2-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0 Bluetooth: hci0: CSR: Setting up dongle with HCI ver=3 rev=0c5c; LMP ver=3 subver=0c5c; manufacturer=10 Bluetooth: hci0: CSR: Unbranded CSR clone detected; adding workarounds and force-suspending once... Bluetooth: hci0: CSR: Couldn't suspend the device for our Barrot 8041a02 receive-issue workaround Bluetooth: hci0: HCI Delete Stored Link Key command is advertised, but not supported. Bluetooth: hci0: HCI Read Default Erroneous Data Reporting command is advertised, but not supported. Bluetooth: hci0: HCI Set Event Filter command not supported. hci0: Type: Primary Bus: USB BD Address: 00:15:83:0C:BF:EB ACL MTU: 339:8 SCO MTU: 128:2 UP RUNNING RX bytes:966 acl:0 sco:0 events:41 errors:0 TX bytes:913 acl:0 sco:0 commands:41 errors:0 Features: 0xff 0x3e 0x85 0x30 0x18 0x18 0x00 0x00 Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3 Link policy: RSWITCH HOLD SNIFF Link mode: PERIPHERAL ACCEPT Name: 'Pi6' Class: 0x000104 Service Classes: Unspecified Device Class: Computer, Desktop workstation HCI Version: 2.0 (0x3) Revision: 0xc5c LMP Version: 2.0 (0x3) Subversion: 0xc5c Manufacturer: Cambridge Silicon Radio (10) __Silicon Wave__ A very old USB adapter. BT 1.2 usb 2-1: new full-speed USB device number 46 using ohci-platform usb 2-1: New USB device found, idVendor=0c10, idProduct=0000, bcdDevice=20.05 usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3 usb 2-1: Product: Bluetooth Device usb 2-1: Manufacturer: Bluetooth Device usb 2-1: SerialNumber: D9BF16940A00 Bluetooth: hci0: HCI Read Local Supported Commands not supported Bluetooth: MGMT ver 1.22 hci0: Type: Primary Bus: USB BD Address: 00:0A:94:16:BF:D9 ACL MTU: 120:20 SCO MTU: 50:0 UP RUNNING RX bytes:399 acl:0 sco:0 events:17 errors:0 TX bytes:563 acl:0 sco:0 commands:17 errors:0 Features: 0xff 0xff 0x8d 0x78 0x18 0x18 0x00 0x80 Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3 Link policy: Link mode: PERIPHERAL ACCEPT Name: 'Pi6' Class: 0x000000 Service Classes: Unspecified Device Class: Miscellaneous, HCI Version: 1.2 (0x2) Revision: 0x0 LMP Version: 1.2 (0x2) Subversion: 0x8a9 Manufacturer: Silicon Wave (11) __Broadcom__ BT 2.0 usb 2-1: new full-speed USB device number 47 using ohci-platform usb 2-1: New USB device found, idVendor=050d, idProduct=0012, bcdDevice= 0.00 usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0 usb 2-1: Product: BCM92045DG Non-UHE usb 2-1: Manufacturer: Broadcom Corp Bluetooth: MGMT ver 1.22 hci0: Type: Primary Bus: USB BD Address: 00:0A:3A:6D:86:E1 ACL MTU: 1017:8 SCO MTU: 64:8 UP RUNNING RX bytes:492 acl:0 sco:0 events:21 errors:0 TX bytes:574 acl:0 sco:0 commands:21 errors:0 Features: 0xff 0xff 0x8d 0xfe 0x9b 0xf9 0x00 0x80 Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3 Link policy: RSWITCH HOLD SNIFF PARK Link mode: PERIPHERAL ACCEPT Name: 'Pi6' Class: 0x000000 Service Classes: Unspecified Device Class: Miscellaneous, HCI Version: 2.0 (0x3) Revision: 0x2000 LMP Version: 2.0 (0x3) Subversion: 0x4127 Manufacturer: Broadcom Corporation (15) BT 2.0 usb 2-1: new full-speed USB device number 48 using ohci-platform usb 2-1: New USB device found, idVendor=0a5c, idProduct=2121, bcdDevice= 1.00 usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0 usb 2-1: Product: Bluetooth Dongle V2.0+EDR usb 2-1: Manufacturer: Broadcom Corp Bluetooth: MGMT ver 1.22 hci0: Type: Primary Bus: USB BD Address: 00:19:86:00:01:B6 ACL MTU: 1017:8 SCO MTU: 64:0 UP RUNNING RX bytes:500 acl:0 sco:0 events:22 errors:0 TX bytes:584 acl:0 sco:0 commands:22 errors:0 Features: 0xff 0xff 0x8d 0xfe 0x9b 0xf9 0x00 0x80 Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3 Link policy: RSWITCH HOLD SNIFF PARK Link mode: PERIPHERAL ACCEPT Name: 'Pi6' Class: 0x000000 Service Classes: Unspecified Device Class: Miscellaneous, HCI Version: 2.0 (0x3) Revision: 0x411a LMP Version: 2.0 (0x3) Subversion: 0x430e Manufacturer: Broadcom Corporation (15)