BThome v2 BLE Advertisement Logger for debugging and monitoring BThome devices
Project description
BThome Logger Tools
This directory contains tools for testing and debugging BThome devices.
🐍 Python BThome Logger
A reliable Python tool for scanning and displaying BThome v2 advertisements.
Installation
From PyPI (recommended):
# Install as isolated tool with uv (recommended)
uv tool install bthome-logger
# Or with pipx
pipx install bthome-logger
# Or system-wide with pip
pip install bthome-logger
For development:
# Install uv if not already available
curl -LsSf https://astral.sh/uv/install.sh | sh
# Change to tools directory
cd tools
# Install dependencies and run tool
uv run bthome_logger.py
From repository:
# Clone repository
git clone https://github.com/the78mole/bthomev2.git
cd bthomev2/tools
# With pip
pip install -e .
# With uv
uv run bthome_logger.py
Usage
# Basic usage (defaults to filtering devices with "MAKE" in name)
bthome-logger
# Filter by custom device name
bthome-logger --filter ESP32
bthome-logger -f MyDevice
# Show all BLE advertisements (verbose mode)
bthome-logger --verbose
bthome-logger -v
# Show version
bthome-logger --version
# Show help
bthome-logger --help
Features
- ✅ Scans for BLE devices with customizable name filter
- ✅ Detects BThome v2 Company ID (0xFCD2)
- ✅ Decodes all common BThome Object IDs
- ✅ Colorized terminal output for better readability
- ✅ Shows RSSI values with color coding
- ✅ Real-time updates on new advertisements
- ✅ Supports encrypted and unencrypted packets
- ✅ Optional verbose mode to show all BLE advertisements
- ✅ CLI with
--helpand--versionsupport
Output Example
======================================================================
🔵 BThome Logger - Python Edition
Scans for BLE devices with BThome v2 protocol
======================================================================
Filter: Devices with 'MAKE' in name
Press Ctrl+C to exit
✓ Scanner started...
----------------------------------------------------------------------
[14:32:45.123] 📱 MAKE-ESP32-S3-TS (XX:XX:XX:XX:XX:XX)
RSSI: -65 dBm
Raw: 40 02 b6 10
BThome: v2 (unencrypted)
Values:
• Temperature: 42.78 °C
Troubleshooting
Problem: bleak cannot be installed
Solution: Make sure you are using Python 3.8+:
python --version
Problem: No Bluetooth permissions
Solution (Linux):
# Add user to bluetooth group
sudo usermod -a -G bluetooth $USER
Log out and back in, or run newgrp bluetooth (only affects current terminal).
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file bthome_logger-0.4.2.tar.gz.
File metadata
- Download URL: bthome_logger-0.4.2.tar.gz
- Upload date:
- Size: 6.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
20dd14f60f71b4f33cf6463a6ef091f9e5be87083afc5a047fafcd0950a1bc23
|
|
| MD5 |
f5647a9f0e8c37f6357c39c9a0e75e9b
|
|
| BLAKE2b-256 |
c25504fdcb3bec0839155aca6b57884c8ed8c57ac558307d205dd3cf0b263b55
|
File details
Details for the file bthome_logger-0.4.2-py3-none-any.whl.
File metadata
- Download URL: bthome_logger-0.4.2-py3-none-any.whl
- Upload date:
- Size: 7.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0019f9c533b2ff4293bfdca4ce8d7e572275f6481b9d9b7bff562ab1f858264e
|
|
| MD5 |
1255a557aecb67a8bb587dfb9bc16779
|
|
| BLAKE2b-256 |
8e6e848ddf32f4ee1ed8b56c8a81ff3099d6e654b25da024b88129780f504be0
|