Why does Google Find Hub report wildly oscillating accuracy_m for BT tags while the owner phone stays constant?
Setup
Three devices tracked via Google Find Hub (GoogleFindMyTools, reverse-engineered, GPL-3.0),
polled every 15 minutes from a Raspberry Pi:
• Google Pixel 9 ("My Phone") — owner's Android phone, Google Find Hub installed
• K home — Lifemate Life Tag BT tracker, always physically with the phone
• wallet — Lifemate Life Tag BT tracker, always physically with the phone
All three devices were completely stationary on a table in the same room from 01:00 to
07:30. The phone screen was off, no user interaction. All tag entries in this period have
is_own_report: true and status LAST_KNOWN.
Observation for all three devices over the 7.5-hour window.
Key observations:
- My Phone accuracy is consistently 11–27 m throughout the entire period, including the 6 hours of complete inactivity.
- K home and wallet accuracy alternates sharply between ~11–17 m (matching the phone
exactly) and 97–344 m, with no intermediate values. The oscillation period is roughly 30–90
minutes.
- K and wallet are almost always identical to each other within the same polling interval —
sometimes down to the same decimal value.
- When K/W accuracy matches the phone (~15 m), their lat/lon also matches the phone exactly.
When K/W accuracy is bad (100–300 m), the position is still in the same area but shifted.
The constraint that rules out obvious explanations
The phone and both tags are completely stationary for 6 hours. Therefore:
• The phone's location cache does not change — getLastKnownLocation() would return the
same value every time.
• GPS duty cycling and Doze-mode Wi-Fi scan intervals cannot explain oscillations if the cached
position is frozen.
• All records have is_own_report: true, so crowdsourcing from passing devices should not be
involved.
Yet the tags oscillate between 15 m and 300+ m every 30–90 minutes while the phone reports
a stable ~15 m throughout. What determines accuracy_m in LAST_KNOWN tag reports
when the reporting phone is completely stationary?
thank a lot
luca
Why does Google Find Hub report wildly oscillating accuracy_m for BT tags while the owner phone stays constant?
Setup
Three devices tracked via Google Find Hub (GoogleFindMyTools, reverse-engineered, GPL-3.0),
polled every 15 minutes from a Raspberry Pi:
• Google Pixel 9 ("My Phone") — owner's Android phone, Google Find Hub installed
• K home — Lifemate Life Tag BT tracker, always physically with the phone
• wallet — Lifemate Life Tag BT tracker, always physically with the phone
All three devices were completely stationary on a table in the same room from 01:00 to
07:30. The phone screen was off, no user interaction. All tag entries in this period have
is_own_report: true and status LAST_KNOWN.
Observation for all three devices over the 7.5-hour window.
Key observations:
exactly) and 97–344 m, with no intermediate values. The oscillation period is roughly 30–90
minutes.
sometimes down to the same decimal value.
When K/W accuracy is bad (100–300 m), the position is still in the same area but shifted.
The constraint that rules out obvious explanations
The phone and both tags are completely stationary for 6 hours. Therefore:
• The phone's location cache does not change — getLastKnownLocation() would return the
same value every time.
• GPS duty cycling and Doze-mode Wi-Fi scan intervals cannot explain oscillations if the cached
position is frozen.
• All records have is_own_report: true, so crowdsourcing from passing devices should not be
involved.
Yet the tags oscillate between 15 m and 300+ m every 30–90 minutes while the phone reports
a stable ~15 m throughout. What determines accuracy_m in LAST_KNOWN tag reports
when the reporting phone is completely stationary?
thank a lot
luca