Passive scanning of iBeacons results in a "Data Buffer Overflow"

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello,

I’m trying to scan for Estimote iBeacons, using Bluez 5.15, a raspbian Linux with Kernel 3.10.26 (so on a Raspberry Pi), and a TP-LINK TL-WN725N dongle.

To test receiving of the advertisements, I’m using hcidump and hcitool lescan.

As I want to continuously receive the advertisements, I’m allowing duplicates (--duplicates). Also, I don’t want to send scan responses, so I’m running a passive scan (--passive; running an active scan quickly results in a hardware error).

So the commands I’m running:
1st terminal: hcidump
2nd terminal: hcitool lescan --duplicates --passive

Receiving the advertisements works fine for some time (30 seconds-2 minutes), resulting in advertisement events printed by hcidump:

> HCI Event: LE Meta Event (0x3e) plen 42
    LE Advertising Report
      ADV_IND - Connectable undirected advertising (0)
      bdaddr FC:94:A8:6F:A8:10 (Random)
      Flags: 0x06
      Unknown type 0xff with 25 bytes data
      RSSI: -65

These events come at a rate of up to a couple per second. The RSSI values oscillate between -70 and -55 as the beacon is close.

But then I get:

> HCI Event: LE Meta Event (0x3e) plen 42
    LE Advertising Report
      ADV_IND - Connectable undirected advertising (0)
      bdaddr FC:94:A8:6F:A8:10 (Random)
      Flags: 0x06
      Unknown type 0xff with 25 bytes data
      RSSI: -4
> HCI Event: QoS Violation (0x1e) plen 2
    handle 1537
> HCI Event: Data Buffer Overflow (0x1a) plen 255
    type Unknown
> HCI Event: code 0xa8 plen 148
> HCI Event: code 0xf8 plen 70
> HCI Event: Physical Link Complete (0x40) plen 127
    status 0x30 phy handle 0xf5
    Error: Parameter out of Mandatory Range

The first weird thing is the abnormally large RSSI (sometimes even positive), but that may be the result of the buffer overflow, which comes next. Of course later no more packets are received, just a lot of: http://pastie.org/private/ckvvdt3plhxv84fbydyxg

I tried decreasing the scan’s interval to 0x50 (keeping the window at 0x10), which results in fewer advertisements being received), but after some time I get the same buffer overflow.

Any ideas what can be wrong? Is it something in bluez? Something specific to the dongle?

Thanks,
Adam

-- 
Adam Warski

http://twitter.com/#!/adamwarski
http://www.softwaremill.com
http://www.warski.org

--
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




[Index of Archives]     [Bluez Devel]     [Linux Wireless Networking]     [Linux Wireless Personal Area Networking]     [Linux ATH6KL]     [Linux USB Devel]     [Linux Media Drivers]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux