Transcript
Bluetooth Low Energy Testing Overview
Now that we’ve finished checking the wifi aspect of the Bolt, we’re moving on to Bluetooth. The Bolt implements Bluetooth low energy, and this is primarily so that it can be connected with PMIView or our iOS app and also pull data from the Atom.
So we have the Bolt under test, we have an Atom to give it something to talk to through Bluetooth, we have our spectrum analyzer watching what’s happening from an analog standpoint, and we have a Bluetooth protocol analyzer instead of the wifi analyzer to look at the packets and look at things at a higher level. We have the Atom in a mode that sends data more often to make the test a little bit faster, so there’s a lot of traffic for us to look at.
Spectrum Analyzer and Frequency Hopping
Here, we are looking at the spectrum analyzer display, and these spikes are Bluetooth transmissions. Bluetooth works a little bit differently than wifi. BLE uses frequency hopping. Every packet between the Atom and the Bolt is at a different channel.
There are roughly 40 channels in this span, this 100 megahertz span, in the Bluetooth band, and it’ll pick a different channel each time. And so as the transmission happens, you’ll see each channel being used, and gradually, it’ll fill in this band. You can see that it’s adhering to the band edge. It is now going outside of the allowed span for BLE. And as we transmit more data, it will fill in these holes.
Signal Level Analysis
Now let’s take a look at the signal level here, as received by the Bolt. We’re in the -45 to -50 or so DBM level, and that’ll vary as we move the Atom a little bit closer or farther away, and that’s a good signal for that distance. Of course, as we move it further away, that signal level will drop, but we’ll still have good communications.
Packet Layer Analysis
Now we can look at the packet layer of BLE. We’ll start the Bluetooth scanner, and this will sense the Atom. The Atom, in this situation, is the one that’s actually broadcasting, so it will be the device that’s picked up here in the scanner.
Now the scanner has discovered the Atom. It’s the device in this pair that’s broadcasting. We will start analyzing packets, and now we see with the Wireshark plugin, the packets transferring back and forth between the Atom and the Bolt.
Taking a look at the packets, the back and forth between the Atom and the Bolt looks very clean. The Atom is broadcasting. The Bolt is receiving and sending data back. Everything looks good. And if we go back to the display on the Bolt, we have no packet errors in either direction. We’ve sent many thousands of packets at this point, and every one’s been clean back and forth. So the Bluetooth interface on the Bolt looks very good.
PMIView Bluetooth Connection Test
Next, we’re going to test the Bluetooth connection between PMIView, our iOS app, and the Bolt. We’ve removed the Atom from the picture, and now we are going to use PMIView and scan for the Bolt. PMIView on the iPhone will use Bluetooth to detect the Bolt, and the scan will pick up any PMI devices here.
In this clean room, we only have a single Bolt, and we can see this traffic here on the spectrum analyzer, and the signal level is actually very good, as you’d expect from the Bolt and from the phone itself.
We’ll use the protocol analyzer to take a look at this sort of interaction between the two. Now we have the protocol analyzer running, analyzing the back and forth through Bluetooth between PMIView and the Bolt itself. If we take a look at the packets, we can see that they’re well-formed, no errors, power level is good. We have the analog power level and signal strength in the packet itself, and the connection between PMIView and the Bolt is solid through BLE.
Bluetooth Classic 2.0 Testing
All right, for the next test, we are switching from BLE, Bluetooth Low Energy, to Bluetooth Classic 2.0. In most use cases for the Bolt, we’re using BLE, but we also want to make sure the Bluetooth 2.0 interface is functioning correctly.
For this test, we’ve connected the Bolt to this laptop through an RFCOMM connection, which allows us to send streaming data through the connection, unlike BLE which is a more packet-oriented connection. So we’re streaming data from the Bolt to the laptop, and we’re checking the spectrum analyzer to make sure that we are adhering to the band limits, and again, you can see with the max turned on, we are. Signal levels look good.
From a Wireshark and packet-capturing standpoint, we are still advertising BLE packets, so it’s doing both of these in parallel. But the BLE analyzer is not picking up the Bluetooth Classic 2.0 packets. That’s being done separately. So again with our spectrum analyzer display and the data throughput we’re getting through RFCOMM, the Bolt’s Bluetooth Classic interface is also working correctly.