You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We discovered that activity tracking (e.g. GPS location updates) running on the phone interferes with the BLE signals. The measured signal strength, which is the primary source of our localization method, changes on some specific phones, while location tracking is running in another application.
Our localization method relies on two different steps:
Ranging iBeacons - this is a less precise method but also plays an important role in our logic.
Measuring the received signal strength after connection. This is measured by the peripheral which is an embedded device.
We tested all available phones to us which is approximately 20 Android and 16 iOS devices.
The effect on the recorded signal can be split up to two separate problems:
The measured iBeacon signals have periodically occurring peaks. These peaks can be even by 30 dBm higher than the normal value. We could only reproduce this with the Samsung Galaxy S series from S10 to S21. Newer models we have (S22 Ultra, S23 or S24) and also other Samsung models we tested (A34,A50,A54,A14) don’t show this behavior. We also checked some Pixel, Sony Xperia, Motorola and Xiaomi phones but were not able to reproduce the issue with them either. An example how these peaks look like:
Location tracking was turned on when peaks started to occur. The different colors are different measured iBeacons. The phone and all the iBeacons were in a fixed position during the whole measurement.
The measured signal strength on the peripheral has continuously different values while location updates are active. The device that measures the phones signal sends back the result of the measurement, so we can display it. The values are sent back after a moving average was calculated to reduce some noise. This was only seen on iPhones, and on the Samsung Galaxy S22 Ultra, but the change was not as high as on the iOS devices. Only specific models are affected, these are the ones where we have seen the biggest changes: iPhone SE3, iPhone 13 mini, iPhone 13,iPhone 14, iPhone 16 pro.
Some example pictures:
iPhone 13 mini:
iPhone 14:
The top graph shows the measured iBeacons and the bottom one shows the measured RSSI values by the peripheral. The orange area marks time where location updates were active. We can see that also the iBeacons have the same dampening of the signal strength value. Again, the position of all devices was fixed during the measurement.
_A third example just to show that the values are not always getting lower, but sometimes higher (iPhone 16 pro):_
How to handle?
Is there any explanation to these behaviours other than HW/ antenna issues and interference? Or is there a way we could handle these cases or at least filter it out?
Thank you for your answer in advance!
Best regards,
Levente
The text was updated successfully, but these errors were encountered:
Summary
We discovered that activity tracking (e.g. GPS location updates) running on the phone interferes with the BLE signals. The measured signal strength, which is the primary source of our localization method, changes on some specific phones, while location tracking is running in another application.
Our localization method relies on two different steps:
We tested all available phones to us which is approximately 20 Android and 16 iOS devices.
The effect on the recorded signal can be split up to two separate problems:
Location tracking was turned on when peaks started to occur. The different colors are different measured iBeacons. The phone and all the iBeacons were in a fixed position during the whole measurement.
Some example pictures:
iPhone 13 mini:
iPhone 14:
The top graph shows the measured iBeacons and the bottom one shows the measured RSSI values by the peripheral. The orange area marks time where location updates were active. We can see that also the iBeacons have the same dampening of the signal strength value. Again, the position of all devices was fixed during the measurement.
_A third example just to show that the values are not always getting lower, but sometimes higher (iPhone 16 pro):_
How to handle?
Is there any explanation to these behaviours other than HW/ antenna issues and interference? Or is there a way we could handle these cases or at least filter it out?
Thank you for your answer in advance!
Best regards,
Levente
The text was updated successfully, but these errors were encountered: