Specifications

Antenna Type
Internal
Chipset (Wireless)
Infineon (Cypress) CYW20704 A2
Dimension (Height - mm)
11 mm
Dimension (Length - mm)
43 mm
Dimension (Width - mm)
16 mm
Frequency Range (Max)
2480 MHz
Frequency Range (Min)
2402 MHz
Logical Interfaces
GPIO, GCI, I2S, PCM, USB
OS/Software
HCI, Linux, Windows, Android
Product Type
USB Adapter
System Architecture
Hosted
Technology
Bluetooth 5.0, Dual Mode (Classic + BLE)
Type
USB Pluggable

Documentation

Name Part Type Last Updated
Datasheet - BT85x Series BT851 Datasheet 11/13/2023
Product Brief - BT850 Series BT851 Product Brief 10/11/2021

Buy Now

Distributor Part In Stock Region Buy
Mouser BT851 333 North America Buy Now
DigiKey BT851 126 North America Buy Now
Farnell BT851 32 EMEA Buy Now
Arrow Electronics BT851 0 North America Buy Now
Future Electronics BT851 0 North America Buy Now


FAQ

The BlueZ BLE Stack now offers LE Audio Support. Can the BT850 or BT860 Support LE Audio with BlueZ?

LE Audio introduces the concept of Isochronous channels. The higher layers of the protocol are responsible for controlling the timing of the isochronous channels. For example, if using a pair of earbuds there would be two isochronous channels (Isochronous Group) used to transport left and right audio. These two channels must have a tight timing between them to minimize delay of audio heard between the left and right earbud.

Isochronous channels are part of the Bluetooth controller and are used for the transport of audio data. The BT850 and BT860 Bluetooth controllers do not provide isochronous channels support. Therefore, even though the BlueZ host stack now adds LE Audio support it cannot be used with the BT850 or BT860 Bluetooth controllers.

What factors influence the actual TX rate of the controller?

The actual TX rate is influenced by the PDU and MTU sizes along with the Connection Intervals and Slave Latency.

Why are multiple EMPTY_PDU are being sent from the Master per connection interval?

The communications protocol for Bluetooth is a ping pong type style, so every connection event begins with the Master sending the slave a packet and the Slave then responds to that packet with any data it may have. Therefore, when the Master has no data to transmit it will send an EMPTY_PDU to the Server and the Server, if it has data to send, will send back the data in response. You can see this readily where there is no data transmissions, the Master and Slave ping pong EMPTY_PDU’s back and forth on every connection event, if Slave Latency was incorporated then during these periods of no data transmissions you would see Master send EMPTY_PDU and no response from Slave because it has no data to send and was allowed to skip the connection event because of it.
 

What is the maximum number of BLE connections that can be achieved with the BT85x or BT860?

The Cypress CYW20704 A2 chipset, which the BT85x and the BT860 is based on, theoretically supports up to 127 Bluetooth LE connections. However, because the BT860 is an HCI module it is dependent on the Bluetooth stack running on the host therefore, the number of connections will depend on what the host CPU and memory capacity can support.

Additionally, as the number of connections increases, the throughput per each connection will decrease and the processing and memory requirements will increase, which can lead to increased latency. So while 127 is the theoretical limit the actual limit in practical use case would be less than that.

The BT850, BT851 and BT860 are listed as Bluetooth 5 modules. What Bluetooth 5 features do they support?

The BT850, BT851 and BT860 are Bluetooth 5 qualified modules. However, these modules do not support any Bluetooth 5 features.
Per the Bluetooth SIG FAQ, "there are no mandatory features that must be claimed to use the Bluetooth 5.0 specification. However, manufacturers are required to implement all interoperability improvements and errata applied to Bluetooth 5 in order to comply with the specification".

How can I connect a Bluetooth Low Energy Device to a PC?

Bluetooth Low Energy uses Services as opposed to the set of standardized profiles that exists for Classic Bluetooth. While some Bluetooth Low Energy services have been standardized by the Bluetooth SIG, the development of custom services is allowed to meet custom application requirements.
 
Because Bluetooth Low Energy uses a completely different protocol than Classic Bluetooth and supports custom services, Bluetooth Low Energy devices cannot connect to a computer through the typical Bluetooth configuration of a computer. Therefore, connecting to a PC requires writing and running a Bluetooth Low Energy Central Role/Client application to collect the data sent from the Bluetooth Low Energy peripheral modules. Application development for PCs and Mobile devices is outside the scope of our support. Alternatively, a BL654 USB dongle could be used as a BLE Central Role device, to collect the BLE data and pass it to the PC over a COM Port. However, you would still need an application to view and process the data received over that COM Port.
 
We generally recommend customers who are new to Bluetooth Low Energy obtain a copy of Getting Started with Bluetooth Low Energy to help them understand the Bluetooth Low Energy protocol and the GATT table. There are also many resources available online which explain this. 

When Bluetooth Low Energy was first introduced and we launched our BL6xx product line (predecessors to the BL65x series) we produced the BL600 and BL620 smartBASIC Application Walkthrough document, which provides an overview of how Bluetooth Low Energy works and how a GATT table is constructed. 

Can I use a BT850/860 in the place of an existing BT800/830?

Yes, the following modules share the same pin layout:

BT800 --> BT850
BT830 --> BT860

There are some No Connect (NC) pins on the BT850/860

Does the BT851 have the Bluetooth stack on board?

The BT851 is an HCI device and does not have the Bluetooth stack on board, and as such it relies on the host's stack. The BT851 should be recognized by the operating system as a Generic Bluetooth Adapter, not as a COM port.