how to check bluetooth version on my laptop

I bought new laptop Lenovo Z50-70 and have installed Ubuntu 14.04. I want to check whether the Bluetooth shipped is v4 or v3?

I know I should check it from main website or from BIOS, but I am curious to find it from command line. Any help please


That info can be found with hciconfig -a:

hci0:   Type: BR/EDR  Bus: USB
    BD Address: 5C:93:A2:A3:59:56  ACL MTU: 1022:8  SCO MTU: 183:5
    UP RUNNING PSCAN ISCAN 
    RX bytes:1146297 acl:195 sco:10904 events:84051 errors:0
    TX bytes:72067880 acl:83905 sco:10762 commands:83 errors:0
    Features: 0xff 0xfe 0x0d 0xfe 0xd8 0x7f 0x7b 0x8f
    Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3 
    Link policy: RSWITCH HOLD SNIFF 
    Link mode: SLAVE ACCEPT 
    Name: 'ubuntu-0'
    Class: 0x6c0100
    Service Classes: Rendering, Capturing, Audio, Telephony
    Device Class: Computer, Uncategorized
    HCI Version:  (0x7)  Revision: 0x3101
    LMP Version:  (0x7)  Subversion: 0x1
    Manufacturer: Atheros Communications, Inc. (69)

The HCI Version (0x7) indicates version 4.1

The mapping of HCI version to the bluetooth specification versions are:

| HCI version | Bluetooth version |
|-------------|-------------------|
| 0 (0x0)     | 1.0b              |
| 1 (0x1)     | 1.1               |
| 2 (0x2)     | 1.2               |
| 3 (0x3)     | 2.0               |
| 4 (0x4)     | 2.1               |
| 5 (0x5)     | 3.0               |
| 6 (0x6)     | 4.0               |
| 7 (0x7)     | 4.1               |
| 8 (0x8)     | 4.2               |
| 9 (0x9)     | 5.0               |
| 10 (0xa)    | 5.1               |
| 11 (0xb)    | 5.2               |
| 12 (0xc)    | 5.3               |

While not part of the original question, someone reading this may also wonder how to get the bluetooth version of a bluetooth peripheral (I know I did):

  1. Pair the peripheral
  2. Get its MAC address: bluetoothctl devices
  3. Get its details: hcitool info <mac address>

Note that the ouput of the last command doesn't provide the HCI version, but the LMP version. Many other answers on the web to the original question points to the LMP version, not the HCI version. It can be decoded using the same equivalence table. In the answer above, both have the same value. I searched for an explanation of the difference between both, but didn't find it.