BluetoothDevice

Experimental

This is an experimental technology
Check the Browser compatibility table carefully before using this in production.

The BluetoothDevice interface of the Web Bluetooth API represents a Bluetooth device inside a particular script execution environment.

Interface

interface BluetoothDevice {
  readonly attribute DOMString id;
  readonly attribute DOMString? name;
  readonly attribute BluetoothRemoteGATTServer? gatt;
  readonly attribute FrozenArray uuids;

  Promise watchAdvertisements();
  void unwatchAdvertisements();
  readonly attribute boolean watchingAdvertisements;
};
BluetoothDevice implements EventTarget;
BluetoothDevice implements BluetoothDeviceEventHandlers;
BluetoothDevice implements CharacteristicEventHandlers;
BluetoothDevice implements ServiceEventHandlers;

Properties

BluetoothDevice.id This is an experimental API that should not be used in production code. Read only
A DOMString that uniquely identifies a device.
BluetoothDevice.name This is an experimental API that should not be used in production code. Read only
A DOMString that provices a human-readable name for the device.
BluetoothDevice.gatt  This is an experimental API that should not be used in production code. Read only
A reference to the device's BluetoothRemoteGATTServer.
BluetoothDevice.uuids  This is an experimental API that should not be used in production code. This deprecated API should no longer be used, but will probably still work. Read only
Lists the UUID's of GATT services provided by the device, that the current origin is allowed to access.
BluetoothDevice.watchingAdvertisements  This is an experimental API that should not be used in production code. Read only
If advertisments were activated using BluetoothDevice.watchAdvertisements().

Non-standard Chrome OS properties

Non-standard

This feature is non-standard and is not on a standards track. Do not use it on production sites facing the Web: it will not work for every user. There may also be large incompatibilities between implementations and the behavior may change in the future.

These properties were only implemented on Google’s Chrome OS 45 and removed from Chrome 52.

BluetoothDevice.adData This API has not been standardized. This deprecated API should no longer be used, but will probably still work. Read only
An instance of BluetoothAdvertisingData containing the most recent advertising data received for the device.
BluetoothDevice.deviceClass This API has not been standardized. This deprecated API should no longer be used, but will probably still work. Read only
A number representing the Bluetooth devices "Class of Device".
BluetoothDevice.vendorIDSource  This API has not been standardized. This deprecated API should no longer be used, but will probably still work. Read only
The Vendor ID Source field in the pnp_id characteristic in the device_information service.
BluetoothDevice.vendorID  This API has not been standardized. This deprecated API should no longer be used, but will probably still work. Read only
The 16-bit Vendor ID field in the pnp_id characteristic in the device_information service.
BluetoothDevice.productID  This API has not been standardized. This deprecated API should no longer be used, but will probably still work. Read only
The 16-bit Product ID field in the pnp_id characteristic in the device_information service.
BluetoothDevice.productVersion  This API has not been standardized. This deprecated API should no longer be used, but will probably still work. Read only
The 16-bit Product Version field in the pnp_id characteristic in the device_information service.
BluetoothDevice.paired  This API has not been standardized. This deprecated API should no longer be used, but will probably still work. Read only
A Boolean value indicating whether the device is paired with the system.
BluetoothDevice.gattServer  This API has not been standardized. This deprecated API should no longer be used, but will probably still work. Read only
A reference to the device's GATT server or null if the device is disconnected.

Methods

BluetoothDevice.watchAdvertisments()  This is an experimental API that should not be used in production code.
A Promise that resolves to undefined or is rejected with an error if advetisments can’t shown for any reason.
BluetoothDevice.unwatchAdvertisments()  This is an experimental API that should not be used in production code.
Stops watching for advertisments.
BluetoothDevice.connectGATT()  This API has not been standardized. This deprecated API should no longer be used, but will probably still work.
A Promise that resolves to an instance of BluetoothRemoteGATTServer.

Specifications

Specification Status Comment
Web Bluetooth
The definition of 'BluetoothDevice' in that specification.
Draft Initial definition.

Browser compatibility

BCD tables only load in the browser