This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

How I can detect and get all the bluetooth adresses around my chip?

Hi to everyone!
I have been looking for a way to get all the bluetooth adresses which are active around my chip (I have a nRF52832).
I know I can program my device as central and detect peripheral devices around it. But I also want to detect bluetooth devices that use Bluetooth versions lower than 4.0, I mean devices that does not use BLE (Bluetooth Low Energy).
I just want to detect them, not connect to them. Also, it would be great If I can get their bluetooth addresses and the Tx Power Level (or RSSI, Received Signal Strength Indicator).
Thanks in advance!
  • Hi,

    Bluetooth versions below v4.0 (often referred to as Bluetooth Classic or Bluetooth BR/EDR) use different physical layers in their protocols. Different frequency bands, different modulation schemes, etc. So unfortunately it is impossible to detect these devices with a "pure" Bluetooth Low Energy device (You can get devices which are both Bluetooth Classic and LE compatible, but you won't find such devices in Nordic's portfolio of ICs). 

  • Thank you, MartinBL! I am sorry I took so many days in answer you.
    So, I can only work with BLE devices.
    And is there a way to detect all the BLE devices or only the ones which are advertising?
    (I already found the way to get the RSSI for each BLE events).
  • No worries.

    Unfortunately you can only detect devices that are advertising. Advertising devices transmit packets in a known format at three defined channels: ch 37, 38, and 39. After two devices have connected they use a channel hopping algorithm and proceed to jump around across all the other 37 channels. Your detector has no way of guessing when or where in the spectrum to listen for their transmissions. 

Related