A little app that discovers bluetooth devices near by and displays them on a board.
- The "Wall of Sheep". A list of all bluetooth devices and useful information.
- Writes a current device list to a csv file.
- Identifies the company of a device using a public listing.
- Calculates distance from transmitter and receiver of a device with TX Power and RSSI.
- Removes devices that have not been present for certain amount of time. This combats the "private resolvable random addresses" feature that prevents tracking of devices.
- Highlights devices that tend to "stick around"
- Hide device addresses from screen
pip install -r requirements.txt
python index.py
python -m pylint $(git ls-files '*.py')
pyinstaller index.py -F -n bluetooth-wos
- Resolve services by name
- Estimates distance from transmitter and receiver of a device given ONLY RSSI if know distance values are present.
- Configurable columns
- Load spinner on first load. It's boring to see nothing in a table
- Fingerprint devices that keep changing MAC addresses
- Show adv data
- Go into service data
- Resolve common service->characteristics such as temp/humidity
- attempt to keep same indexes of current devices
Contributions, issues and feature requests are welcome.
Feel free to check issues page if you want to contribute.
👤 Spencer Kittleson
- Github: @skittleson
- LinkedIn: @skittleson
- Blog: DoCodeThatMatters
- X: @skittleson
- StackOverflow: spencer
⭐️ this repository if this project helped you! It motivates me a lot! 👋
Buy me a coffee ☕: skittles
- python
- rich
- bleak
- ruamel.yaml