Bluetooth is a technology with a very interesting history. When it first came around in the late 1990s, it promised to replace the mess of wires that was tucked behind every desk of the day. Unfortunately, the capabilities of early Bluetooth didn’t live up to the hype, and it never quite took off. It wasn’t until the rise of the smartphone more than a decade later that Bluetooth, now several versions more advanced, really started to make sense.
As [Larry Bank] explains in a recent blog post, that means there’s a whole lot to learn if you want to really understand Bluetooth hacking. For example, the Bluetooth versions that were used in the 1990s and 2000s are actually a completely different protocol from that which most modern devices are using. But the original protocol, now referred to as “Classic”, is still supported and in use.
That means to really get your head wrapped around working with Bluetooth, you need to learn about the different versions and all the tools and tricks associated with them. To that end, [Larry] does a great job of breaking down the primary versions of Bluetooth and the sort of tools you might find yourself using. That includes microcontrollers such as the ESP32 or Arduino Nano 33 BLE.
But the post isn’t just theory. [Larry] also goes over a few real-world projects of his that utilize Bluetooth, such as getting a portable printer working with his Arduino, or figuring out how to use those tiny mobile phone game controllers for his own purposes. Even if you don’t have these same devices, there’s a good chance that the methods used and lessons learned will apply to whatever Bluetooth gadgets you’ve got your eye on.
Readers may recall [Larry] from our previous coverage of his exploits, such as his efforts to increase the frame rate of the SSD1306 OLED display or his wireless bootloader for the SMART Response XE. Whenever we see his name pop up in the Tip Line, we know a fascinating hardware deep dive isn’t far behind.
Funny how one of the oldest consumer com standards MIDI has a bluetooth standard only recently and there is not a lot of bandwidth in MIDI. Perhaps the need for low latency was the hurdle. Also only with 5.0 is it now fit to listen to audio through. Talking on the phone seems to be useless unless the 5.0 has fixed that too, with a boom mic of course not a babble-fish widget.
Talking on the phone is still useless, because nearly every bluetooth device switches into “phone mode” when the mic is in use. This turns the audio quality down to somewhere between “1880’s gramophone” and “FM broadcast you’re two notches away from”, in order to maintain compatibility with your 1992 brick that boasts a whopping 16 number auto-recall memory.
The bandwidth is there, the latency is solved, there are audio codecs that deliver better-than-CD quality streams that modern devices are compatible with… but nobody seems to want to use them for phone calls.
High quality bi directional audio streams are difficult to engineer, mainly due to low bandwidth, and indeterminate packet timings. Have a look at the Sony SOCOM headset which supports bidirectional a2dp, this was only possible as Sony control both ends of the link… I used to work for CSR.
I agree latency is an issue, but Bluetooth is very susceptible to interence. I honestly don’t know anyone who does pro audio that thinks listening to audio over bt is acceptable, but MIDI would be out of the question. Especially if you have many MIDI devices and chains, which would get messy very fast. For entry level basic consumer stuff though, it makes sense
Bluetooth now does sound alright. Its still like CD audio not lossless being digital which could bother some but for just listening I’d doubt even the most fussy listener would notice anything with a good Bluetooth audio amplifier, and anything but deliberate jamming levels of interference shouldn’t bother the sound at all over normal distances. It would be codec mismatches and the latency in compression etc that make Bluetooth awkward in pro audio more so than the actual sound quality it can deliver.
Personally I still hate Bluetooth (well anything wireless) for most things, but having that cordless decent sounding set of headphones that does work through walls is convenient and sounds fine – noise cancelling as well for me so can listen to my computer while using that evil thing called a vacuum cleaner in relative comfort….
Wonder how much of missed potential is due to crappy BT stacks? BT is one of those things I spend more time fighting to get working than getting actual work done.
I remember fighting with every MS windows BT stack until 2 or 3 years ago when it suddenly got much better behaved. Before that I much preferred the one that came with some Jabra hardware I got. Oddly, MS seemed to have it right through much of the life of windows CE and mobile on those platforms. I don’t know how much to complain about android’s BT abilities, since issues for me seemed more closely related to cheapness and nastiness of a couple of low dollar chinese efforts, and due to cellular provider versions of a couple of phones having some oddities, possibly due to a screwed up implementation designed to disable hotspot and bluetooth modem features (or even any data transfer features on older feature phones to boost their ringtone sales etc) unless you forked out a larger wad of cash for their unlimited plans/models.
Win 10 bluetooth on my tablet is horrible. Some of the erratic behavior could be hardware related, but it is hell easier on ios or android for the same devices. I have paired devices unpaired mysteriously for no reasons. Sometimes if I get the timing wrong, my mouse is connected but windows ignores it.
The pairing is also inconsistent as sometimes win10 ask for entering a long ID from device (mice really? how?) and sometimes the device ask for user to enter one.