News for hackers. Stuff that matters.
Re:Ask HN: Why is Bluetooth so unreliable? by Duhck on Wednesday July 12, 2017 @12:08PM (#14753701)
I've spent the better half of 3 years building products on the 2.4ghz spectrum (WiFi and BLE).

Most of the issues in this thread are related to poor hardware design more than a crowded spectrum. While the spectrum is in fact crowded in metropolitan areas, most Bluetooth communication doesn't require much bandwidth and can handle error prone areas with ease.

While the frequency hopping helps a ton on BL (and WiFi for that matter), the issues people outlined are due to:

1) Shitty firmware 2) Shitty hardware

Antenna design is black magic and only a few firms in the US do it well. It took us almost 10 months to fully design and test our antenna assembly(s) with a very capable third party firm.

It took dozens of trips to a test chamber, a dozen computer simulations that take a day to run, and PCB samples that take days to verify. They have to be tuned every time copper or mechanical parts move as well.

It's a real pain and most Bluetooth products use garbage chip antennas and baluns or reference designs for antennas. This increases the sensitivity to failure and provides a generally shitty experience.

Most of your product interactions around bluetooth are budget products connected on one side of the equation (e.g. a $50 bluetooth headset). So despite how capable your Mac or iPhone is, if you have a garbage headset on the other side with poor antenna design, it'll be a disaster of an experience.

Re:Ask HN: Why is Bluetooth so unreliable? by nikofeyn on Wednesday July 12, 2017 @03:04PM (#14755548)
> So despite how capable your Mac or iPhone is

this made me literally lol. my macbook pro is the shittiest bluetooth device i have ever used. just search google for macbook pro bluetooth audio issues, and you will find a slew of forum posts going back years. there's one terminal hack after another suggested just to try and get macbook pros to properly play audio over bluetooth. i don't even bother using my macbook pro these days to play audio through a bluetooth speaker. i just use my iPad or android phone.

Re:Ask HN: Why is Bluetooth so unreliable? by acdha on Wednesday July 12, 2017 @04:53PM (#14756572)
> just search google for macbook pro bluetooth audio issues, and you will find a slew of forum posts going back years

Apple has also shipped hundreds of millions of devices over that same time period, so the number of people with failed hardware is non-trivial. More importantly, it is extremely rare for people to perform root cause analysis on the actual failures which combined with the number of vendors and protocol complexity in the Bluetooth world means that a significant number of times the blame is placed on the wrong component.

The main thing I take from this is that vendors need to think about how they can provide a visible way to learn about peer device errors so e.g. your Mac could tell you that sound quality is horrible because the Bluetooth device doesn't support a high-quality codec or sufficient bitrate, is seeing high levels of retransmits or dropped packets, etc.

Re:Ask HN: Why is Bluetooth so unreliable? by Duhck on Wednesday July 12, 2017 @03:52PM (#14756016)
I think you're assuming that there's an issue with the macbook's implementation instead of the device you're pairing it with.

Like I had mentioned previously, if one side of the paired devices has a garbage antenna setup, it will have poor performance. Things like your soundbar, or a generic bluetooth speaker probably use reference designs for their BT setups and have not tuned them for the enclosure or use case.

Re:Ask HN: Why is Bluetooth so unreliable? by nikofeyn on Thursday July 13, 2017 @12:09AM (#14758619)
not an assumption. given that everything else works together, it's the macbook pro that's the odd man out. my other devices include multiple bluetooth speakers, mice, phones (android and even windows phone), surface pro, iPad, and others. they all work seemlessly with bluetooth, but the macbook pro struggles with most, especially when trying to play audio over bluetooth. like i mentioned, this is a well-documented problem if you do even a basic search.
Re:Ask HN: Why is Bluetooth so unreliable? by oneplane on Wednesday July 12, 2017 @04:12PM (#14756208)
I haven't had any issues with Bluetooth on a Mac so far, ever since the BT 1.2 days. I've used Mac OS X, macOS and Linux on PowerPC and Intel Macs with both built-in Bluetooth hardware and USB bluetooth adapters, and all of them were fine. Doesn't seem to be an issue in either the Apple-implemented bluetooth hardware or software to me...
Re:Ask HN: Why is Bluetooth so unreliable? by kalleboo on Wednesday July 12, 2017 @10:22PM (#14758302)
My MacBook Pro Retina 2012 had really flakey Bluetooth. Speakers, Apple Keyboards/Trackpads you name, they'd randomly drop out and need to be power cycled. My 2017 seems a lot more reliable though (knock on wood)
Re:Ask HN: Why is Bluetooth so unreliable? by Tepix on Wednesday July 12, 2017 @04:52PM (#14756565)
Apple to this day doesn't support aptX. It's plain embarassing.
Re:Ask HN: Why is Bluetooth so unreliable? by oneplane on Wednesday July 12, 2017 @08:16PM (#14757798)
Why? It's not like they say they do, but then don't. I've seen far more implementations where the product is listed as supporting a whole bunch of profiles and technologies, but then either doesn't implement it in a useful way or simply never works no matter the device. Most often this is with devices that originally used audio, but then added support for calling, address book, media controls etc. but implement them poorly or downright broken in a fashion that makes the base functionality even less usable than it was before.
Re:Ask HN: Why is Bluetooth so unreliable? by leonroy on Wednesday July 12, 2017 @05:35PM (#14756920)
Not supported on iOS true but is definitely supported on macOS.
Re:Ask HN: Why is Bluetooth so unreliable? by vbezhenar on Wednesday July 12, 2017 @04:27PM (#14756337)
I'm not sure how capable my Mac or iPhone is, because I paired them and sometimes I want to tether internet from iPhone and it's faster to use WiFi hotspot, than to connect them again.
Re:Ask HN: Why is Bluetooth so unreliable? by rconti on Wednesday July 12, 2017 @09:18PM (#14758100)
you can just select your phone from your laptop these days and it auto-pairs and turns on tethering. pretty slick.
Re:Ask HN: Why is Bluetooth so unreliable? by jancsika on Wednesday July 12, 2017 @09:55PM (#14758213)
> 1) Shitty firmware 2) Shitty hardware

What quality is the hardware in something like this:

https://tehnoetic.com/tet-bt4

?

Re:Ask HN: Why is Bluetooth so unreliable? by samstave on Wednesday July 12, 2017 @12:46PM (#14754080)
>2) Shitty hardware Antenna design is black magic and only a few firms in the US do it well. It took us almost 10 months to fully design and test our antenna assembly(s) with a very capable third party firm.

I think that you are remiss if you don't actually name the companies/produucts/devices which are designed well then....

There was a company in Aptos/Santa Cruz who was designing the antennas for a lot of Lockheed stuff back in about 2006/2007 or so who we went to for antenna designs for our active RFID devices - but I cant recall for the life of me the name of the company now...

Re:Ask HN: Why is Bluetooth so unreliable? by Duhck on Wednesday July 12, 2017 @01:14PM (#14754360)
As a rule of thumb, the notable product manufacturers like Apple, Samsung, Nokia, Microsoft, Amazon, etc, have extremely capable RF design teams.

Your run of the mill bluetooth headset, mouse, or keyboard likely does not spend the time on the RF design beyond "does it work".

Re:Ask HN: Why is Bluetooth so unreliable? by mkl on Wednesday July 12, 2017 @06:52PM (#14757371)
Anecdotally, I have a Microsoft Surface Pro 4 and a Microsoft Surface Keyboard (Bluetooth), and it is incredibly unreliable. Pressing a key after a period of inactivity will select an action from:

1. Do absolutely nothing.

2. Completely lock up the computer so it needs a hard reset.

3. Completely lock up the computer for a few seconds, then work.

4. Start working, but ignore ~40% of the key presses.

5. Swallow the first keypress or two, then work.

6. Actually function like a keyboard.

If Microsoft has a good RF team, I'd hate to see what worse teams do.

I wish there was a USB version of this keyboard, or at least a wireless dongle version (like Microsoft's cheaper keyboards).

Re:Ask HN: Why is Bluetooth so unreliable? by kalleboo on Wednesday July 12, 2017 @10:32PM (#14758327)
Those sound like software/firmware problems, not RF problems. I think it's pretty well-known that Microsoft has an absolutely dreadful software team.
Re:Ask HN: Why is Bluetooth so unreliable? by Paul_S on Wednesday July 12, 2017 @02:13PM (#14755008)
"Run of the mill bluetooth headset, mouse, or keyboard" manufactures don't make Bluetooth chips, they buy them. What part of the bt stack do you work on? You're saying nonsensical things, wifi does not do AFH. I didn't know apple made bluetooth chips? You don't even mention Nordic or TI, also not all big bt companies are in America.
Re:Ask HN: Why is Bluetooth so unreliable? by Duhck on Wednesday July 12, 2017 @03:48PM (#14755976)
I never said the chip manufacturers were device manufacturers, perhaps you read that incorrectly?

The companies that deploy a TI, Nordic, Broadcom chipset are subject to the scrutiny I just mentioned. The chipset manufacturers offer reference designs but generally you need a custom matching circuit and a complex RF design to do it correctly. That's where most manufacturers skimp out because its generally "good enough"

As for WiFi, it does not frequency hop but is capable of "auto" selecting a channel on boot (generally).

Re:Ask HN: Why is Bluetooth so unreliable? by Paul_S on Wednesday July 12, 2017 @06:19PM (#14757176)
Yes, I clearly misread that.
Re:Ask HN: Why is Bluetooth so unreliable? by strobot on Wednesday July 12, 2017 @07:15PM (#14757498)
I didn't know apple made bluetooth chips?

W1

https://9to5mac.com/guides/w1/

Re:Ask HN: Why is Bluetooth so unreliable? by jsmthrowaway on Wednesday July 12, 2017 @02:19PM (#14755066)
> You're saying nonsensical things, wifi does not do AFH.

Many, many Wi-Fi implementations are capable of frequency hop, including my own at home.

Re:Ask HN: Why is Bluetooth so unreliable? by Paul_S on Wednesday July 12, 2017 @02:29PM (#14755171)
That is not possible, it's not part of the spec. Maybe what you're thinking of is the wifi hotspot selecting the channel automatically when setting up a network based on the neighbours it can see. Nothing to do with frequency hopping. AFH happens between packets and maps out bad channels. Wifi does not do that, never has and never will because it's governed by different rules.
Re:Ask HN: Why is Bluetooth so unreliable? by oneplane on Wednesday July 12, 2017 @04:09PM (#14756175)
Just because a spec doesn't have it doesn't mean it can't be done. At the same time, implementing something that makes you out-of-spec (like Zero Handoff with a virtual floating BSSID between multiple orchestrated AP's -- totally unsupported and not in the spec) and designing it the right way can sometimes mean that a function you thought could not be there is there anyway.

What he is probably referring to isn't frequency hopping, because what it sounds like and that it actually refers to means different things to different people. For someone who is not a RF engineer, hopping might simply mean "an AP that has multiple radios that uses one to scan the 802.11 2.4Ghz space to see what channels have the least utilization, and then restarts the other radios on a that channel, possibly forcing all clients to lose their connection as if out-of-range and reconnecting again on the new channel as they find it".

This, of course, has nothing to do with RF frequency hopping, but if you don't actually know anything about RF, you won't know what hopping means either, and just imagine that what your router with built in AP is doing must therefore be that 'hopping'.

Re:Ask HN: Why is Bluetooth so unreliable? by jsmthrowaway on Wednesday July 12, 2017 @04:43PM (#14756484)
> For someone who is not a RF engineer, hopping might simply mean "an AP that has multiple radios that uses one to scan the 802.11 2.4Ghz space to see what channels have the least utilization, and then restarts the other radios on a that channel, possibly forcing all clients to lose their connection as if out-of-range and reconnecting again on the new channel as they find it".

Bingo, except add 5 GHz (and soon, 900 MHz), too.

Re:Ask HN: Why is Bluetooth so unreliable? by jsmthrowaway on Wednesday July 12, 2017 @02:32PM (#14755198)
Nope, I’m thinking of when I transparently switch channels when my neighbor comes home and starts blowing up his own network. I’m aware it’s not part of the specification, which I’m sure you’re aware doesn’t mean anything except that it’s not part of the specification.
Re:Ask HN: Why is Bluetooth so unreliable? by Paul_S on Wednesday July 12, 2017 @02:46PM (#14755334)
I don't know what you're thinking of but no, you can't have that because if you had this magical hotspot your network card in your iThing would not know what to do because wifi does not do frequency hopping. Every time your hotspot changes channels it disconnects all your devices.
Re:Ask HN: Why is Bluetooth so unreliable? by lvillani on Wednesday July 12, 2017 @03:57PM (#14756062)
I can't speak for jsmthrowaway but I think that he's referring to Band Steering (please correct me if I'm wrong). It's not in the spec but my Unifi gear definitely has a checkbox to enable it if I opt-in to see "advanced settings".

As far as I know it's not dynamic, though. It just happens when a device connects to a base station and only "steers" the client to connect using one of the 2.4 or 5 GHz bands, and that doesn't interfere with channel selection.

The AP also has a function to scan bands to find the "best" channel to use but that disconnects all devices while the scan is in progress. I think some APs might be doing this automatically (?). My other AP (a Mikrotik) has an "auto" channel selector but I don't know what it does or when.

Re:Ask HN: Why is Bluetooth so unreliable? by rconti on Wednesday July 12, 2017 @09:20PM (#14758110)
Right, and that's band steering, not frequency hopping.
Re:Ask HN: Why is Bluetooth so unreliable? by jsmthrowaway on Wednesday July 12, 2017 @04:21PM (#14756284)
Correct. I’m on Unifi gear with two bands. When it has opportunities to do so, it moves around the SSIDs themselves, too, which seems to happen after every client gets steered to one of them (it’ll reconfigure the other). I might have enabled this feature at some point without realizing it.

My neighbor moves around his channels, too. That’s what’s making me comment that it’s likely more common than we think. I’m not at home to prove this and I’m getting downvoted for sharing, but I’ve watched him move between 36, 40, and 44 at a frequency that suggests it is happening automatically, probably when all of his sessions go idle or something. I have observed this with multiple tools.

My 5 GHz was on 44 this morning, because I happened to look for unrelated reasons. I just SSH’d home and it’s now on 36 without interaction from me. Specifications are not implementations. I’m almost positive this is a common feature which I’ve seen in many APs over the years, even though it’s not per-packet like Bluetooth (which I was also aware of, given that I'm experimenting with a Bluetooth 5 mesh system for IIoT).

Re:Ask HN: Why is Bluetooth so unreliable? by jsmthrowaway on Wednesday July 12, 2017 @03:02PM (#14755517)
You're forgetting devices with two bands, and assuming a lot about my devices (and competence). I know my network and its behavior, and I'm not just spewing hot air here.
Re:Ask HN: Why is Bluetooth so unreliable? by Paul_S on Wednesday July 12, 2017 @03:26PM (#14755762)
You are arguing with me about something that is easy to verify in 10 seconds by looking at the wiki page: https://en.wikipedia.org/wiki/IEEE_802.11

(it does mention a frequency hopping physical layer but that was part of the obsolete predecessor from 1997, the modern spec uses OFDM so unless all your equipment is from the last century you're not using frequency hopping)

Re:Ask HN: Why is Bluetooth so unreliable? by reitanqild on Wednesday July 12, 2017 @04:06PM (#14756152)
I think there is a misunderstanding related to the terms here:

1. IIRC my router is supposed to switch channel (i.e. frequency) automatically unless I explicitly set it to a fixed channel.

I don't know how but my devices figures out and continues working.

2. I think the misunderstanding is related to the word frequency hopping or whatever was used further up in the discussion.

I normally take "frequency hopping" to mean changing frequncy multiple times a minute or even faster while I doubt my wireless access point will switch channels more than a few times in 24 hours.

Disclaimer: I never really sat down and verified if it ever changed.

Also agree with logicalle that I wish for a bit more civility.

Re:Ask HN: Why is Bluetooth so unreliable? by logicallee on Wednesday July 12, 2017 @03:55PM (#14756045)
Paul_S, could you be a bit more civil to jsmthrowaway so as to elicit what he does know and how he knows it?

jsmthrowaway can you give more information about your setup and what the devices do?

No need for a heated argument. This whole thread is quite instructive!

Re:Ask HN: Why is Bluetooth so unreliable? by reitanqild on Wednesday July 12, 2017 @05:17PM (#14756776)
Why was this downvoted?

(No I'm not complaining about being downvoted - this isn't even my comment - just trying to learn.

Re:Ask HN: Why is Bluetooth so unreliable? by drkstr on Thursday July 13, 2017 @12:21AM (#14758668)
Based on my frequent lurking, I would guess it was due to the personal (and off topic) nature of the comment. Addressing users specifically in this way seems to be looked down upon here.
Re:Ask HN: Why is Bluetooth so unreliable? by logicallee on Thursday July 13, 2017 @06:03AM (#14760033)
not really. people aren't allowed to be rude and uncivil with each other here, as it shuts down constructive discussion. this is in the guidelines.