BluetoothRemoteGATTCharacteristic

 

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.

The BluetoothRemoteGattCharacteristic interface of the Web Bluetooth API represents a GATT Characteristic, which is a basic data element that provides further information about a peripheral’s service.

Interface

interface BluetoothRemoteGATTCharacteristic {
  readonly attribute BluetoothRemoteGATTService service;
  readonly attribute UUID uuid;
  readonly attribute BluetoothCharacteristicProperties properties;
  readonly attribute DataView? value;
  Promise<BluetoothRemoteGATTDescriptor> getDescriptor(BluetoothDescriptorUUID descriptor);
  Promise<sequence<BluetoothRemoteGATTDescriptor>>
    getDescriptors(optional BluetoothDescriptorUUID descriptor);
  Promise<DataView> readValue();
  Promise<void> writeValue(BufferSource value);
  Promise<void> startNotifications();
  Promise<void> stopNotifications();
};
BluetoothRemoteGATTCharacteristic implements EventTarget;
BluetoothRemoteGATTCharacteristic implements CharacteristicEventHandlers;

Properties

BluetoothRemoteGATTCharacteristic.service Read only
Returns the BluetoothGATTService this characteristic belongs to.
BluetoothRemoteGATTCharacteristic.uuid Read only
Returns a DOMString containing the UUID of the characteristic, for example '00002a37-0000-1000-8000-00805f9b34fb' for the Heart Rate Measurement characteristic.
BluetoothRemoteGATTCharacteristic.properties Read only
Returns the properties of this characteristic.
BluetoothRemoteGATTCharacteristic.value Read only
The currently cached characteristic value. This value gets updated when the value of the characteristic is read or updated via a notification or indication.

Methods

BluetoothRemoteGATTCharacteristic.getDescriptor() Read only
Returns a Promise that resolves to the first BluetoothGATTDescriptor for a given descriptor UUID.
BluetoothRemoteGATTCharacteristic.getDescriptors() Read only
Returns a Promise that resolves to an Array of all BluetoothGATTDescriptor objects for a given descriptor UUID.
BluetoothRemoteGATTCharacteristic.readValue() Read only
Returns a Promise that resolves to an ArrayBuffer holding a duplicate of the value property if it is available and supported. Otherwise it throws an error.
BluetoothRemoteGATTCharacteristic.writeValue() Read only
Sets the value property to the bytes contained in an ArrayBuffer and returns a Promise.
BluetoothRemoteGATTCharacteristic.startNotifications() Read only
Returns a Promise when navigator.bluetooth is added to the active notification context.
BluetoothRemoteGATTCharacteristic.stopNotifications() Read only
Returns a Promise when navigator.bluetooth is removed from the active notification context.

Specifications

Specification Status Comment
Web Bluetooth Draft Initial definition.

Browser Compatibility

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Basic support 45.0 [1] ? ? ? ?
Feature Android Android Webview Firefox Mobile (Gecko) Firefox OS IE Mobile Opera Mobile Safari Mobile Chrome for Android
Basic support No support No support ? ? ? ? ? No support

[1] Behind a flag.  Chrome OS only.

Document Tags and Contributors

 Contributors to this page: jpmedley, chrisdavidmills
 Last updated by: jpmedley,