On 2014-03-10 06:21, Anderson Lizardo wrote:
Hi Terry,
On Sat, Mar 8, 2014 at 3:19 AM, Terry Hardie <terryh@xxxxxxxxx> wrote:
The problem is when running a lescan (hcitool lescan) with a LE device
in
paring mode, which is transmitting a lot of LE Advertising report
packets,
the HCI drivers eventually loses sync. I've traced it down to a
duplicate
USB fragment.
I think your logs show missing USB packets (not duplicated)... More
details below.
Interesting that it always loses 2 packets, and never 1, that's why I
assumed duplication...
In summary, it is expected that for devices that don't change address,
the only byte to change is the RSSI (last byte of the last fragment).
That's why the 2 first fragments are usually the same for all
advertising packets.
You asked in another email if I tried a powered hub. Yes, I tried a
powered hub. I get the same results.
Also, although it's not common, I also see these lost frames outside of
a scan. A scan is just the easiest way to reproduce it. If I leave a tag
broadcasting once per second, 2 receivers on the same USB bus, after an
hour or so, the same problem happens (and this is only 1 broadcast per
second from the PROX tag, received by 2 receivers simultaneously,
resulting in each receiver sending 3 USB transfers to the host - 6 USB
transfer total), so this is not just limited to high packet rates. I
think there's some problem with USB bus contention, especially since
both receivers try to send data to the host at EXACTLY the same time.
Terry
--
To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html