Factors and modes that impact Bluetooth device throughput.
The Bluetooth Low Energy (LE) space is shared by over 50 IC suppliers, each in healthy competition with one another. This healthy competition is one of the main driving forces behind the constant innovation and wide spread of Bluetooth LE technology.
In the spirit of competition, we thought it would be fun to stage a friendly competition between ourselves and one of our competitors, an established Bluetooth LE silicon vendor whom we will call Competitor N for the duration of this blog. Competitor N was not made aware of this competition, but I assure you that we took great pains to ensure it was a fair fight.
If you’ve read some of our previous blogs, you might be familiar with our AIROC CYW20829 Bluetooth LE MCU, featuring excellent range (2300 Meters of Bluetooth Connectivity – Not so Short Range, 5.7 km of Bluetooth Range), robust connection strength (Hot dogs, pizza & Bluetooth testing at your favorite warehouse club), stellar throughput (Coffee → Max Throughput → More Bluetooth Testing), and LE Audio capabilities (A Walk in the Park with Bluetooth LE Audio). This blog will follow up on our throughput blog with a side-by-side throughput comparison between our Competitor N’s flagship Bluetooth LE MCU and our own CYW20829.
Before we dive into the competition, let’s have a quick recap on throughput.
To put it simply, throughput is the flow rate of data through a communication channel. In the case of Bluetooth LE, throughput is typically measured in kilobits per second (kbps). Given perfect optimizations and environmental conditions, a Bluetooth LE device can transmit data at about 790 kbps in the LE 1M modulation and about 1400 kbps in the LE 2M modulation.
The discrepancy between the nominal 1Mbps/2Mbps and the effective (but still more optimistic than practical) 790/1400 kbps comes from various overhead involved in a Bluetooth LE data transfer. The Bluetooth LE radio does transmit at 1Mbps/2Mbps when active. However, several bytes of each Bluetooth LE packet are reserved for prefixing headers and appending checks. Also, there is a mandated 150 µs of inter-frame space between each packet. Finally, each data packet must be responded to with a response packet. Even an “empty” response packet is at least 10 bytes of headers and checks.
To help visualize all this overhead, you can refer to the diagram below:
Fig. 1: Packet timing during a throughput measurement.
All in all, only about 80% (in LE 1M) and 70% (in LE 2M) of the transfer time is spent sending actual application data, also called the ATT Payload. This is the data that is counted in a throughput measurement.
Of course, once placed in a real-world environment with interference, loss, timing issues, and a dozen other factors, even the 790 kbps and 1400 kbps will degrade. In the real world, it is up to the robustness of the Bluetooth LE device to maintain a high-quality connection that maximizes throughput.
This brings us back to CYW20829 and our Competitor N and the competition between the two. For this competition, we needed to ensure that it was truly a hardware-to-hardware comparison and that all else was as equal as possible. To this end, we went through iteration after iteration of testing, each time correcting a mismatched parameter or environmental variable.
For example, for our first throughput blog, we had put our CYW20829 in HCI mode, meaning that we effectively turned off the host layers of our device and interacted only with the controller layers. A week’s worth of digging and tinkering made it quite clear that this was not an easily accessible mode of operation for our Competitor N, and that it would be quite the headache to make it happen. Instead, we moved forward with their published and supported throughput application code, switching CYW20829 also to our own published and supported throughput application (central application, peripheral application). All CYW20829 measurements had to be retaken using the application.
Fig. 2: BLE Stack highlighting HCI mode.
We then found that the default connection intervals differed between our application and that of Competitor N. The connection interval is the time between the start of one connection event and the start of the next. This adjustable parameter can range from 7.5 ms to 4 s (in 1.25 ms steps) and affects throughput in three main ways:
Fig. 3: Connection interval comparison when packets are limited per interval.
Fig. 4: Connection interval comparison when packets are dropped.
Fig. 5: Connection interval comparison with no packet limits and no packet drops.
As you can see, depending on the situation and context, it may be favorable to set the connection interval longer or shorter. For this competition, I decided we’d use our Competitor N’s default connection interval of 400 ms rather than have them use our default connection interval of 28.75 ms.
Had we opted to use our own 28.75 ms connection interval, we would find that our maximum throughput (measured when the boards are closest together) would be lower, as the small gaps at the end of each interval would be more frequent. However, the effects of interference and distance would have a lesser effect on the throughput as a dropped packet would mean, at most, ~28 ms of delay in data transmission. On the other hand, the 400 ms connection interval accentuates the impact of dropped packets. A packet dropped at or near the beginning of this connection interval would halt the transmission for hundreds of milliseconds until the beginning of the next connection event. However, at minimal packet loss, the 400 ms connection interval would yield higher maximum throughput than the 28.75 ms connection interval.
In this sense, the 400 ms connection interval makes for a throughput performance that is highly dependent on the connection quality. Good connection quality would be highlighted due to the higher maximum throughput. Bad connection quality would be emphasized due to the longer delay after a dropped packet. Confident in the connection quality of our CYW20829, we retook all measurements with a 400 ms connection interval.
Having now gone through multiple iterations of testing, we began to realize that the interference levels in our office varied significantly over time, steadily increasing from morning to lunchtime, sharply peaking every time a microwave oven in the break room turned on (apparently, microwaves also operate in the 2.4-2.5 GHz ISM band), then steadily decreasing through the afternoon. This, once again, invalidated all previous measurements, as I had tested the devices separately until then. All measurements were retaken so that both devices could be measured concurrently and sitting side-by-side.
Fig. 6: CYW20829 and Competitor N central devices sitting side-by-side in the cubicle.
Fig. 7: CYW20829 and Competitor N peripheral devices sitting side-by-side on the cart.
Putting it all together, our measurement process went as follows:
Parameter | Value |
Connection Interval | 400 ms |
Payload size | 251 bytes |
Packet Type | Write without response |
Fig. 8: LE 1M heatmap comparison.
Fig. 9: LE 2M heatmap comparison.
Each colored dot corresponds to a colored throughput value in the tables to the right of the heatmaps and the gradient overlay follows the colors of the dots. These colors are a gradient from green to yellow to red, starting at the highest throughput value in a modulation to the lowest in that same modulation. This means that both the CYW20829 LE 1M heatmap and the Competitor N LE 1M heatmap share a single color grading which sets the darkest green to 696.381 kbps (the LE 1M maximum throughput for CYW20829) and the darkest red to 10.339 kbps (the LE 1M lowest throughput for Competitor N). Likewise, both sets of LE 2M measurements also share a single color scale.
Thanks to this color grading scheme, the differences in performance between our CYW20829 and our Competitor N are immediately apparent. Notably, there are wide swathes of black along the left edges of the Competitor N heatmaps. These are zones in which our Competitor N failed to maintain a connection. The throughput there is effectively zero. There is also noticeably more red in our Competitor N’s heatmaps, as most of their throughput values fell into the orange and red color grades.
On the other hand, our CYW20829 shows a wide-reaching green center with little to no red in either modulation. This is due to a variety of features that enhance the connection quality of our CYW20829. For one, our CYW20829 has a maximum output power of 10 dBm compared to our Competitor N’s maximum of 8 dBm. Our CYW20829 also boasts a highly effective proprietary adaptive frequency hopping (AFH) algorithm, which makes it better at avoiding interference in noisy channels. Also relevant is our CYW20829’s receiver sensitivity, which can detect signals as weak as -98 dBm in the LE 1M modulation and -95 dBm in the LE 2M modulation. Our Competitor N, in comparison, has a receiver sensitivity of -95 dBm in the LE 1M modulation and -92 dBm in the LE 2M modulation. For even more relevant features on CYW20829, you can check out our product page.
Device | Maximum output power | Receiver sensitivity (LE 1M) | Receiver sensitivity (LE 2M) |
CYW20829 | 10 dBm | -98 dBm | -95 dBm |
Competitor N | 8 dBm | -95 dBm | -92 dBm |
You might have noticed that we never quite reach the theoretical maximum values of 790 kbps (LE 1M) and 1400 kbps (LE 2M). This is due to the significant amount of interference coming from the competing boards, as both are actively transmitting side-by-side. As such, our CYW20829 interferes with Competitor N’s connection, and Competitor N interferes with our CYW20829’s connection as well. Our Coffee → Max Throughput → More Bluetooth Testing blog gives a better idea of how close we can get to the theoretical maximums.
The dust has settled on this competition (it settled a few weeks ago, but I do more than just write blogs) and we find CYW20829 has emerged victorious. At every single data point, with significant margin, CYW20829 shows superior throughput performance to our Competitor N. It comes as little surprise, as we have proven time and time again how well our CYW20829 can hold a connection given a variety of contexts.
There is still so much more to explore about the capabilities of our CYW20829, and I look forward to greeting you soon with yet another adventure.
Leave a Reply