Proximity estimation using BLE

For CircuitPython issues, ask in the Adafruit CircuitPython forum.

Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.
Locked
User avatar
kevinjwalters
 
Posts: 1025
Joined: Sun Oct 01, 2017 3:15 pm

Proximity estimation using BLE

Post by kevinjwalters »

I had a quick read about proximity estimation using non-stationary Bluetooth devices. I thought I'd start a thread to gather togther anyone's work in this area.

Some of the prior work in this area is based on stationary devices and some is based on pre-V4 Bluetooth. A lot of it is focussed more on the privacy aspects that the rangefinding. Here's a few things that may be of interest:
Apple may have some advantage here from a more standardised range of devices and big data from the Find My service.

I had a play with the BLE range between two CPBs when I first got them. My walking across the room test showed about a 5m range. That was equivalent to 80cm when one CPB was placed behind a flat panel monitor and the other was cupped between hands. I was about to experiment with a bit of old skool DF by mounting and wiggling one on a servo but I had an accident with a CPX test so didn't pursue that!

There may also be work in this area for clandestine Uyghur proximity/tracking. I've not found anything yet than mentions BLE though.

User avatar
kevinjwalters
 
Posts: 1025
Joined: Sun Oct 01, 2017 3:15 pm

Re: Proximity estimation using BLE

Post by kevinjwalters »

A few more:
@danhalbert mention the aerials to support Bluetooth 5 angle of arrival are currently rather large...

User avatar
kevinjwalters
 
Posts: 1025
Joined: Sun Oct 01, 2017 3:15 pm

Re: Proximity estimation using BLE

Post by kevinjwalters »

And more:

User avatar
kevinjwalters
 
Posts: 1025
Joined: Sun Oct 01, 2017 3:15 pm

Re: Proximity estimation using BLE

Post by kevinjwalters »

Few more:

User avatar
kevinjwalters
 
Posts: 1025
Joined: Sun Oct 01, 2017 3:15 pm

Re: Proximity estimation using BLE

Post by kevinjwalters »

And more:

User avatar
DarTheMadScientist
 
Posts: 76
Joined: Mon May 07, 2018 7:47 pm

Re: Proximity estimation using BLE

Post by DarTheMadScientist »

We have been looking at this at Covid Watch. The resources you list can be helpful.

Here are a few things we have learned:
  • RSSI is not (in general) RX power. But, maybe.
  • Multiple RSSI samples are required.
  • Channels make a difference, though clustering is evident.
  • The A/G framework is changing and folks there can use encouragement to make good changes.
I have created two CircuitPython issues:
  • Allow setting of TX power to aid in testing and per-phone RSSI characterization.
  • Add channel information.
In my toolkit are a few CircuitPython boards: CLUE, Circuit Playground Bluefruit, Itsybitsy and another. I have a few of the Adafruit BLE sniffers and an Ubertooth One, but I have not (yet) been successful in connecting them to Wireshark. I have LimeSDR and I'm just learning that.

I have tinkered with making some BLE tools in CircuitPython and I'm about to carve out some time to write something to send and receive mock Apple/Google EN beacons.

We welcome wisdom and help at Covid Watch. I can make introductions or help in connecting to some other group.

User avatar
kevinjwalters
 
Posts: 1025
Joined: Sun Oct 01, 2017 3:15 pm

Re: Proximity estimation using BLE

Post by kevinjwalters »

I've written a very simple Bluetooth LE scanner (clue-ble-scanner.py) in CircuitPython which shows the top ten devices sending Advertisements. Works on a CLUE and a Circuit Playground Bluefruit (CPB) with TFT Gizmo. Right button can do some basic data masking which is the reason for the blanked out octects. Quick anim gif of it running at my desk picking up another out of shot CPB advertising itself:
Bluetooth LE scanner on CLUE and CPB with TFT Gizmo
Bluetooth LE scanner on CLUE and CPB with TFT Gizmo
clue-and-cpb-scanner-demo-1.gif (957.49 KiB) Viewed 427 times
My CPB is alpha hardware and there was a revision to the antenna which may have changed its reception. I also found an Android tablet I have is much more sensitive. It can pick up those Bose Headphones in a car or house at 30m away behind a wall!

User avatar
kevinjwalters
 
Posts: 1025
Joined: Sun Oct 01, 2017 3:15 pm

Re: Proximity estimation using BLE

Post by kevinjwalters »

Some more links:
And on a tangent, it's all gone a bit ultrasonic:

User avatar
kevinjwalters
 
Posts: 1025
Joined: Sun Oct 01, 2017 3:15 pm

Re: Proximity estimation using BLE

Post by kevinjwalters »

Someone else has noticed the awesome output power of Bose headphones and other bluetooth devices without MAC randomisation: NRK: Martin Gundersen: Someone could be tracking you through your headphones or original in Norwegian. This articles describes Bjorn Martin Hegnes's research for his project: https://www.hegnes.tech/2021/09/01/loca ... h-devices/

Locked
Please be positive and constructive with your questions and comments.

Return to “Wireless: WiFi and Bluetooth”