Under Review
over 2 years ago

Not all BLE Devices found by scanning

Having several BLE Sensors and wanting to display their data on-screen of the watch. Scanning for the BLE Sensor returns all kinds of apple devices, but not the sensor i'm looking for.

Both sensors contain Bluetooth Classic and Bluetooth Low Energy chips. 

One of the older sensors still has a static LE mac address and shows up in the scan. NRF Connect shows this device as "Classic and LE Capable".

The newer sensors do not show up on the scan, and are shown in NRF Connect as "LE Only".

I have attempted to 'spoof' the newer sensor to appear as a device capable of both, but no luck.

If anyone could shed some light on this issue and perhaps a solution that would be great!

Parents
  • You mean the sensor changes it's BLE MAC address?  When scanning you want to look at the UUID.  Even if the MAC address is static, if the sensor is replaced, the MAC address will (or should) change.

    In some things. once I scan and find a valid device, I save that scan result in Application.Storage, and then the next time I want to use that device, I don't scan, but just pair using the saved scan result.

    The Garmin device itself uses the same MAC address all the time, but it could change if a full reset is done on the device.  For security with some of my pi apps, I have a list of valid MAC addresses of the garmin devices that are allowed to connect

Comment
  • You mean the sensor changes it's BLE MAC address?  When scanning you want to look at the UUID.  Even if the MAC address is static, if the sensor is replaced, the MAC address will (or should) change.

    In some things. once I scan and find a valid device, I save that scan result in Application.Storage, and then the next time I want to use that device, I don't scan, but just pair using the saved scan result.

    The Garmin device itself uses the same MAC address all the time, but it could change if a full reset is done on the device.  For security with some of my pi apps, I have a list of valid MAC addresses of the garmin devices that are allowed to connect

Children
  • With CIQ, things are not learned over a connection.  Services and characteristics must be defined in the app's BLE profile.

    How are you communicating if you aren't doing a pair request and waiting for a connection?  Then there are things like the 22 byte limit for reads.

    Sound to me that unless there are changes made to the sensor, you won't be able to use CIQ.

  • Saving the scan result won't work as the connection parameters change every 15 minutes. We also do not advertise with service UUID's, with the exception of a sensor that has google fast pair, which wouldnt be usefull to scan for, since lots of devices can have that feature.

    Our sensor (on the ble side) has no pair option available. I think the watch detects that it is pairable if the mac address of BLE is the same as the Classic mac.
    Then when the random mac is turned on, it can no longer resolve to be pairable on the classic side?