Web Bluetooth Scanner
Scan & Connect to BLE devices directly from the browser (Chrome/Edge only).
environment and support
GATT Services/Characteristics
log
How to use this page to quickly locate problems
Bluetooth Guide
Scan, Pair, and explore GATT services via Web Bluetooth.
Confirm environment and browser support
Make sure to access under HTTPS and use a browser that supports Web Bluetooth.
Scan and select devices
Click "Scan Devices" and select your Bluetooth device in the system pop-up window.
Connect and enumerate GATT services/characteristics
After the connection is successful, click "Enumerate Services" to view the list of services and characteristics.
Read/subscribe notifications and export reports
Read characteristic values, enable notifications, and finally copy the report for further troubleshooting.
FAQ
Have questions? We have the answer! The following is a summary of frequently asked questions about Web Bluetooth scanning, connections, and GATT diagnostics.
What can this Bluetooth diagnostic page do?
Based on the Web Bluetooth capability of the browser, it helps you complete "scan and select devices → connect to GATT → enumerate services/features → read/subscribe notifications", and record key logs and errors to facilitate locating pairing failures, disconnections, service invisibility and compatibility issues.
Why does it prompt "Web Bluetooth is not supported"?
Web Bluetooth is not supported by all browsers/platforms. Usually the desktop version Chrome/Edge has better support; iOS Safari usually does not support it. You can change the browser or switch to the desktop and test again.
Why must it be accessed under HTTPS?
Web Bluetooth is a high-privilege capability and the browser requires a secure context (HTTPS). If it is in an http or insecure environment, a SecurityError will be triggered or it will be directly unavailable.
Why is there no response when clicking "Scan Device"/is a NotAllowedError reported directly?
The scan must be triggered by a user gesture (e.g. button click) and the browser/system needs to allow Bluetooth permissions. Please make sure you click to trigger it manually, the system Bluetooth is turned on, and the browser does not block permission pop-ups.
Why can't I scan the device?
Common reasons include: the device is not discoverable/connectable, the distance is too far or blocked, the filtering conditions are too strict (namePrefix/service), or the system Bluetooth is occupied by other applications. It is recommended to check acceptAllDevices first, get close to the device and try again.
Why am I connected but "cannot enumerate services/features"?
Browsers restrict access to undeclared GATT services. Please add the target service UUID to optionalServices (supports keywords such as battery_service, and you can also write the complete UUID), then rescan/connect and enumerate again.
Why are there frequent disconnections (NetworkError/InvalidStateError)?
Common reasons are distance/interference, low battery or device power-saving hibernation, Bluetooth connection being preempted by other devices, or the system Bluetooth stack being unstable. It is recommended to move closer to the device, reduce 2.4GHz interference, restart Bluetooth/device, and try to maintain a single-device connection.
There is no data after turning on "Notifications". Is this normal?
Probably normal. Not all features will proactively push notifications; some require configuration to be written first or events to be triggered on the device. In addition, browsers/devices may also have restrictions on the notify event. You can first try "read" to confirm whether the feature is readable, or change a feature verification link that is known to be pushed.
Is privacy safe? Will my Bluetooth data be uploaded?
This page mainly interacts and parses within the local browser and will not actively upload your Bluetooth data. If you click "Copy Report," the content will go to your clipboard; it's up to you whether you want to share it.
What information does the Replication Report contain?
The report includes test time, browser UA, HTTPS/availability status, scan parameters (filters/optionalServices), device information summary, enumerated services/feature structures, recent errors and logging. Used to quickly reproduce and locate problems.