Raspberry Pi Bluetooth Tracker
A Node.js project that tracks the distance of Bluetooth devices using a Raspberry Pi 5.
This project uses Node.js to track the distance of Bluetooth devices with a Raspberry Pi 5. But probably works with other Raspberry PI’s and Systems. It utilizes bluetoothctl to scan the area and calculates the distance in meters based on the signal strength.
Project Source Code
Check out the full project on GitHub: Bluetooth-DistanceFinder
Screenshots
Below are some snapshots of the project in action:
Bluetooth Tracker in Action:

Running the Bluetooth Tracker Automatically creates a data.json files and stores data for each device recorded like this:

Data Display on Real life map
Below is a map using the data in data.json showing average distance of devices from the Raspberry Pi. Mac address are obscured in case of laws.
An interactive Leaflet map renders here, centered on a hardcoded position ([40.7561930997685, -73.98665912607144]). It loads device data from /View/Projects/data.json and draws a colored circle for each device, with a radius equal to that device’s average measured distance (in meters). A clickable legend lets you filter the map to a single device. The dataset contains 23 obscured devices (Obscured Device 1 through Obscured Device 23), each with a series of timestamped distance readings recorded on 2025-02-19.