Tracking ESP32 Devices with Google’s Find My Network

Published  February 12, 2025   0
GoogleFindMyTools

Losing a device can be frustrating, but services like Google’s Find My Device and Apple’s Find My make it easier to track lost items using their vast networks of connected devices. These services leverage encrypted location data to help users find missing smartphones, tablets, and even third-party trackers, offering a seamless and secure way to retrieve lost belongings. Previously, we explored a similar concept with the GPS Visualizer project, which allowed users to upload GPS data from Arduino, ESP32, and other embedded systems to visualize it on interactive maps using Circuit Digest’s cloud API. This project enables developers to integrate GPS tracking into their own applications, creating custom mapping solutions without relying on proprietary ecosystems. Now, a new project takes this a step further by integrating ESP32-based Bluetooth trackers with Google’s Find My Device network.

Developed by Leon Böttger, GoogleFindMyTools is an experimental re-implementation of Google’s Find My Device service. It introduces support for ESP32-based Bluetooth trackers, allowing these low-cost microcontrollers to function as trackable objects within Google’s vast Android ecosystem. The project consists of two key components: a Python script for locating registered devices and ESP32 firmware written in C using the ESP-IDF framework. While the implementation shows promise, some limitations remain—such as the need to re-register ESP32 trackers every three days and the absence of privacy features like MAC address randomization. Unlike official Find My Device trackers, ESP32-based devices require manual registration and can only be located via a Python script rather than Google’s native app. However, for those interested in experimenting with Google’s tracking network or integrating ESP32 into location-based applications, GoogleFindMyTools offers a compelling starting point. The full project details and source code are available on GitHub for those eager to explore its capabilities further.