@rickosborne/bluetools
TypeScript icon, indicating that this package has built-in type declarations

2025.3.12 • Public • Published

@rickosborne/bluetools

TypeScript/ES/JS for working with Bluetooth devices via node.

This library does not attempt to do all the low-level Web Bluetooth API stuff. Instead, it contains a bunch of types, classes, and functions auto-generated from the Bluetooth Characteristic and Descriptor reference XML.

Basically, it attempts to help with that annoying step of "okay, I got my nodejs/browser talking to the device, now how do I read the data?" part.

⚠️⚠️⚠️ This library does not attempt to cover the various edge cases of the real world or the Web Bluetooth spec. ⚠️⚠️⚠️

Indeed, I probably got a bunch of stuff wrong, as the source XML files for the data specs have almost zero examples. I've tested it on a few of my own devices (heart rate monitors, mostly), but I don't claim that all the fiddly stuff will actually work. Use at your own risk. YMMV. All that.

As most of the code in this library is auto-generated, it all follows the same pattern:

  • An interface for the fields parsed from the Characteristic / Descriptor.
  • A class which implements that interface, and also holds static constants like the UUID and Name.
  • A parser function which can read a DataView and generate instances of the class.

I have not converted all the Characteristics or Descriptors. If you have access to one of the XML sources you'd like to see added, file a GitHub issue. You can also try generating them on your own using the scripts/from-xml.ts and scripts/gatt-assigned.ts scripts. The former does most of the code generation, while the latter just adds to the UUID records.

⚠️⚠️⚠️ The code here is based off the circa 2017 XML specs, not the circa 2020 YAML specs. The code may be out of date. ⚠️⚠️⚠️

The YAML specs don't have nearly as much detail, and would be much harder to convert. You can see them here:

https://bitbucket.org/bluetooth-SIG/public/src/main/gss/

Sadly, the XML versions have been removed. Though, if you were industrious, you could find them.

Usage

Install via your favorite package manager.

Each package supports CommonJS require, ESM import, and TypeScript usage.

You also have a choice: barrel imports or direct imports.

Barrel imports mean you're going to require/import everything from the same package-level namespace:

// CommonJS
const { isPlainObject, isListOf } = require("@rickosborne/guard");
// ESM / TypeScript
import { isPlainObject, isListOf } from "@rickosborne/guard";

Implications:

  • Nice and simple.
  • Your build system needs to do tree-shaking well ... or you'll end up adding the entire package even if you only import two functions.

The other option is to use direct imports:

// CommonJS
const { isPlainObject } = require("@rickosborne/guard/is-object");
const { isListOf } = require("@rickosborne/guard/is-list-of");
// ESM / TypeScript
import { isPlainObject } from "@rickosborne/guard/is-object.js";
import { isListOf } from "@rickosborne/guard/is-list-of.js";

Implications:

  • You (probably) don't have to worry about tree-shaking as your build (likely) ends up with only the functions you need.

If you're using a modern build system, there aren't any strong reasons to prefer one way over the other. It's really just down to your personal preference.

A quick note about file extensions

Do you need to use file extensions? And if so, which extensions?

Honestly ... this is a dumpster fire question. It really comes down to your own setup and configuration.

Within each package itself:

  • The CommonJS files all have .cjs extensions.
  • The ESM files all have .mjs extensions.
  • Node subpath exports have been set up to send .js imports to the .cjs (via require) or .mjs (via import) files, depending on your setup.

So, in theory, the only extension which won't work would be .ts because the source isn't included.

If you run into a problem with a particular configuration, file a GitHub issue with:

  • Your tsconfig.json's module, moduleResolution, and target settings.
  • Your package.json's type and imports settings.
  • An example of another package which imports correctly for you.

License

This package is licensed as CC-BY-NC-SA-4.0 unless otherwise noted. That is, Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International.


API

Classes

AerobicHeartRateLowerLimitImpl

 class AerobicHeartRateLowerLimitImpl implements AerobicHeartRateLowerLimit 

AerobicHeartRateUpperLimitImpl

 class AerobicHeartRateUpperLimitImpl implements AerobicHeartRateUpperLimit 

AerobicThresholdImpl

 class AerobicThresholdImpl implements AerobicThreshold 

Aerobic Threshold and Anaerobic Threshold together with the Sport Type for Aerobic and Anaerobic Thresholds describe the metabolic thresholds of the user. The Sport Type for Aerobic and Anaerobic Thresholds identifies how the measurement was performed.

AgeImpl

 class AgeImpl implements Age 

AggregateImpl

 class AggregateImpl implements Aggregate 

The fields in the above table, reading from top to bottom, are shown in the order of LSO to MSO, where LSO = Least Significant Octet and MSO = Most Significant Octet.

AlertCategoryIdBitMaskImpl

 class AlertCategoryIdBitMaskImpl implements AlertCategoryIdBitMask 

AlertCategoryIdImpl

 class AlertCategoryIdImpl implements AlertCategoryId 

AlertLevelImpl

 class AlertLevelImpl implements AlertLevel 

AlertNotificationControlPointImpl

 class AlertNotificationControlPointImpl implements AlertNotificationControlPoint 

AlertStatusImpl

 class AlertStatusImpl implements AlertStatus 

AltitudeImpl

 class AltitudeImpl implements Altitude 

AnaerobicHeartRateLowerLimitImpl

 class AnaerobicHeartRateLowerLimitImpl implements AnaerobicHeartRateLowerLimit 

AnaerobicHeartRateUpperLimitImpl

 class AnaerobicHeartRateUpperLimitImpl implements AnaerobicHeartRateUpperLimit 

AnaerobicThresholdImpl

 class AnaerobicThresholdImpl implements AnaerobicThreshold 

Aerobic Threshold and Anaerobic Threshold together with the Sport Type for Aerobic and Anaerobic Thresholds describe the metabolic thresholds of the user. The Sport Type for Aerobic and Anaerobic Thresholds identifies how the measurement was performed.

AnalogImpl

 class AnalogImpl implements Analog 

The Octet Order in the above table is in the order of LSO to MSO, where LSO = Least Significant Octet and MSO = Most Significant Octet.

ApparentWindDirectionImpl

 class ApparentWindDirectionImpl implements ApparentWindDirection 

ApparentWindSpeedImpl

 class ApparentWindSpeedImpl implements ApparentWindSpeed 

BarometricPressureTrendImpl

 class BarometricPressureTrendImpl implements BarometricPressureTrend 

BatteryLevelImpl

 class BatteryLevelImpl implements BatteryLevel 

BloodPressureFeatureImpl

 class BloodPressureFeatureImpl implements BloodPressureFeature 

BloodPressureMeasurementImpl

 class BloodPressureMeasurementImpl implements BloodPressureMeasurement 

BodyCompositionFeatureImpl

 class BodyCompositionFeatureImpl implements BodyCompositionFeature 

BodyCompositionMeasurementImpl

 class BodyCompositionMeasurementImpl implements BodyCompositionMeasurement 

The fields in the above table are in the order of LSO to MSO. Where LSO = Least Significant Octet and MSO = Most Significant Octet.

BodySensorLocationImpl

 class BodySensorLocationImpl implements BodySensorLocation 

BootKeyboardInputReportImpl

 class BootKeyboardInputReportImpl implements BootKeyboardInputReport 

BootKeyboardOutputReportImpl

 class BootKeyboardOutputReportImpl implements BootKeyboardOutputReport 

BootMouseInputReportImpl

 class BootMouseInputReportImpl implements BootMouseInputReport 

CgmFeatureImpl

 class CgmFeatureImpl implements CgmFeature 
  1. The fields in the above table are in the order of LSO to MSO. Where LSO = Least Significant Octet and MSO = Most Significant Octet 2. The CGM Type and CGM Sample Location Fields are each a nibble (4bit), where the least significant nibble contains the Type and the most significant nibble contains the Sample Location. These two nibbles are packed as one single octet, the Least Significant Nibble means the four bits numbered 0, 1, 2 and 3 of the octet and the Most Significant Nibble means the four bits numbered 4, 5, 6 and 7 of that octet

CrossTrainerDataImpl

 class CrossTrainerDataImpl implements CrossTrainerData 

CscFeatureImpl

 class CscFeatureImpl implements CscFeature 

CscMeasurementImpl

 class CscMeasurementImpl implements CscMeasurement 

CurrentTimeImpl

 class CurrentTimeImpl implements CurrentTime 

CyclingPowerFeatureImpl

 class CyclingPowerFeatureImpl implements CyclingPowerFeature 

CyclingPowerMeasurementImpl

 class CyclingPowerMeasurementImpl implements CyclingPowerMeasurement 

The fields in the above table, reading from top to bottom, are shown in the order of LSO to MSO, where LSO = Least Significant Octet and MSO = Most Significant Octet. The Least Significant Octet represents the eight bits numbered 0 to 7.

CyclingPowerVectorImpl

 class CyclingPowerVectorImpl implements CyclingPowerVector 

The fields in the above table, reading from top to bottom, are shown in the order of LSO to MSO, where LSO = Least Significant Octet and MSO = Most Significant Octet. The Least Significant Octet represents the eight bits numbered 0 to 7.

DatabaseChangeIncrementImpl

 class DatabaseChangeIncrementImpl implements DatabaseChangeIncrement 

DataViewReader

 class DataViewReader 

DateOfBirthImpl

 class DateOfBirthImpl implements DateOfBirth 

The fields in the above table are in the order of LSO to MSO. Where LSO = Least Significant Octet and MSO = Most Significant Octet.

DateOfThresholdAssessmentImpl

 class DateOfThresholdAssessmentImpl implements DateOfThresholdAssessment 

The fields in the above table are in the order of LSO to MSO. Where LSO = Least Significant Octet and MSO = Most Significant Octet.

DateTimeImpl

 class DateTimeImpl implements DateTime 

DayDateTimeImpl

 class DayDateTimeImpl implements DayDateTime 

DayOfWeekImpl

 class DayOfWeekImpl implements DayOfWeek 

DewPointImpl

 class DewPointImpl implements DewPoint 

DigitalImpl

 class DigitalImpl implements Digital 

The Octet Order in the above table is in the order of LSO to MSO, where LSO = Least Significant Octet and MSO = Most Significant Octet.

DstOffsetImpl

 class DstOffsetImpl implements DstOffset 

ElevationImpl

 class ElevationImpl implements Elevation 

EmailAddressImpl

 class EmailAddressImpl implements EmailAddress 

The length of the utf8s-based UDS Characteristic is variable and may exceed the default ATT_MTU defined in the Core Specification.

ExactTime256Impl

 class ExactTime256Impl implements ExactTime256 

FatBurnHeartRateLowerLimitImpl

 class FatBurnHeartRateLowerLimitImpl implements FatBurnHeartRateLowerLimit 

FatBurnHeartRateUpperLimitImpl

 class FatBurnHeartRateUpperLimitImpl implements FatBurnHeartRateUpperLimit 

FirmwareRevisionStringImpl

 class FirmwareRevisionStringImpl implements FirmwareRevisionString 

FirstNameImpl

 class FirstNameImpl implements FirstName 

The length of the utf8s-based UDS Characteristics is variable and may exceed the default ATT_MTU defined in the Core Specification.

FiveZoneHeartRateLimitsImpl

 class FiveZoneHeartRateLimitsImpl implements FiveZoneHeartRateLimits 

The fields in the above table are in the order of LSO to MSO. Where LSO = Least Significant Octet and MSO = Most Significant Octet.

FloorNumberImpl

 class FloorNumberImpl implements FloorNumber 

GapAppearanceImpl

 class GapAppearanceImpl implements GapAppearance 

GapDeviceNameImpl

 class GapDeviceNameImpl implements GapDeviceName 

GapPeripheralPreferredConnectionParametersImpl

 class GapPeripheralPreferredConnectionParametersImpl implements GapPeripheralPreferredConnectionParameters 

GapPeripheralPrivacyFlagImpl

 class GapPeripheralPrivacyFlagImpl implements GapPeripheralPrivacyFlag 

GapReconnectionAddressImpl

 class GapReconnectionAddressImpl implements GapReconnectionAddress 

GattCharacteristicAggregateFormatImpl

 class GattCharacteristicAggregateFormatImpl implements GattCharacteristicAggregateFormat 

GattCharacteristicExtendedPropertiesImpl

 class GattCharacteristicExtendedPropertiesImpl implements GattCharacteristicExtendedProperties 

GattCharacteristicPresentationFormatImpl

 class GattCharacteristicPresentationFormatImpl implements GattCharacteristicPresentationFormat 

GattCharacteristicUserDescriptionImpl

 class GattCharacteristicUserDescriptionImpl implements GattCharacteristicUserDescription 

GattClientCharacteristicConfigurationImpl

 class GattClientCharacteristicConfigurationImpl implements GattClientCharacteristicConfiguration 

GattServerCharacteristicConfigurationImpl

 class GattServerCharacteristicConfigurationImpl implements GattServerCharacteristicConfiguration 

GattServiceChangedImpl

 class GattServiceChangedImpl implements GattServiceChanged 

GenderImpl

 class GenderImpl implements Gender 

GlucoseFeatureImpl

 class GlucoseFeatureImpl implements GlucoseFeature 

GlucoseMeasurementContextImpl

 class GlucoseMeasurementContextImpl implements GlucoseMeasurementContext 

Where fields with the format ?nibble? have been defined in the above table, the fields are shown in the order of Least Significant Nibble first, when reading the table from top to bottom. Where the characteristic definition contains two adjacent nibbles and the service specification has defined that that pair of nibbles comprise a single octet, the Least Significant Nibble means the four bits numbered 0, 1, 2 and 3 of the octet and the Most Significant Nibble means the four bits numbered 4, 5, 6 and 7 of that octet.

GlucoseMeasurementImpl

 class GlucoseMeasurementImpl implements GlucoseMeasurement 

Where fields with the format ?nibble? have been defined in the above table, the fields are shown in the order of Least Significant Nibble first, when reading the table from top to bottom. Where the characteristic definition contains two adjacent nibbles and the service specification has defined that that pair of nibbles comprise a single octet, the Least Significant Nibble means the four bits numbered 0, 1, 2 and 3 of the octet and the Most Significant Nibble means the four bits numbered 4, 5, 6 and 7 of that octet.

GustFactorImpl

 class GustFactorImpl implements GustFactor 

HardwareRevisionStringImpl

 class HardwareRevisionStringImpl implements HardwareRevisionString 

HeartRateControlPointImpl

 class HeartRateControlPointImpl implements HeartRateControlPoint 

HeartRateMaxImpl

 class HeartRateMaxImpl implements HeartRateMax 

HeartRateMeasurementImpl

 class HeartRateMeasurementImpl implements HeartRateMeasurement 

The fields in the above table are in the order of LSO to MSO. Where LSO = Least Significant Octet and MSO = Most Significant Octet.

HeatIndexImpl

 class HeatIndexImpl implements HeatIndex 

HeightImpl

 class HeightImpl implements Height 

HidControlPointImpl

 class HidControlPointImpl implements HidControlPoint 

HidInformationImpl

 class HidInformationImpl implements HidInformation 

HipCircumferenceImpl

 class HipCircumferenceImpl implements HipCircumference 

HttpControlPointImpl

 class HttpControlPointImpl implements HttpControlPoint 

HttpEntityBodyImpl

 class HttpEntityBodyImpl implements HttpEntityBody 

HttpHeadersImpl

 class HttpHeadersImpl implements HttpHeaders 

HttpsSecurityImpl

 class HttpsSecurityImpl implements HttpsSecurity 

HttpStatusCodeImpl

 class HttpStatusCodeImpl implements HttpStatusCode 

HumidityImpl

 class HumidityImpl implements Humidity 

IndoorBikeDataImpl

 class IndoorBikeDataImpl implements IndoorBikeData 

IndoorPositioningConfigurationImpl

 class IndoorPositioningConfigurationImpl implements IndoorPositioningConfiguration 

IntermediateCuffPressureImpl

 class IntermediateCuffPressureImpl implements IntermediateCuffPressure 

IntermediateTemperatureImpl

 class IntermediateTemperatureImpl implements IntermediateTemperature 

IrradianceImpl

 class IrradianceImpl implements Irradiance 

LanguageImpl

 class LanguageImpl implements Language 

LastNameImpl

 class LastNameImpl implements LastName 

The length of the utf8s-based UDS Characteristic is variable and may exceed the default ATT_MTU defined in the Core Specification.

LatitudeImpl

 class LatitudeImpl implements Latitude 

LnFeatureImpl

 class LnFeatureImpl implements LnFeature 

LocalEastCoordinateImpl

 class LocalEastCoordinateImpl implements LocalEastCoordinate 

LocalNorthCoordinateImpl

 class LocalNorthCoordinateImpl implements LocalNorthCoordinate 

LocalTimeInformationImpl

 class LocalTimeInformationImpl implements LocalTimeInformation 

LocationAndSpeedImpl

 class LocationAndSpeedImpl implements LocationAndSpeed 

LocationNameImpl

 class LocationNameImpl implements LocationName 

LongitudeImpl

 class LongitudeImpl implements Longitude 

MagneticDeclinationImpl

 class MagneticDeclinationImpl implements MagneticDeclination 

MagneticFluxDensity2DImpl

 class MagneticFluxDensity2DImpl implements MagneticFluxDensity2D 

The fields in the above table are in the order of LSO to MSO. Where LSO = Least Significant Octet and MSO = Most Significant Octet

MagneticFluxDensity3DImpl

 class MagneticFluxDensity3DImpl implements MagneticFluxDensity3D 

The fields in the above table are in the order of LSO to MSO. Where LSO = Least Significant Octet and MSO = Most Significant Octet

ManufacturerNameStringImpl

 class ManufacturerNameStringImpl implements ManufacturerNameString 

MaximumRecommendedHeartRateImpl

 class MaximumRecommendedHeartRateImpl implements MaximumRecommendedHeartRate 

MeasurementIntervalImpl

 class MeasurementIntervalImpl implements MeasurementInterval 

ModelNumberStringImpl

 class ModelNumberStringImpl implements ModelNumberString 

NavigationImpl

 class NavigationImpl implements Navigation 

NewAlertImpl

 class NewAlertImpl implements NewAlert 

The usage of this text is up to the implementation, but the recommended text for the category is defined as following for best user experience: Category: Simple Alert - The title of the alert Category: Email - Sender name Category: News - Title of the news feed Category: Call - Caller name or caller ID Category: Missed call - Caller name or caller ID Category: SMS - Sender name or caller ID Category: Voice mail - Sender name or caller ID Category: Schedule - Title of the schedule Category Hig:h Prioritized Aler - Title of the alert Category: Instant Messaging - Sender name

NumberOfDigitalsImpl

 class NumberOfDigitalsImpl implements NumberOfDigitals 

ObjectFirstCreatedImpl

 class ObjectFirstCreatedImpl implements ObjectFirstCreated 

The fields in the above table, reading from top to bottom, are shown in the order of LSO to MSO, where LSO = Least Significant Octet and MSO = Most Significant Octet. Data Type: Same format as the Date Time characteristic

ObjectIdImpl

 class ObjectIdImpl implements ObjectId 

The fields in the above table, reading from top to bottom, are shown in the order of LSO to MSO, where LSO = Least Significant Octet and MSO = Most Significant Octet.

ObjectLastModifiedImpl

 class ObjectLastModifiedImpl implements ObjectLastModified 

The fields in the above table, reading from top to bottom, are shown in the order of LSO to MSO, where LSO = Least Significant Octet and MSO = Most Significant Octet. Data Type: Same format as the Date Time characteristic

ObjectNameImpl

 class ObjectNameImpl implements ObjectName 

Characters which require more than one octet when encoded in UTF-8 are transmitted with the leading byte first, followed by the continuation bytes ordered in accordance with UTF-8 encoding. In UTF-8, the leading byte is identified by possessing two or more high-order 1?s followed by a 0 while continuation bytes all have '10' in the high-order position. Strings which consist of more than one character are transmitted in the following order: the character which appears furthest to the left when the string is presented in its written form shall be sent first, followed by the remaining characters in order.

ObjectSizeImpl

 class ObjectSizeImpl implements ObjectSize 

The fields in the above table, reading from top to bottom, are shown in the order of LSO to MSO, where LSO = Least Significant Octet and MSO = Most Significant Octet.

PlxContinuousMeasurementImpl

 class PlxContinuousMeasurementImpl implements PlxContinuousMeasurement 

The fields in the above table, reading from top to bottom, are shown in the order of LSO to MSO, where LSO = Least Significant Octet and MSO = Most Significant Octet.

PlxFeaturesImpl

 class PlxFeaturesImpl implements PlxFeatures 

The fields in the above table, reading from top to bottom, are shown in the order of LSO to MSO, where LSO = Least Significant Octet and MSO = Most Significant Octet.

PlxSpotCheckMeasurementImpl

 class PlxSpotCheckMeasurementImpl implements PlxSpotCheckMeasurement 

PnpIdImpl

 class PnpIdImpl implements PnpId 

PollenConcentrationImpl

 class PollenConcentrationImpl implements PollenConcentration 

PositionQualityImpl

 class PositionQualityImpl implements PositionQuality 

PressureImpl

 class PressureImpl implements Pressure 

ProtocolModeImpl

 class ProtocolModeImpl implements ProtocolMode 

RainfallImpl

 class RainfallImpl implements Rainfall 

ReferenceTimeInformationImpl

 class ReferenceTimeInformationImpl implements ReferenceTimeInformation 

ReportImpl

 class ReportImpl implements Report 

ReportMapImpl

 class ReportMapImpl implements ReportMap 

ReportReferenceImpl

 class ReportReferenceImpl implements ReportReference 

ResolvablePrivateAddressOnlyImpl

 class ResolvablePrivateAddressOnlyImpl implements ResolvablePrivateAddressOnly 

RestingHeartRateImpl

 class RestingHeartRateImpl implements RestingHeartRate 

RingerControlPointImpl

 class RingerControlPointImpl implements RingerControlPoint 

RingerSettingImpl

 class RingerSettingImpl implements RingerSetting 

RowerDataImpl

 class RowerDataImpl implements RowerData 

RscFeatureImpl

 class RscFeatureImpl implements RscFeature 

RscMeasurementImpl

 class RscMeasurementImpl implements RscMeasurement 

ScanIntervalWindowImpl

 class ScanIntervalWindowImpl implements ScanIntervalWindow 

ScanRefreshImpl

 class ScanRefreshImpl implements ScanRefresh 

SensorLocationImpl

 class SensorLocationImpl implements SensorLocation 

SerialNumberStringImpl

 class SerialNumberStringImpl implements SerialNumberString 

SoftwareRevisionStringImpl

 class SoftwareRevisionStringImpl implements SoftwareRevisionString 

SportTypeForAerobicAndAnaerobicThresholdsImpl

 class SportTypeForAerobicAndAnaerobicThresholdsImpl implements SportTypeForAerobicAndAnaerobicThresholds 

Aerobic Threshold and Anaerobic Threshold together with the Sport Type for Aerobic and Anaerobic Thresholds describe the metabolic thresholds of the user. The Sport Type for Aerobic and Anaerobic Thresholds identifies how the measurement was performed.

StairClimberDataImpl

 class StairClimberDataImpl implements StairClimberData 

StepClimberDataImpl

 class StepClimberDataImpl implements StepClimberData 

SupportedHeartRateRangeImpl

 class SupportedHeartRateRangeImpl implements SupportedHeartRateRange 

SupportedInclinationRangeImpl

 class SupportedInclinationRangeImpl implements SupportedInclinationRange 

SupportedNewAlertCategoryImpl

 class SupportedNewAlertCategoryImpl implements SupportedNewAlertCategory 

SupportedPowerRangeImpl

 class SupportedPowerRangeImpl implements SupportedPowerRange 

SupportedResistanceLevelRangeImpl

 class SupportedResistanceLevelRangeImpl implements SupportedResistanceLevelRange 

SupportedSpeedRangeImpl

 class SupportedSpeedRangeImpl implements SupportedSpeedRange 

SupportedUnreadAlertCategoryImpl

 class SupportedUnreadAlertCategoryImpl implements SupportedUnreadAlertCategory 

SystemIdImpl

 class SystemIdImpl implements SystemId 

TemperatureImpl

 class TemperatureImpl implements Temperature 

TemperatureMeasurementImpl

 class TemperatureMeasurementImpl implements TemperatureMeasurement 

TemperatureTypeImpl

 class TemperatureTypeImpl implements TemperatureType 

ThreeZoneHeartRateLimitsImpl

 class ThreeZoneHeartRateLimitsImpl implements ThreeZoneHeartRateLimits 

The fields in the above table are in the order of LSO to MSO. Where LSO = Least Significant Octet and MSO = Most Significant Octet.

TimeAccuracyImpl

 class TimeAccuracyImpl implements TimeAccuracy 

TimeSourceImpl

 class TimeSourceImpl implements TimeSource 

TimeTriggerSettingImpl

 class TimeTriggerSettingImpl implements TimeTriggerSetting 

TimeUpdateControlPointImpl

 class TimeUpdateControlPointImpl implements TimeUpdateControlPoint 

TimeUpdateStateImpl

 class TimeUpdateStateImpl implements TimeUpdateState 

TimeWithDstImpl

 class TimeWithDstImpl implements TimeWithDst 

TimeZoneImpl

 class TimeZoneImpl implements TimeZone 

TreadmillDataImpl

 class TreadmillDataImpl implements TreadmillData 

TrueWindDirectionImpl

 class TrueWindDirectionImpl implements TrueWindDirection 

TrueWindSpeedImpl

 class TrueWindSpeedImpl implements TrueWindSpeed 

TwoZoneHeartRateLimitImpl

 class TwoZoneHeartRateLimitImpl implements TwoZoneHeartRateLimit 

TxPowerLevelImpl

 class TxPowerLevelImpl implements TxPowerLevel 

UncertaintyImpl

 class UncertaintyImpl implements Uncertainty 

UnreadAlertStatusImpl

 class UnreadAlertStatusImpl implements UnreadAlertStatus 

UriImpl

 class UriImpl implements Uri 

UserIndexImpl

 class UserIndexImpl implements UserIndex 

UvIndexImpl

 class UvIndexImpl implements UvIndex 

ValueTriggerSettingImpl

 class ValueTriggerSettingImpl implements ValueTriggerSetting 

Vo2MaxImpl

 class Vo2MaxImpl implements Vo2Max 

WaistCircumferenceImpl

 class WaistCircumferenceImpl implements WaistCircumference 

WeightImpl

 class WeightImpl implements Weight 

WeightMeasurementImpl

 class WeightMeasurementImpl implements WeightMeasurement 

The fields in the above table are in the order of LSO to MSO. Where LSO = Least Significant Octet and MSO = Most Significant Octet.

WeightScaleFeatureImpl

 class WeightScaleFeatureImpl implements WeightScaleFeature 

WindChillImpl

 class WindChillImpl implements WindChill 

Functions

aerobicHeartRateLowerLimitFromDataView

 function aerobicHeartRateLowerLimitFromDataView(dataView: DataView | DataViewReader, indexStart?: number): AerobicHeartRateLowerLimit;

Parse from a DataView into AerobicHeartRateLowerLimit.

aerobicHeartRateUpperLimitFromDataView

 function aerobicHeartRateUpperLimitFromDataView(dataView: DataView | DataViewReader, indexStart?: number): AerobicHeartRateUpperLimit;

Parse from a DataView into AerobicHeartRateUpperLimit.

aerobicThresholdFromDataView

 function aerobicThresholdFromDataView(dataView: DataView | DataViewReader, indexStart?: number): AerobicThreshold;

Parse from a DataView into AerobicThreshold.

ageFromDataView

 function ageFromDataView(dataView: DataView | DataViewReader, indexStart?: number): Age;

Parse from a DataView into Age.

aggregateFromDataView

 function aggregateFromDataView(dataView: DataView | DataViewReader, indexStart?: number): Aggregate;

Parse from a DataView into Aggregate.

alertCategoryIdBitMaskFromDataView

 function alertCategoryIdBitMaskFromDataView(dataView: DataView | DataViewReader, indexStart?: number): AlertCategoryIdBitMask;

Parse from a DataView into AlertCategoryIdBitMask.

alertCategoryIdFromDataView

 function alertCategoryIdFromDataView(dataView: DataView | DataViewReader, indexStart?: number): AlertCategoryId;

Parse from a DataView into AlertCategoryId.

alertLevelFromDataView

 function alertLevelFromDataView(dataView: DataView | DataViewReader, indexStart?: number): AlertLevel;

Parse from a DataView into AlertLevel.

alertNotificationControlPointFromDataView

 function alertNotificationControlPointFromDataView(dataView: DataView | DataViewReader, indexStart?: number): AlertNotificationControlPoint;

Parse from a DataView into AlertNotificationControlPoint.

alertStatusFromDataView

 function alertStatusFromDataView(dataView: DataView | DataViewReader, indexStart?: number): AlertStatus;

Parse from a DataView into AlertStatus.

altitudeFromDataView

 function altitudeFromDataView(dataView: DataView | DataViewReader, indexStart?: number): Altitude;

Parse from a DataView into Altitude.

anaerobicHeartRateLowerLimitFromDataView

 function anaerobicHeartRateLowerLimitFromDataView(dataView: DataView | DataViewReader, indexStart?: number): AnaerobicHeartRateLowerLimit;

Parse from a DataView into AnaerobicHeartRateLowerLimit.

anaerobicHeartRateUpperLimitFromDataView

 function anaerobicHeartRateUpperLimitFromDataView(dataView: DataView | DataViewReader, indexStart?: number): AnaerobicHeartRateUpperLimit;

Parse from a DataView into AnaerobicHeartRateUpperLimit.

anaerobicThresholdFromDataView

 function anaerobicThresholdFromDataView(dataView: DataView | DataViewReader, indexStart?: number): AnaerobicThreshold;

Parse from a DataView into AnaerobicThreshold.

analogFromDataView

 function analogFromDataView(dataView: DataView | DataViewReader, indexStart?: number): Analog;

Parse from a DataView into Analog.

apparentWindDirectionFromDataView

 function apparentWindDirectionFromDataView(dataView: DataView | DataViewReader, indexStart?: number): ApparentWindDirection;

Parse from a DataView into ApparentWindDirection.

apparentWindSpeedFromDataView

 function apparentWindSpeedFromDataView(dataView: DataView | DataViewReader, indexStart?: number): ApparentWindSpeed;

Parse from a DataView into ApparentWindSpeed.

barometricPressureTrendFromDataView

 function barometricPressureTrendFromDataView(dataView: DataView | DataViewReader, indexStart?: number): BarometricPressureTrend;

Parse from a DataView into BarometricPressureTrend.

batteryLevelFromDataView

 function batteryLevelFromDataView(dataView: DataView | DataViewReader, indexStart?: number): BatteryLevel;

Parse from a DataView into BatteryLevel.

bloodPressureFeatureFromDataView

 function bloodPressureFeatureFromDataView(dataView: DataView | DataViewReader, indexStart?: number): BloodPressureFeature;

Parse from a DataView into BloodPressureFeature.

bloodPressureMeasurementFromDataView

 function bloodPressureMeasurementFromDataView(dataView: DataView | DataViewReader, indexStart?: number): BloodPressureMeasurement;

Parse from a DataView into BloodPressureMeasurement.

bodyCompositionFeatureFromDataView

 function bodyCompositionFeatureFromDataView(dataView: DataView | DataViewReader, indexStart?: number): BodyCompositionFeature;

Parse from a DataView into BodyCompositionFeature.

bodyCompositionMeasurementFromDataView

 function bodyCompositionMeasurementFromDataView(dataView: DataView | DataViewReader, indexStart?: number): BodyCompositionMeasurement;

Parse from a DataView into BodyCompositionMeasurement.

bodySensorLocationFromDataView

 function bodySensorLocationFromDataView(dataView: DataView | DataViewReader, indexStart?: number): BodySensorLocation;

Parse from a DataView into BodySensorLocation.

bootKeyboardInputReportFromDataView

 function bootKeyboardInputReportFromDataView(dataView: DataView | DataViewReader, indexStart?: number): BootKeyboardInputReport;

Parse from a DataView into BootKeyboardInputReport.

bootKeyboardOutputReportFromDataView

 function bootKeyboardOutputReportFromDataView(dataView: DataView | DataViewReader, indexStart?: number): BootKeyboardOutputReport;

Parse from a DataView into BootKeyboardOutputReport.

bootMouseInputReportFromDataView

 function bootMouseInputReportFromDataView(dataView: DataView | DataViewReader, indexStart?: number): BootMouseInputReport;

Parse from a DataView into BootMouseInputReport.

btValueReaderFor

btValueReaderFor: (idOrName: string | number) => BtReaderClass | undefined

cgmFeatureFromDataView

 function cgmFeatureFromDataView(dataView: DataView | DataViewReader, indexStart?: number): CgmFeature;

Parse from a DataView into CgmFeature.

crossTrainerDataFromDataView

 function crossTrainerDataFromDataView(dataView: DataView | DataViewReader, indexStart?: number): CrossTrainerData;

Parse from a DataView into CrossTrainerData.

cscFeatureFromDataView

 function cscFeatureFromDataView(dataView: DataView | DataViewReader, indexStart?: number): CscFeature;

Parse from a DataView into CscFeature.

cscMeasurementFromDataView

 function cscMeasurementFromDataView(dataView: DataView | DataViewReader, indexStart?: number): CscMeasurement;

Parse from a DataView into CscMeasurement.

currentTimeFromDataView

 function currentTimeFromDataView(dataView: DataView | DataViewReader, indexStart?: number): CurrentTime;

Parse from a DataView into CurrentTime.

cyclingPowerFeatureFromDataView

 function cyclingPowerFeatureFromDataView(dataView: DataView | DataViewReader, indexStart?: number): CyclingPowerFeature;

Parse from a DataView into CyclingPowerFeature.

cyclingPowerMeasurementFromDataView

 function cyclingPowerMeasurementFromDataView(dataView: DataView | DataViewReader, indexStart?: number): CyclingPowerMeasurement;

Parse from a DataView into CyclingPowerMeasurement.

cyclingPowerVectorFromDataView

 function cyclingPowerVectorFromDataView(dataView: DataView | DataViewReader, indexStart?: number): CyclingPowerVector;

Parse from a DataView into CyclingPowerVector.

databaseChangeIncrementFromDataView

 function databaseChangeIncrementFromDataView(dataView: DataView | DataViewReader, indexStart?: number): DatabaseChangeIncrement;

Parse from a DataView into DatabaseChangeIncrement.

dataViewFromHex

dataViewFromHex: (hex: string) => DataView

Build a DataView from a hex-encoded string. This is a polyfill for Uint8Array.fromHex().

dataViewReader

dataViewReader: (dataView: DataView | DataViewReader, indexStart?: number) => DataViewReader

dateOfBirthFromDataView

 function dateOfBirthFromDataView(dataView: DataView | DataViewReader, indexStart?: number): DateOfBirth;

Parse from a DataView into DateOfBirth.

dateOfThresholdAssessmentFromDataView

 function dateOfThresholdAssessmentFromDataView(dataView: DataView | DataViewReader, indexStart?: number): DateOfThresholdAssessment;

Parse from a DataView into DateOfThresholdAssessment.

dateTimeFromDataView

 function dateTimeFromDataView(dataView: DataView | DataViewReader, indexStart?: number): DateTime;

Parse from a DataView into DateTime.

dayDateTimeFromDataView

 function dayDateTimeFromDataView(dataView: DataView | DataViewReader, indexStart?: number): DayDateTime;

Parse from a DataView into DayDateTime.

dayOfWeekFromDataView

 function dayOfWeekFromDataView(dataView: DataView | DataViewReader, indexStart?: number): DayOfWeek;

Parse from a DataView into DayOfWeek.

dewPointFromDataView

 function dewPointFromDataView(dataView: DataView | DataViewReader, indexStart?: number): DewPoint;

Parse from a DataView into DewPoint.

digitalFromDataView

 function digitalFromDataView(dataView: DataView | DataViewReader, indexStart?: number): Digital;

Parse from a DataView into Digital.

dstOffsetFromDataView

 function dstOffsetFromDataView(dataView: DataView | DataViewReader, indexStart?: number): DstOffset;

Parse from a DataView into DstOffset.

elevationFromDataView

 function elevationFromDataView(dataView: DataView | DataViewReader, indexStart?: number): Elevation;

Parse from a DataView into Elevation.

emailAddressFromDataView

 function emailAddressFromDataView(dataView: DataView | DataViewReader, indexStart?: number): EmailAddress;

Parse from a DataView into EmailAddress.

exactTime256FromDataView

 function exactTime256FromDataView(dataView: DataView | DataViewReader, indexStart?: number): ExactTime256;

Parse from a DataView into ExactTime256.

fatBurnHeartRateLowerLimitFromDataView

 function fatBurnHeartRateLowerLimitFromDataView(dataView: DataView | DataViewReader, indexStart?: number): FatBurnHeartRateLowerLimit;

Parse from a DataView into FatBurnHeartRateLowerLimit.

fatBurnHeartRateUpperLimitFromDataView

 function fatBurnHeartRateUpperLimitFromDataView(dataView: DataView | DataViewReader, indexStart?: number): FatBurnHeartRateUpperLimit;

Parse from a DataView into FatBurnHeartRateUpperLimit.

firmwareRevisionStringFromDataView

 function firmwareRevisionStringFromDataView(dataView: DataView | DataViewReader, indexStart?: number): FirmwareRevisionString;

Parse from a DataView into FirmwareRevisionString.

firstNameFromDataView

 function firstNameFromDataView(dataView: DataView | DataViewReader, indexStart?: number): FirstName;

Parse from a DataView into FirstName.

fiveZoneHeartRateLimitsFromDataView

 function fiveZoneHeartRateLimitsFromDataView(dataView: DataView | DataViewReader, indexStart?: number): FiveZoneHeartRateLimits;

Parse from a DataView into FiveZoneHeartRateLimits.

floorNumberFromDataView

 function floorNumberFromDataView(dataView: DataView | DataViewReader, indexStart?: number): FloorNumber;

Parse from a DataView into FloorNumber.

gapAppearanceFromDataView

 function gapAppearanceFromDataView(dataView: DataView | DataViewReader, indexStart?: number): GapAppearance;

Parse from a DataView into GapAppearance.

gapDeviceNameFromDataView

 function gapDeviceNameFromDataView(dataView: DataView | DataViewReader, indexStart?: number): GapDeviceName;

Parse from a DataView into GapDeviceName.

gapPeripheralPreferredConnectionParametersFromDataView

 function gapPeripheralPreferredConnectionParametersFromDataView(dataView: DataView | DataViewReader, indexStart?: number): GapPeripheralPreferredConnectionParameters;

Parse from a DataView into GapPeripheralPreferredConnectionParameters.

gapPeripheralPrivacyFlagFromDataView

 function gapPeripheralPrivacyFlagFromDataView(dataView: DataView | DataViewReader, indexStart?: number): GapPeripheralPrivacyFlag;

Parse from a DataView into GapPeripheralPrivacyFlag.

gapReconnectionAddressFromDataView

 function gapReconnectionAddressFromDataView(dataView: DataView | DataViewReader, indexStart?: number): GapReconnectionAddress;

Parse from a DataView into GapReconnectionAddress.

gattCharacteristicAggregateFormatFromDataView

 function gattCharacteristicAggregateFormatFromDataView(dataView: DataView | DataViewReader, indexStart?: number): GattCharacteristicAggregateFormat;

Parse from a DataView into GattCharacteristicAggregateFormat.

gattCharacteristicExtendedPropertiesFromDataView

 function gattCharacteristicExtendedPropertiesFromDataView(dataView: DataView | DataViewReader, indexStart?: number): GattCharacteristicExtendedProperties;

Parse from a DataView into GattCharacteristicExtendedProperties.

gattCharacteristicName

gattCharacteristicName: (idOrName: string | number | null | undefined) => "string" | "boolean" | "current_time" | "device_time" | "acceleration" | "acs_control_point" | "acs_data_in" | "acs_data_out_indicate" | "acs_data_out_notify" | "acs_status" | "active_preset_index" | "activity_goal" | "advertising_constant_tone_extension_interval" | "advertising_constant_tone_extension_minimum_length" | "advertising_constant_tone_extension_minimum_transmit_count" | "advertising_constant_tone_extension_phy" | "advertising_constant_tone_extension_transmit_duration" | "aerobic_heart_rate_lower_limit" | "aerobic_heart_rate_upper_limit" | "aerobic_threshold" | "age" | "aggregate" | "alert_category_id" | "alert_category_id_bit_mask" | "alert_level" | "alert_notification_control_point" | "alert_status" | "altitude" | "ammonia_concentration" | "anaerobic_heart_rate_lower_limit" | "anaerobic_heart_rate_upper_limit" | "anaerobic_threshold" | "analog" | "analog_output" | "ap_sync_key_material" | "apparent_energy_32" | "apparent_power" | "apparent_wind_direction" | "apparent_wind_speed" | "ase_control_point" | "audio_input_control_point" | "audio_input_description" | "audio_input_state" | "audio_input_status" | "audio_input_type" | "audio_location" | "audio_output_description" | "available_audio_contexts" | "average_current" | "average_voltage" | "barometric_pressure_trend" | "battery_critical_status" | "battery_energy_status" | "battery_health_information" | "battery_health_status" | "battery_information" | "battery_level" | "battery_level_state" | "battery_level_status" | "battery_power_state" | "battery_time_status" | "bearer_list_current_calls" | "bearer_provider_name" | "bearer_signal_strength" | "bearer_signal_strength_reporting_interval" | "bearer_technology" | "bearer_uci" | "bearer_uri_schemes_supported_list" | "bgr_features" | "bgs_features" | "blood_pressure_feature" | "blood_pressure_measurement" | "blood_pressure_record" | "bluetooth_sig_data" | "body_composition_feature" | "body_composition_measurement" | "body_sensor_location" | "bond_management_control_point" | "bond_management_feature" | "boot_keyboard_input_report" | "boot_keyboard_output_report" | "boot_mouse_input_report" | "br_edr_handover_data" | "broadcast_audio_scan_control_point" | "broadcast_receive_state" | "bss_control_point" | "bss_response" | "call_control_point" | "call_control_point_optional_opcodes" | "call_friendly_name" | "call_state" | "caloric_intake" | "carbon_monoxide_concentration" | "cardiorespiratory_activity_instantaneous_data" | "cardiorespiratory_activity_summary_data" | "cgm_feature" | "cgm_measurement" | "cgm_session_run_time" | "cgm_session_start_time" | "cgm_specific_ops_control_point" | "cgm_status" | "chromatic_distance_from_planckian" | "chromaticity_coordinate" | "chromaticity_coordinates" | "chromaticity_in_cct_and_duv_values" | "chromaticity_tolerance" | "cie_13_3_1995_color_rendering_index" | "client_supported_features" | "co2_concentration" | "coefficient" | "constant_tone_extension_enable" | "content_control_id" | "correlated_color_temperature" | "cosine_of_the_angle" | "count_16" | "count_24" | "country_code" | "cross_trainer_data" | "csc_feature" | "csc_measurement" | "current_elapsed_time" | "current_group_object_id" | "current_track_object_id" | "current_track_segments_object_id" | "cycling_power_control_point" | "cycling_power_feature" | "cycling_power_measurement" | "cycling_power_vector" | "database_change_increment" | "database_hash" | "date_of_birth" | "date_of_threshold_assessment" | "date_time" | "date_utc" | "day_date_time" | "day_of_week" | "descriptor_value_changed" | "device_time_control_point" | "device_time_feature" | "device_time_parameters" | "device_wearing_position" | "dew_point" | "digital" | "digital_output" | "dst_offset" | "electric_current" | "electric_current_range" | "electric_current_specification" | "electric_current_statistics" | "elevation" | "email_address" | "emergency_id" | "emergency_text" | "encrypted_data_key_material" | "energy" | "energy_32" | "energy_in_a_period_of_day" | "enhanced_blood_pressure_measurement" | "enhanced_intermediate_cuff_pressure" | "esl_address" | "esl_control_point" | "esl_current_absolute_time" | "esl_display_information" | "esl_image_information" | "esl_led_information" | "esl_response_key_material" | "esl_sensor_information" | "estimated_service_date" | "event_statistics" | "exact_time_100" | "exact_time_256" | "fat_burn_heart_rate_lower_limit" | "fat_burn_heart_rate_upper_limit" | "firmware_revision_string" | "first_name" | "first_use_date" | "fitness_machine_control_point" | "fitness_machine_feature" | "fitness_machine_status" | "five_zone_heart_rate_limits" | "fixed_string_16" | "fixed_string_24" | "fixed_string_36" | "fixed_string_64" | "fixed_string_8" | "floor_number" | "force" | "four_zone_heart_rate_limits" | "gain_settings_attribute" | "gap.appearance" | "gap.central_address_resolution" | "gap.device_name" | "gap.peripheral_preferred_connection_parameters" | "gap.peripheral_privacy_flag" | "gap.reconnection_address" | "gatt.service_changed" | "gender" | "general_activity_instantaneous_data" | "general_activity_summary_data" | "generic_level" | "ghs_control_point" | "global_trade_item_number" | "glucose_feature" | "glucose_measurement" | "glucose_measurement_context" | "gmap_role" | "gust_factor" | "handedness" | "hardware_revision_string" | "health_sensor_features" | "hearing_aid_features" | "hearing_aid_preset_control_point" | "heart_rate_control_point" | "heart_rate_max" | "heart_rate_measurement" | "heat_index" | "height" | "hid_control_point" | "hid_information" | "high_intensity_exercise_threshold" | "high_resolution_height" | "high_temperature" | "high_voltage" | "hip_circumference" | "http_control_point" | "http_entity_body" | "http_headers" | "http_status_code" | "https_security" | "humidity" | "idd_annunciation_status" | "idd_command_control_point" | "idd_command_data" | "idd_features" | "idd_history_data" | "idd_record_access_control_point" | "idd_status" | "idd_status_changed" | "idd_status_reader_control_point" | "ieee_11073-20601_regulatory_certification_data_list" | "illuminance" | "imd_control" | "imd_historical_data" | "imd_status" | "imds_descriptor_value_changed" | "incoming_call" | "incoming_call_target_bearer_uri" | "indoor_bike_data" | "indoor_positioning_configuration" | "intermediate_cuff_pressure" | "intermediate_temperature" | "irradiance" | "language" | "last_name" | "latitude" | "le_gatt_security_levels" | "life_cycle_data" | "light_distribution" | "light_output" | "light_source_type" | "linear_position" | "live_health_observations" | "ln_control_point" | "ln_feature" | "local_east_coordinate" | "local_north_coordinate" | "local_time_information" | "location_and_speed" | "location_name" | "lock_characteristic" | "longitude" | "luminous_efficacy" | "luminous_energy" | "luminous_exposure" | "luminous_flux" | "luminous_flux_range" | "luminous_intensity" | "magnetic_declination" | "magnetic_flux_density_2d" | "magnetic_flux_density_3d" | "manufacturer_name_string" | "mass_flow" | "maximum_recommended_heart_rate" | "measurement_interval" | "media_control_point" | "media_control_point_opcodes_supported" | "media_player_icon_object_id" | "media_player_icon_url" | "media_player_name" | "media_state" | "medical_devices" | "mesh_provisioning_data_in" | "mesh_provisioning_data_out" | "mesh_proxy_data_in" | "mesh_proxy_data_out" | "methane_concentration" | "middle_name" | "model_number_string" | "mute" | "navigation" | "network_availability" | "new_alert" | "next_track_object_id" | "nitrogen_dioxide_concentration" | "noise" | "non-methane_volatile_organic_compounds_concentration" | "object_action_control_point" | "object_changed" | "object_first_created" | "object_id" | "object_last_modified" | "object_list_control_point" | "object_list_filter" | "object_name" | "object_properties" | "object_size" | "object_type" | "observation_schedule_changed" | "on-demand_ranging_data" | "ots_feature" | "ozone_concentration" | "parent_group_object_id" | "particulate_matter_pm1_concentration" | "particulate_matter_pm10_concentration" | "particulate_matter_pm2_5_concentration" | "perceived_lightness" | "percentage_8" | "percentage_8_steps" | "physical_activity_current_session" | "physical_activity_monitor_control_point" | "physical_activity_monitor_features" | "physical_activity_session_descriptor" | "playback_speed" | "playing_order" | "playing_orders_supported" | "plx_continuous_measurement" | "plx_features" | "plx_spot_check_measurement" | "pnp_id" | "pollen_concentration" | "position_2d" | "position_3d" | "position_quality" | "power" | "power_specification" | "preferred_units" | "pressure" | "protocol_mode" | "pulse_oximetry_control_point" | "rainfall" | "ranging_data_ready" | "rank_characteristic" | "ras_control_point" | "ras_features" | "rc_feature" | "rc_settings" | "real-time_ranging_data" | "reconnection_configuration_control_point" | "record_access_control_point" | "reference_time_information" | "registered_user" | "relative_runtime_in_a_correlated_color_temperature_range" | "relative_runtime_in_a_current_range" | "relative_runtime_in_a_generic_level_range" | "relative_value_in_a_period_of_day" | "relative_value_in_a_temperature_range" | "relative_value_in_a_voltage_range" | "relative_value_in_an_illuminance_range" | "removable" | "report" | "report_map" | "resolvable_private_address_only" | "resting_heart_rate" | "ringer_control_point" | "ringer_setting" | "rotational_speed" | "rower_data" | "rsc_feature" | "rsc_measurement" | "sc_control_point" | "scan_interval_window" | "scan_refresh" | "scientific_temperature_celsius" | "search_control_point" | "search_results_object_id" | "secondary_time_zone" | "sedentary_interval_notification" | "seeking_speed" | "sensor_location" | "serial_number_string" | "server_supported_features" | "service_cycle_data" | "service_required" | "set_identity_resolving_key" | "sink_ase" | "sink_audio_locations" | "sink_pac" | "size_characteristic" | "sleep_activity_instantaneous_data" | "sleep_activity_summary_data" | "software_revision_string" | "source_ase" | "source_audio_locations" | "source_pac" | "sport_type_for_aerobic_and_anaerobic_thresholds" | "stair_climber_data" | "status_flags" | "step_climber_data" | "step_counter_activity_summary_data" | "stored_health_observations" | "stride_length" | "sulfur_dioxide_concentration" | "sulfur_hexafluoride_concentration" | "supported_audio_contexts" | "supported_heart_rate_range" | "supported_inclination_range" | "supported_new_alert_category" | "supported_power_range" | "supported_resistance_level_range" | "supported_speed_range" | "supported_unread_alert_category" | "system_id" | "tds_control_point" | "temperature" | "temperature_8" | "temperature_8_in_a_period_of_day" | "temperature_8_statistics" | "temperature_celsius" | "temperature_fahrenheit" | "temperature_measurement" | "temperature_range" | "temperature_statistics" | "temperature_type" | "termination_reason" | "three_zone_heart_rate_limits" | "time_accuracy" | "time_broadcast" | "time_change_log_data" | "time_decihour_8" | "time_exponential_8" | "time_hour_24" | "time_millisecond_24" | "time_second_16" | "time_second_32" | "time_second_8" | "time_source" | "time_update_control_point" | "time_update_state" | "time_with_dst" | "time_zone" | "tmap_role" | "torque" | "track_changed" | "track_duration" | "track_position" | "track_title" | "training_status" | "treadmill_data" | "true_wind_direction" | "true_wind_speed" | "two_zone_heart_rate_limits" | "tx_power_level" | "ugg_features" | "ugt_features" | "uncertainty" | "unread_alert_status" | "uri" | "user_control_point" | "user_index" | "uv_index" | "vo2_max" | "voc_concentration" | "voltage" | "voltage_frequency" | "voltage_specification" | "voltage_statistics" | "volume_control_point" | "volume_flags" | "volume_flow" | "volume_offset_control_point" | "volume_offset_state" | "volume_state" | "waist_circumference" | "weight" | "weight_measurement" | "weight_scale_feature" | "wind_chill" | "work_cycle_data" | "length" | undefined

gattCharacteristicPresentationFormatFromDataView

 function gattCharacteristicPresentationFormatFromDataView(dataView: DataView | DataViewReader, indexStart?: number): GattCharacteristicPresentationFormat;

Parse from a DataView into GattCharacteristicPresentationFormat.

gattCharacteristicUserDescriptionFromDataView

 function gattCharacteristicUserDescriptionFromDataView(dataView: DataView | DataViewReader, indexStart?: number): GattCharacteristicUserDescription;

Parse from a DataView into GattCharacteristicUserDescription.

gattClientCharacteristicConfigurationFromDataView

 function gattClientCharacteristicConfigurationFromDataView(dataView: DataView | DataViewReader, indexStart?: number): GattClientCharacteristicConfiguration;

Parse from a DataView into GattClientCharacteristicConfiguration.

gattDescriptorName

gattDescriptorName: (idOrName: string | number | null | undefined) => "complete_br_edr_transport_block_data" | "es_configuration" | "es_measurement" | "es_trigger_setting" | "external_report_reference" | "gatt.characteristic_aggregate_format" | "gatt.characteristic_extended_properties" | "gatt.characteristic_presentation_format" | "gatt.characteristic_user_description" | "gatt.client_characteristic_configuration" | "gatt.server_characteristic_configuration" | "manufacturer_limits" | "measurement_description" | "number_of_digitals" | "observation_schedule" | "process_tolerances" | "report_reference" | "time_trigger_setting" | "valid_range" | "valid_range_accuracy" | "value_trigger_setting" | undefined

gattServerCharacteristicConfigurationFromDataView

 function gattServerCharacteristicConfigurationFromDataView(dataView: DataView | DataViewReader, indexStart?: number): GattServerCharacteristicConfiguration;

Parse from a DataView into GattServerCharacteristicConfiguration.

gattServiceChangedFromDataView

 function gattServiceChangedFromDataView(dataView: DataView | DataViewReader, indexStart?: number): GattServiceChanged;

Parse from a DataView into GattServiceChanged.

gattServiceName

gattServiceName: (idOrName: string | number | null | undefined) => "alert_notification" | "audio_input_control" | "audio_stream_control" | "authorization_control" | "automation_io" | "basic_audio_announcement" | "battery_service" | "binary_sensor" | "blood_pressure" | "body_composition" | "bond_management" | "broadcast_audio_announcement" | "broadcast_audio_scan" | "common_audio" | "constant_tone_extension" | "continuous_glucose_monitoring" | "coordinated_set_identification" | "current_time" | "cycling_power" | "cycling_speed_and_cadence" | "device_information" | "device_time" | "elapsed_time" | "electronic_shelf_label" | "emergency_configuration" | "environmental_sensing" | "fitness_machine" | "gaming_audio" | "gap" | "gatt" | "generic_health_sensor" | "generic_media_control" | "generic_telephone_bearer" | "glucose" | "health_thermometer" | "hearing_access" | "heart_rate" | "http_proxy" | "human_interface_device" | "immediate_alert" | "indoor_positioning" | "industrial_measurement_device" | "insulin_delivery" | "internet_protocol_support" | "link_loss" | "location_and_navigation" | "media_control" | "mesh_provisioning" | "mesh_proxy" | "mesh_proxy_solicitation" | "microphone_control" | "next_dst_change" | "object_transfer" | "phone_alert_status" | "physical_activity_monitor" | "public_broadcast_announcement" | "published_audio_capabilities" | "pulse_oximeter" | "reconnection_configuration" | "reference_time_update" | "running_speed_and_cadence" | "scan_parameters" | "telephone_bearer" | "telephony_and_media_audio" | "transport_discovery" | "tx_power" | "user_data" | "volume_control" | "volume_offset" | "weight_scale" | undefined

gattUuidFromValue

gattUuidFromValue: (num: number) => string

Convert the given value to hex and wrap it in a full UUID format.

genderFromDataView

 function genderFromDataView(dataView: DataView | DataViewReader, indexStart?: number): Gender;

Parse from a DataView into Gender.

glucoseFeatureFromDataView

 function glucoseFeatureFromDataView(dataView: DataView | DataViewReader, indexStart?: number): GlucoseFeature;

Parse from a DataView into GlucoseFeature.

glucoseMeasurementContextFromDataView

 function glucoseMeasurementContextFromDataView(dataView: DataView | DataViewReader, indexStart?: number): GlucoseMeasurementContext;

Parse from a DataView into GlucoseMeasurementContext.

glucoseMeasurementFromDataView

 function glucoseMeasurementFromDataView(dataView: DataView | DataViewReader, indexStart?: number): GlucoseMeasurement;

Parse from a DataView into GlucoseMeasurement.

gustFactorFromDataView

 function gustFactorFromDataView(dataView: DataView | DataViewReader, indexStart?: number): GustFactor;

Parse from a DataView into GustFactor.

hardwareRevisionStringFromDataView

 function hardwareRevisionStringFromDataView(dataView: DataView | DataViewReader, indexStart?: number): HardwareRevisionString;

Parse from a DataView into HardwareRevisionString.

heartRateControlPointFromDataView

 function heartRateControlPointFromDataView(dataView: DataView | DataViewReader, indexStart?: number): HeartRateControlPoint;

Parse from a DataView into HeartRateControlPoint.

heartRateMaxFromDataView

 function heartRateMaxFromDataView(dataView: DataView | DataViewReader, indexStart?: number): HeartRateMax;

Parse from a DataView into HeartRateMax.

heartRateMeasurementFromDataView

 function heartRateMeasurementFromDataView(dataView: DataView | DataViewReader, indexStart?: number): HeartRateMeasurement;

Parse from a DataView into HeartRateMeasurement.

heatIndexFromDataView

 function heatIndexFromDataView(dataView: DataView | DataViewReader, indexStart?: number): HeatIndex;

Parse from a DataView into HeatIndex.

heightFromDataView

 function heightFromDataView(dataView: DataView | DataViewReader, indexStart?: number): Height;

Parse from a DataView into Height.

hexFromDataView

hexFromDataView: (dataView: DataView | DataViewReader) => string

Hex-encode the binary data in a DataView.

hidControlPointFromDataView

 function hidControlPointFromDataView(dataView: DataView | DataViewReader, indexStart?: number): HidControlPoint;

Parse from a DataView into HidControlPoint.

hidInformationFromDataView

 function hidInformationFromDataView(dataView: DataView | DataViewReader, indexStart?: number): HidInformation;

Parse from a DataView into HidInformation.

hipCircumferenceFromDataView

 function hipCircumferenceFromDataView(dataView: DataView | DataViewReader, indexStart?: number): HipCircumference;

Parse from a DataView into HipCircumference.

httpControlPointFromDataView

 function httpControlPointFromDataView(dataView: DataView | DataViewReader, indexStart?: number): HttpControlPoint;

Parse from a DataView into HttpControlPoint.

httpEntityBodyFromDataView

 function httpEntityBodyFromDataView(dataView: DataView | DataViewReader, indexStart?: number): HttpEntityBody;

Parse from a DataView into HttpEntityBody.

httpHeadersFromDataView

 function httpHeadersFromDataView(dataView: DataView | DataViewReader, indexStart?: number): HttpHeaders;

Parse from a DataView into HttpHeaders.

httpsSecurityFromDataView

 function httpsSecurityFromDataView(dataView: DataView | DataViewReader, indexStart?: number): HttpsSecurity;

Parse from a DataView into HttpsSecurity.

httpStatusCodeFromDataView

 function httpStatusCodeFromDataView(dataView: DataView | DataViewReader, indexStart?: number): HttpStatusCode;

Parse from a DataView into HttpStatusCode.

humidityFromDataView

 function humidityFromDataView(dataView: DataView | DataViewReader, indexStart?: number): Humidity;

Parse from a DataView into Humidity.

indoorBikeDataFromDataView

 function indoorBikeDataFromDataView(dataView: DataView | DataViewReader, indexStart?: number): IndoorBikeData;

Parse from a DataView into IndoorBikeData.

indoorPositioningConfigurationFromDataView

 function indoorPositioningConfigurationFromDataView(dataView: DataView | DataViewReader, indexStart?: number): IndoorPositioningConfiguration;

Parse from a DataView into IndoorPositioningConfiguration.

intermediateCuffPressureFromDataView

 function intermediateCuffPressureFromDataView(dataView: DataView | DataViewReader, indexStart?: number): IntermediateCuffPressure;

Parse from a DataView into IntermediateCuffPressure.

intermediateTemperatureFromDataView

 function intermediateTemperatureFromDataView(dataView: DataView | DataViewReader, indexStart?: number): IntermediateTemperature;

Parse from a DataView into IntermediateTemperature.

irradianceFromDataView

 function irradianceFromDataView(dataView: DataView | DataViewReader, indexStart?: number): Irradiance;

Parse from a DataView into Irradiance.

isGattCharacteristicName

isGattCharacteristicName: (value: unknown) => value is "string" | "boolean" | "current_time" | "device_time" | "acceleration" | "acs_control_point" | "acs_data_in" | "acs_data_out_indicate" | "acs_data_out_notify" | "acs_status" | "active_preset_index" | "activity_goal" | "advertising_constant_tone_extension_interval" | "advertising_constant_tone_extension_minimum_length" | "advertising_constant_tone_extension_minimum_transmit_count" | "advertising_constant_tone_extension_phy" | "advertising_constant_tone_extension_transmit_duration" | "aerobic_heart_rate_lower_limit" | "aerobic_heart_rate_upper_limit" | "aerobic_threshold" | "age" | "aggregate" | "alert_category_id" | "alert_category_id_bit_mask" | "alert_level" | "alert_notification_control_point" | "alert_status" | "altitude" | "ammonia_concentration" | "anaerobic_heart_rate_lower_limit" | "anaerobic_heart_rate_upper_limit" | "anaerobic_threshold" | "analog" | "analog_output" | "ap_sync_key_material" | "apparent_energy_32" | "apparent_power" | "apparent_wind_direction" | "apparent_wind_speed" | "ase_control_point" | "audio_input_control_point" | "audio_input_description" | "audio_input_state" | "audio_input_status" | "audio_input_type" | "audio_location" | "audio_output_description" | "available_audio_contexts" | "average_current" | "average_voltage" | "barometric_pressure_trend" | "battery_critical_status" | "battery_energy_status" | "battery_health_information" | "battery_health_status" | "battery_information" | "battery_level" | "battery_level_state" | "battery_level_status" | "battery_power_state" | "battery_time_status" | "bearer_list_current_calls" | "bearer_provider_name" | "bearer_signal_strength" | "bearer_signal_strength_reporting_interval" | "bearer_technology" | "bearer_uci" | "bearer_uri_schemes_supported_list" | "bgr_features" | "bgs_features" | "blood_pressure_feature" | "blood_pressure_measurement" | "blood_pressure_record" | "bluetooth_sig_data" | "body_composition_feature" | "body_composition_measurement" | "body_sensor_location" | "bond_management_control_point" | "bond_management_feature" | "boot_keyboard_input_report" | "boot_keyboard_output_report" | "boot_mouse_input_report" | "br_edr_handover_data" | "broadcast_audio_scan_control_point" | "broadcast_receive_state" | "bss_control_point" | "bss_response" | "call_control_point" | "call_control_point_optional_opcodes" | "call_friendly_name" | "call_state" | "caloric_intake" | "carbon_monoxide_concentration" | "cardiorespiratory_activity_instantaneous_data" | "cardiorespiratory_activity_summary_data" | "cgm_feature" | "cgm_measurement" | "cgm_session_run_time" | "cgm_session_start_time" | "cgm_specific_ops_control_point" | "cgm_status" | "chromatic_distance_from_planckian" | "chromaticity_coordinate" | "chromaticity_coordinates" | "chromaticity_in_cct_and_duv_values" | "chromaticity_tolerance" | "cie_13_3_1995_color_rendering_index" | "client_supported_features" | "co2_concentration" | "coefficient" | "constant_tone_extension_enable" | "content_control_id" | "correlated_color_temperature" | "cosine_of_the_angle" | "count_16" | "count_24" | "country_code" | "cross_trainer_data" | "csc_feature" | "csc_measurement" | "current_elapsed_time" | "current_group_object_id" | "current_track_object_id" | "current_track_segments_object_id" | "cycling_power_control_point" | "cycling_power_feature" | "cycling_power_measurement" | "cycling_power_vector" | "database_change_increment" | "database_hash" | "date_of_birth" | "date_of_threshold_assessment" | "date_time" | "date_utc" | "day_date_time" | "day_of_week" | "descriptor_value_changed" | "device_time_control_point" | "device_time_feature" | "device_time_parameters" | "device_wearing_position" | "dew_point" | "digital" | "digital_output" | "dst_offset" | "electric_current" | "electric_current_range" | "electric_current_specification" | "electric_current_statistics" | "elevation" | "email_address" | "emergency_id" | "emergency_text" | "encrypted_data_key_material" | "energy" | "energy_32" | "energy_in_a_period_of_day" | "enhanced_blood_pressure_measurement" | "enhanced_intermediate_cuff_pressure" | "esl_address" | "esl_control_point" | "esl_current_absolute_time" | "esl_display_information" | "esl_image_information" | "esl_led_information" | "esl_response_key_material" | "esl_sensor_information" | "estimated_service_date" | "event_statistics" | "exact_time_100" | "exact_time_256" | "fat_burn_heart_rate_lower_limit" | "fat_burn_heart_rate_upper_limit" | "firmware_revision_string" | "first_name" | "first_use_date" | "fitness_machine_control_point" | "fitness_machine_feature" | "fitness_machine_status" | "five_zone_heart_rate_limits" | "fixed_string_16" | "fixed_string_24" | "fixed_string_36" | "fixed_string_64" | "fixed_string_8" | "floor_number" | "force" | "four_zone_heart_rate_limits" | "gain_settings_attribute" | "gap.appearance" | "gap.central_address_resolution" | "gap.device_name" | "gap.peripheral_preferred_connection_parameters" | "gap.peripheral_privacy_flag" | "gap.reconnection_address" | "gatt.service_changed" | "gender" | "general_activity_instantaneous_data" | "general_activity_summary_data" | "generic_level" | "ghs_control_point" | "global_trade_item_number" | "glucose_feature" | "glucose_measurement" | "glucose_measurement_context" | "gmap_role" | "gust_factor" | "handedness" | "hardware_revision_string" | "health_sensor_features" | "hearing_aid_features" | "hearing_aid_preset_control_point" | "heart_rate_control_point" | "heart_rate_max" | "heart_rate_measurement" | "heat_index" | "height" | "hid_control_point" | "hid_information" | "high_intensity_exercise_threshold" | "high_resolution_height" | "high_temperature" | "high_voltage" | "hip_circumference" | "http_control_point" | "http_entity_body" | "http_headers" | "http_status_code" | "https_security" | "humidity" | "idd_annunciation_status" | "idd_command_control_point" | "idd_command_data" | "idd_features" | "idd_history_data" | "idd_record_access_control_point" | "idd_status" | "idd_status_changed" | "idd_status_reader_control_point" | "ieee_11073-20601_regulatory_certification_data_list" | "illuminance" | "imd_control" | "imd_historical_data" | "imd_status" | "imds_descriptor_value_changed" | "incoming_call" | "incoming_call_target_bearer_uri" | "indoor_bike_data" | "indoor_positioning_configuration" | "intermediate_cuff_pressure" | "intermediate_temperature" | "irradiance" | "language" | "last_name" | "latitude" | "le_gatt_security_levels" | "life_cycle_data" | "light_distribution" | "light_output" | "light_source_type" | "linear_position" | "live_health_observations" | "ln_control_point" | "ln_feature" | "local_east_coordinate" | "local_north_coordinate" | "local_time_information" | "location_and_speed" | "location_name" | "lock_characteristic" | "longitude" | "luminous_efficacy" | "luminous_energy" | "luminous_exposure" | "luminous_flux" | "luminous_flux_range" | "luminous_intensity" | "magnetic_declination" | "magnetic_flux_density_2d" | "magnetic_flux_density_3d" | "manufacturer_name_string" | "mass_flow" | "maximum_recommended_heart_rate" | "measurement_interval" | "media_control_point" | "media_control_point_opcodes_supported" | "media_player_icon_object_id" | "media_player_icon_url" | "media_player_name" | "media_state" | "medical_devices" | "mesh_provisioning_data_in" | "mesh_provisioning_data_out" | "mesh_proxy_data_in" | "mesh_proxy_data_out" | "methane_concentration" | "middle_name" | "model_number_string" | "mute" | "navigation" | "network_availability" | "new_alert" | "next_track_object_id" | "nitrogen_dioxide_concentration" | "noise" | "non-methane_volatile_organic_compounds_concentration" | "object_action_control_point" | "object_changed" | "object_first_created" | "object_id" | "object_last_modified" | "object_list_control_point" | "object_list_filter" | "object_name" | "object_properties" | "object_size" | "object_type" | "observation_schedule_changed" | "on-demand_ranging_data" | "ots_feature" | "ozone_concentration" | "parent_group_object_id" | "particulate_matter_pm1_concentration" | "particulate_matter_pm10_concentration" | "particulate_matter_pm2_5_concentration" | "perceived_lightness" | "percentage_8" | "percentage_8_steps" | "physical_activity_current_session" | "physical_activity_monitor_control_point" | "physical_activity_monitor_features" | "physical_activity_session_descriptor" | "playback_speed" | "playing_order" | "playing_orders_supported" | "plx_continuous_measurement" | "plx_features" | "plx_spot_check_measurement" | "pnp_id" | "pollen_concentration" | "position_2d" | "position_3d" | "position_quality" | "power" | "power_specification" | "preferred_units" | "pressure" | "protocol_mode" | "pulse_oximetry_control_point" | "rainfall" | "ranging_data_ready" | "rank_characteristic" | "ras_control_point" | "ras_features" | "rc_feature" | "rc_settings" | "real-time_ranging_data" | "reconnection_configuration_control_point" | "record_access_control_point" | "reference_time_information" | "registered_user" | "relative_runtime_in_a_correlated_color_temperature_range" | "relative_runtime_in_a_current_range" | "relative_runtime_in_a_generic_level_range" | "relative_value_in_a_period_of_day" | "relative_value_in_a_temperature_range" | "relative_value_in_a_voltage_range" | "relative_value_in_an_illuminance_range" | "removable" | "report" | "report_map" | "resolvable_private_address_only" | "resting_heart_rate" | "ringer_control_point" | "ringer_setting" | "rotational_speed" | "rower_data" | "rsc_feature" | "rsc_measurement" | "sc_control_point" | "scan_interval_window" | "scan_refresh" | "scientific_temperature_celsius" | "search_control_point" | "search_results_object_id" | "secondary_time_zone" | "sedentary_interval_notification" | "seeking_speed" | "sensor_location" | "serial_number_string" | "server_supported_features" | "service_cycle_data" | "service_required" | "set_identity_resolving_key" | "sink_ase" | "sink_audio_locations" | "sink_pac" | "size_characteristic" | "sleep_activity_instantaneous_data" | "sleep_activity_summary_data" | "software_revision_string" | "source_ase" | "source_audio_locations" | "source_pac" | "sport_type_for_aerobic_and_anaerobic_thresholds" | "stair_climber_data" | "status_flags" | "step_climber_data" | "step_counter_activity_summary_data" | "stored_health_observations" | "stride_length" | "sulfur_dioxide_concentration" | "sulfur_hexafluoride_concentration" | "supported_audio_contexts" | "supported_heart_rate_range" | "supported_inclination_range" | "supported_new_alert_category" | "supported_power_range" | "supported_resistance_level_range" | "supported_speed_range" | "supported_unread_alert_category" | "system_id" | "tds_control_point" | "temperature" | "temperature_8" | "temperature_8_in_a_period_of_day" | "temperature_8_statistics" | "temperature_celsius" | "temperature_fahrenheit" | "temperature_measurement" | "temperature_range" | "temperature_statistics" | "temperature_type" | "termination_reason" | "three_zone_heart_rate_limits" | "time_accuracy" | "time_broadcast" | "time_change_log_data" | "time_decihour_8" | "time_exponential_8" | "time_hour_24" | "time_millisecond_24" | "time_second_16" | "time_second_32" | "time_second_8" | "time_source" | "time_update_control_point" | "time_update_state" | "time_with_dst" | "time_zone" | "tmap_role" | "torque" | "track_changed" | "track_duration" | "track_position" | "track_title" | "training_status" | "treadmill_data" | "true_wind_direction" | "true_wind_speed" | "two_zone_heart_rate_limits" | "tx_power_level" | "ugg_features" | "ugt_features" | "uncertainty" | "unread_alert_status" | "uri" | "user_control_point" | "user_index" | "uv_index" | "vo2_max" | "voc_concentration" | "voltage" | "voltage_frequency" | "voltage_specification" | "voltage_statistics" | "volume_control_point" | "volume_flags" | "volume_flow" | "volume_offset_control_point" | "volume_offset_state" | "volume_state" | "waist_circumference" | "weight" | "weight_measurement" | "weight_scale_feature" | "wind_chill" | "work_cycle_data" | "length"

isGattDescriptorName

isGattDescriptorName: (value: unknown) => value is "complete_br_edr_transport_block_data" | "es_configuration" | "es_measurement" | "es_trigger_setting" | "external_report_reference" | "gatt.characteristic_aggregate_format" | "gatt.characteristic_extended_properties" | "gatt.characteristic_presentation_format" | "gatt.characteristic_user_description" | "gatt.client_characteristic_configuration" | "gatt.server_characteristic_configuration" | "manufacturer_limits" | "measurement_description" | "number_of_digitals" | "observation_schedule" | "process_tolerances" | "report_reference" | "time_trigger_setting" | "valid_range" | "valid_range_accuracy" | "value_trigger_setting"

isGattServiceName

isGattServiceName: (value: unknown) => value is "alert_notification" | "audio_input_control" | "audio_stream_control" | "authorization_control" | "automation_io" | "basic_audio_announcement" | "battery_service" | "binary_sensor" | "blood_pressure" | "body_composition" | "bond_management" | "broadcast_audio_announcement" | "broadcast_audio_scan" | "common_audio" | "constant_tone_extension" | "continuous_glucose_monitoring" | "coordinated_set_identification" | "current_time" | "cycling_power" | "cycling_speed_and_cadence" | "device_information" | "device_time" | "elapsed_time" | "electronic_shelf_label" | "emergency_configuration" | "environmental_sensing" | "fitness_machine" | "gaming_audio" | "gap" | "gatt" | "generic_health_sensor" | "generic_media_control" | "generic_telephone_bearer" | "glucose" | "health_thermometer" | "hearing_access" | "heart_rate" | "http_proxy" | "human_interface_device" | "immediate_alert" | "indoor_positioning" | "industrial_measurement_device" | "insulin_delivery" | "internet_protocol_support" | "link_loss" | "location_and_navigation" | "media_control" | "mesh_provisioning" | "mesh_proxy" | "mesh_proxy_solicitation" | "microphone_control" | "next_dst_change" | "object_transfer" | "phone_alert_status" | "physical_activity_monitor" | "public_broadcast_announcement" | "published_audio_capabilities" | "pulse_oximeter" | "reconnection_configuration" | "reference_time_update" | "running_speed_and_cadence" | "scan_parameters" | "telephone_bearer" | "telephony_and_media_audio" | "transport_discovery" | "tx_power" | "user_data" | "volume_control" | "volume_offset" | "weight_scale"

languageFromDataView

 function languageFromDataView(dataView: DataView | DataViewReader, indexStart?: number): Language;

Parse from a DataView into Language.

lastNameFromDataView

 function lastNameFromDataView(dataView: DataView | DataViewReader, indexStart?: number): LastName;

Parse from a DataView into LastName.

latitudeFromDataView

 function latitudeFromDataView(dataView: DataView | DataViewReader, indexStart?: number): Latitude;

Parse from a DataView into Latitude.

lnFeatureFromDataView

 function lnFeatureFromDataView(dataView: DataView | DataViewReader, indexStart?: number): LnFeature;

Parse from a DataView into LnFeature.

localEastCoordinateFromDataView

 function localEastCoordinateFromDataView(dataView: DataView | DataViewReader, indexStart?: number): LocalEastCoordinate;

Parse from a DataView into LocalEastCoordinate.

localNorthCoordinateFromDataView

 function localNorthCoordinateFromDataView(dataView: DataView | DataViewReader, indexStart?: number): LocalNorthCoordinate;

Parse from a DataView into LocalNorthCoordinate.

localTimeInformationFromDataView

 function localTimeInformationFromDataView(dataView: DataView | DataViewReader, indexStart?: number): LocalTimeInformation;

Parse from a DataView into LocalTimeInformation.

locationAndSpeedFromDataView

 function locationAndSpeedFromDataView(dataView: DataView | DataViewReader, indexStart?: number): LocationAndSpeed;

Parse from a DataView into LocationAndSpeed.

locationNameFromDataView

 function locationNameFromDataView(dataView: DataView | DataViewReader, indexStart?: number): LocationName;

Parse from a DataView into LocationName.

longitudeFromDataView

 function longitudeFromDataView(dataView: DataView | DataViewReader, indexStart?: number): Longitude;

Parse from a DataView into Longitude.

magneticDeclinationFromDataView

 function magneticDeclinationFromDataView(dataView: DataView | DataViewReader, indexStart?: number): MagneticDeclination;

Parse from a DataView into MagneticDeclination.

magneticFluxDensity2DFromDataView

 function magneticFluxDensity2DFromDataView(dataView: DataView | DataViewReader, indexStart?: number): MagneticFluxDensity2D;

Parse from a DataView into MagneticFluxDensity2D.

magneticFluxDensity3DFromDataView

 function magneticFluxDensity3DFromDataView(dataView: DataView | DataViewReader, indexStart?: number): MagneticFluxDensity3D;

Parse from a DataView into MagneticFluxDensity3D.

manufacturerNameStringFromDataView

 function manufacturerNameStringFromDataView(dataView: DataView | DataViewReader, indexStart?: number): ManufacturerNameString;

Parse from a DataView into ManufacturerNameString.

maximumRecommendedHeartRateFromDataView

 function maximumRecommendedHeartRateFromDataView(dataView: DataView | DataViewReader, indexStart?: number): MaximumRecommendedHeartRate;

Parse from a DataView into MaximumRecommendedHeartRate.

measurementIntervalFromDataView

 function measurementIntervalFromDataView(dataView: DataView | DataViewReader, indexStart?: number): MeasurementInterval;

Parse from a DataView into MeasurementInterval.

modelNumberStringFromDataView

 function modelNumberStringFromDataView(dataView: DataView | DataViewReader, indexStart?: number): ModelNumberString;

Parse from a DataView into ModelNumberString.

navigationFromDataView

 function navigationFromDataView(dataView: DataView | DataViewReader, indexStart?: number): Navigation;

Parse from a DataView into Navigation.

newAlertFromDataView

 function newAlertFromDataView(dataView: DataView | DataViewReader, indexStart?: number): NewAlert;

Parse from a DataView into NewAlert.

numberOfDigitalsFromDataView

 function numberOfDigitalsFromDataView(dataView: DataView | DataViewReader, indexStart?: number): NumberOfDigitals;

Parse from a DataView into NumberOfDigitals.

objectFirstCreatedFromDataView

 function objectFirstCreatedFromDataView(dataView: DataView | DataViewReader, indexStart?: number): ObjectFirstCreated;

Parse from a DataView into ObjectFirstCreated.

objectIdFromDataView

 function objectIdFromDataView(dataView: DataView | DataViewReader, indexStart?: number): ObjectId;

Parse from a DataView into ObjectId.

objectLastModifiedFromDataView

 function objectLastModifiedFromDataView(dataView: DataView | DataViewReader, indexStart?: number): ObjectLastModified;

Parse from a DataView into ObjectLastModified.

objectNameFromDataView

 function objectNameFromDataView(dataView: DataView | DataViewReader, indexStart?: number): ObjectName;

Parse from a DataView into ObjectName.

objectSizeFromDataView

 function objectSizeFromDataView(dataView: DataView | DataViewReader, indexStart?: number): ObjectSize;

Parse from a DataView into ObjectSize.

parseHeartRate

parseHeartRate: (viewOrHex: DataView | string) => HeartRateMeasurement

plxContinuousMeasurementFromDataView

 function plxContinuousMeasurementFromDataView(dataView: DataView | DataViewReader, indexStart?: number): PlxContinuousMeasurement;

Parse from a DataView into PlxContinuousMeasurement.

plxFeaturesFromDataView

 function plxFeaturesFromDataView(dataView: DataView | DataViewReader, indexStart?: number): PlxFeatures;

Parse from a DataView into PlxFeatures.

plxSpotCheckMeasurementFromDataView

 function plxSpotCheckMeasurementFromDataView(dataView: DataView | DataViewReader, indexStart?: number): PlxSpotCheckMeasurement;

Parse from a DataView into PlxSpotCheckMeasurement.

pnpIdFromDataView

 function pnpIdFromDataView(dataView: DataView | DataViewReader, indexStart?: number): PnpId;

Parse from a DataView into PnpId.

pollenConcentrationFromDataView

 function pollenConcentrationFromDataView(dataView: DataView | DataViewReader, indexStart?: number): PollenConcentration;

Parse from a DataView into PollenConcentration.

positionQualityFromDataView

 function positionQualityFromDataView(dataView: DataView | DataViewReader, indexStart?: number): PositionQuality;

Parse from a DataView into PositionQuality.

pressureFromDataView

 function pressureFromDataView(dataView: DataView | DataViewReader, indexStart?: number): Pressure;

Parse from a DataView into Pressure.

protocolModeFromDataView

 function protocolModeFromDataView(dataView: DataView | DataViewReader, indexStart?: number): ProtocolMode;

Parse from a DataView into ProtocolMode.

rainfallFromDataView

 function rainfallFromDataView(dataView: DataView | DataViewReader, indexStart?: number): Rainfall;

Parse from a DataView into Rainfall.

referenceTimeInformationFromDataView

 function referenceTimeInformationFromDataView(dataView: DataView | DataViewReader, indexStart?: number): ReferenceTimeInformation;

Parse from a DataView into ReferenceTimeInformation.

reportFromDataView

 function reportFromDataView(dataView: DataView | DataViewReader, indexStart?: number): Report;

Parse from a DataView into Report.

reportMapFromDataView

 function reportMapFromDataView(dataView: DataView | DataViewReader, indexStart?: number): ReportMap;

Parse from a DataView into ReportMap.

reportReferenceFromDataView

 function reportReferenceFromDataView(dataView: DataView | DataViewReader, indexStart?: number): ReportReference;

Parse from a DataView into ReportReference.

resolvablePrivateAddressOnlyFromDataView

 function resolvablePrivateAddressOnlyFromDataView(dataView: DataView | DataViewReader, indexStart?: number): ResolvablePrivateAddressOnly;

Parse from a DataView into ResolvablePrivateAddressOnly.

restingHeartRateFromDataView

 function restingHeartRateFromDataView(dataView: DataView | DataViewReader, indexStart?: number): RestingHeartRate;

Parse from a DataView into RestingHeartRate.

ringerControlPointFromDataView

 function ringerControlPointFromDataView(dataView: DataView | DataViewReader, indexStart?: number): RingerControlPoint;

Parse from a DataView into RingerControlPoint.

ringerSettingFromDataView

 function ringerSettingFromDataView(dataView: DataView | DataViewReader, indexStart?: number): RingerSetting;

Parse from a DataView into RingerSetting.

rowerDataFromDataView

 function rowerDataFromDataView(dataView: DataView | DataViewReader, indexStart?: number): RowerData;

Parse from a DataView into RowerData.

rscFeatureFromDataView

 function rscFeatureFromDataView(dataView: DataView | DataViewReader, indexStart?: number): RscFeature;

Parse from a DataView into RscFeature.

rscMeasurementFromDataView

 function rscMeasurementFromDataView(dataView: DataView | DataViewReader, indexStart?: number): RscMeasurement;

Parse from a DataView into RscMeasurement.

scanIntervalWindowFromDataView

 function scanIntervalWindowFromDataView(dataView: DataView | DataViewReader, indexStart?: number): ScanIntervalWindow;

Parse from a DataView into ScanIntervalWindow.

scanRefreshFromDataView

 function scanRefreshFromDataView(dataView: DataView | DataViewReader, indexStart?: number): ScanRefresh;

Parse from a DataView into ScanRefresh.

sensorLocationFromDataView

 function sensorLocationFromDataView(dataView: DataView | DataViewReader, indexStart?: number): SensorLocation;

Parse from a DataView into SensorLocation.

serialNumberStringFromDataView

 function serialNumberStringFromDataView(dataView: DataView | DataViewReader, indexStart?: number): SerialNumberString;

Parse from a DataView into SerialNumberString.

softwareRevisionStringFromDataView

 function softwareRevisionStringFromDataView(dataView: DataView | DataViewReader, indexStart?: number): SoftwareRevisionString;

Parse from a DataView into SoftwareRevisionString.

sportTypeForAerobicAndAnaerobicThresholdsFromDataView

 function sportTypeForAerobicAndAnaerobicThresholdsFromDataView(dataView: DataView | DataViewReader, indexStart?: number): SportTypeForAerobicAndAnaerobicThresholds;

Parse from a DataView into SportTypeForAerobicAndAnaerobicThresholds.

stairClimberDataFromDataView

 function stairClimberDataFromDataView(dataView: DataView | DataViewReader, indexStart?: number): StairClimberData;

Parse from a DataView into StairClimberData.

stepClimberDataFromDataView

 function stepClimberDataFromDataView(dataView: DataView | DataViewReader, indexStart?: number): StepClimberData;

Parse from a DataView into StepClimberData.

supportedHeartRateRangeFromDataView

 function supportedHeartRateRangeFromDataView(dataView: DataView | DataViewReader, indexStart?: number): SupportedHeartRateRange;

Parse from a DataView into SupportedHeartRateRange.

supportedInclinationRangeFromDataView

 function supportedInclinationRangeFromDataView(dataView: DataView | DataViewReader, indexStart?: number): SupportedInclinationRange;

Parse from a DataView into SupportedInclinationRange.

supportedNewAlertCategoryFromDataView

 function supportedNewAlertCategoryFromDataView(dataView: DataView | DataViewReader, indexStart?: number): SupportedNewAlertCategory;

Parse from a DataView into SupportedNewAlertCategory.

supportedPowerRangeFromDataView

 function supportedPowerRangeFromDataView(dataView: DataView | DataViewReader, indexStart?: number): SupportedPowerRange;

Parse from a DataView into SupportedPowerRange.

supportedResistanceLevelRangeFromDataView

 function supportedResistanceLevelRangeFromDataView(dataView: DataView | DataViewReader, indexStart?: number): SupportedResistanceLevelRange;

Parse from a DataView into SupportedResistanceLevelRange.

supportedSpeedRangeFromDataView

 function supportedSpeedRangeFromDataView(dataView: DataView | DataViewReader, indexStart?: number): SupportedSpeedRange;

Parse from a DataView into SupportedSpeedRange.

supportedUnreadAlertCategoryFromDataView

 function supportedUnreadAlertCategoryFromDataView(dataView: DataView | DataViewReader, indexStart?: number): SupportedUnreadAlertCategory;

Parse from a DataView into SupportedUnreadAlertCategory.

systemIdFromDataView

 function systemIdFromDataView(dataView: DataView | DataViewReader, indexStart?: number): SystemId;

Parse from a DataView into SystemId.

temperatureFromDataView

 function temperatureFromDataView(dataView: DataView | DataViewReader, indexStart?: number): Temperature;

Parse from a DataView into Temperature.

temperatureMeasurementFromDataView

 function temperatureMeasurementFromDataView(dataView: DataView | DataViewReader, indexStart?: number): TemperatureMeasurement;

Parse from a DataView into TemperatureMeasurement.

temperatureTypeFromDataView

 function temperatureTypeFromDataView(dataView: DataView | DataViewReader, indexStart?: number): TemperatureType;

Parse from a DataView into TemperatureType.

threeZoneHeartRateLimitsFromDataView

 function threeZoneHeartRateLimitsFromDataView(dataView: DataView | DataViewReader, indexStart?: number): ThreeZoneHeartRateLimits;

Parse from a DataView into ThreeZoneHeartRateLimits.

timeAccuracyFromDataView

 function timeAccuracyFromDataView(dataView: DataView | DataViewReader, indexStart?: number): TimeAccuracy;

Parse from a DataView into TimeAccuracy.

timeSourceFromDataView

 function timeSourceFromDataView(dataView: DataView | DataViewReader, indexStart?: number): TimeSource;

Parse from a DataView into TimeSource.

timeTriggerSettingFromDataView

 function timeTriggerSettingFromDataView(dataView: DataView | DataViewReader, indexStart?: number): TimeTriggerSetting;

Parse from a DataView into TimeTriggerSetting.

timeUpdateControlPointFromDataView

 function timeUpdateControlPointFromDataView(dataView: DataView | DataViewReader, indexStart?: number): TimeUpdateControlPoint;

Parse from a DataView into TimeUpdateControlPoint.

timeUpdateStateFromDataView

 function timeUpdateStateFromDataView(dataView: DataView | DataViewReader, indexStart?: number): TimeUpdateState;

Parse from a DataView into TimeUpdateState.

timeWithDstFromDataView

 function timeWithDstFromDataView(dataView: DataView | DataViewReader, indexStart?: number): TimeWithDst;

Parse from a DataView into TimeWithDst.

timeZoneFromDataView

 function timeZoneFromDataView(dataView: DataView | DataViewReader, indexStart?: number): TimeZone;

Parse from a DataView into TimeZone.

treadmillDataFromDataView

 function treadmillDataFromDataView(dataView: DataView | DataViewReader, indexStart?: number): TreadmillData;

Parse from a DataView into TreadmillData.

trueWindDirectionFromDataView

 function trueWindDirectionFromDataView(dataView: DataView | DataViewReader, indexStart?: number): TrueWindDirection;

Parse from a DataView into TrueWindDirection.

trueWindSpeedFromDataView

 function trueWindSpeedFromDataView(dataView: DataView | DataViewReader, indexStart?: number): TrueWindSpeed;

Parse from a DataView into TrueWindSpeed.

twoZoneHeartRateLimitFromDataView

 function twoZoneHeartRateLimitFromDataView(dataView: DataView | DataViewReader, indexStart?: number): TwoZoneHeartRateLimit;

Parse from a DataView into TwoZoneHeartRateLimit.

txPowerLevelFromDataView

 function txPowerLevelFromDataView(dataView: DataView | DataViewReader, indexStart?: number): TxPowerLevel;

Parse from a DataView into TxPowerLevel.

uncertaintyFromDataView

 function uncertaintyFromDataView(dataView: DataView | DataViewReader, indexStart?: number): Uncertainty;

Parse from a DataView into Uncertainty.

unreadAlertStatusFromDataView

 function unreadAlertStatusFromDataView(dataView: DataView | DataViewReader, indexStart?: number): UnreadAlertStatus;

Parse from a DataView into UnreadAlertStatus.

uriFromDataView

 function uriFromDataView(dataView: DataView | DataViewReader, indexStart?: number): Uri;

Parse from a DataView into Uri.

userIndexFromDataView

 function userIndexFromDataView(dataView: DataView | DataViewReader, indexStart?: number): UserIndex;

Parse from a DataView into UserIndex.

uvIndexFromDataView

 function uvIndexFromDataView(dataView: DataView | DataViewReader, indexStart?: number): UvIndex;

Parse from a DataView into UvIndex.

valueTriggerSettingFromDataView

 function valueTriggerSettingFromDataView(dataView: DataView | DataViewReader, indexStart?: number): ValueTriggerSetting;

Parse from a DataView into ValueTriggerSetting.

vo2MaxFromDataView

 function vo2MaxFromDataView(dataView: DataView | DataViewReader, indexStart?: number): Vo2Max;

Parse from a DataView into Vo2Max.

waistCircumferenceFromDataView

 function waistCircumferenceFromDataView(dataView: DataView | DataViewReader, indexStart?: number): WaistCircumference;

Parse from a DataView into WaistCircumference.

weightFromDataView

 function weightFromDataView(dataView: DataView | DataViewReader, indexStart?: number): Weight;

Parse from a DataView into Weight.

weightMeasurementFromDataView

 function weightMeasurementFromDataView(dataView: DataView | DataViewReader, indexStart?: number): WeightMeasurement;

Parse from a DataView into WeightMeasurement.

weightScaleFeatureFromDataView

 function weightScaleFeatureFromDataView(dataView: DataView | DataViewReader, indexStart?: number): WeightScaleFeature;

Parse from a DataView into WeightScaleFeature.

windChillFromDataView

 function windChillFromDataView(dataView: DataView | DataViewReader, indexStart?: number): WindChill;

Parse from a DataView into WindChill.

Interfaces

AerobicHeartRateLowerLimit

export interface AerobicHeartRateLowerLimit 

Lower limit of the heart rate where the user enhances his endurance while exercising

AerobicHeartRateUpperLimit

export interface AerobicHeartRateUpperLimit 

Upper limit of the heart rate where the user enhances his endurance while exercising

AerobicThreshold

export interface AerobicThreshold 

First metabolic threshold.

Age

export interface Age 

Age of the User.

Aggregate

export interface Aggregate 

The Aggregate Input is an aggregate of the Digital Input Characteristic value (if available) and ALL Analog Inputs available.

AlertCategoryId

export interface AlertCategoryId 

Categories of alerts/messages.

The value 0x01 is interpreted as ?Email?

The value of the characteristic is an unsigned 8 bit integer that has a fixed point exponent of 0. The Alert Category ID characteristic defines the predefined categories of messages as an enumeration.

AlertCategoryIdBitMask

export interface AlertCategoryIdBitMask 

Categories of alerts/messages.

The value 0x03 is interpreted as ?Simple Alert and Email bits set?

The value of the characteristic is a bit mask implemented as an array of unsigned 8 bit integers. The Alert Category ID Bit Mask characteristic defines one bit for each predefined category ID.

AlertLevel

export interface AlertLevel 

The level of an alert a device is to sound. If this level is changed while the alert is being sounded, the new level should take effect.

The value 0x01 is interpreted as ?Mild Alert?

? Value 0, meaning ?No Alert?

? Value 1, meaning ?Mild Alert?

? Value 2, meaning ?High Alert?

AlertNotificationControlPoint

export interface AlertNotificationControlPoint 

Control point of the Alert Notification server. Client can write the command here to request the several functions toward the server.

The data 0x02 0x01 interprets ?Disable New Incoming Notification for Email Category?.

The 2nd octet value of the characteristic is an ?Alert Category ID? format. This octet shows the target category that the command ID applies for.

AlertStatus

export interface AlertStatus 

Bit 0, meaning ?Ringer State?

Bit 1, meaning ?Vibrator State?

Bit 2, meaning "Display Alert Status"

Bit 0, 0 meaning ?Ringer State? not active, 1 meaning ?Ringer State? active

Bit 1, 0 meaning ?Vibrator State? not active, 1 meaning ?Vibrator State? active

Bit 2, 0 meaning ?Display Alert State? not active, 1 meaning ?Display Alert State? active

Altitude

export interface Altitude 

The Altitude characteristic describes the altitude of the device.

AnaerobicHeartRateLowerLimit

export interface AnaerobicHeartRateLowerLimit 

Lower limit of the heart rate where the user enhances his anaerobic tolerance while exercising.

AnaerobicHeartRateUpperLimit

export interface AnaerobicHeartRateUpperLimit 

Upper limit of the heart rate where the user enhances his anaerobic tolerance while exercising.

AnaerobicThreshold

export interface AnaerobicThreshold 

Second metabolic threshold

Analog

export interface Analog 

The Analog characteristic is used to read or write the value of one of the IO Module?s analog signals.

ApparentWindDirection

export interface ApparentWindDirection 

ApparentWindSpeed

export interface ApparentWindSpeed 

BarometricPressureTrend

export interface BarometricPressureTrend 

BatteryLevel

export interface BatteryLevel 

The current charge level of a battery. 100% represents fully charged while 0% represents fully discharged.

BloodPressureFeature

export interface BloodPressureFeature 

The Blood Pressure Feature characteristic is used to describe the supported features of the Blood Pressure Sensor.

BloodPressureMeasurement

export interface BloodPressureMeasurement 

The Blood Pressure Measurement characteristic is a variable length structure containing a Flags field, a Blood Pressure Measurement Compound Value field, and contains additional fields such as Time Stamp, Pulse Rate and User ID as determined by the contents of the Flags field.

BodyCompositionFeature

export interface BodyCompositionFeature 

BodyCompositionMeasurement

export interface BodyCompositionMeasurement 

BodySensorLocation

export interface BodySensorLocation 

BootKeyboardInputReport

export interface BootKeyboardInputReport 

The Boot Keyboard Input Report characteristic is used to transfer fixed format and length Input Report data between a HID Host operating in Boot Protocol Mode and a HID Service corresponding to a boot keyboard.

BootKeyboardOutputReport

export interface BootKeyboardOutputReport 

The Boot Keyboard Output Report characteristic is used to transfer fixed format and length Output Report data between a HID Host operating in Boot Protocol Mode and a HID Service corresponding to a boot keyboard.

BootMouseInputReport

export interface BootMouseInputReport 

The Boot Mouse Input Report characteristic is used to transfer fixed format and length Input Report data between a HID Host operating in Boot Protocol Mode and a HID Service corresponding to a boot mouse.

BtReaderClass

export interface BtReaderClass 

CgmFeature

export interface CgmFeature 

CrossTrainerData

export interface CrossTrainerData 

The Cross Trainer Data characteristic is used to send training-related data to the Client from a cross trainer (Server).

CscFeature

export interface CscFeature 

The CSC (Cycling Speed and Cadence) Feature characteristic is used to describe the supported features of the Server.

CscMeasurement

export interface CscMeasurement 

The CSC Measurement characteristic (CSC refers to Cycling Speed and Cadence) is a variable length structure containing a Flags field and, based on the contents of the Flags field, may contain one or more additional fields as shown in the tables below.

CurrentTime

export interface CurrentTime 

CyclingPowerFeature

export interface CyclingPowerFeature 

The CP Feature characteristic is used to report a list of features supported by the device.

CyclingPowerMeasurement

export interface CyclingPowerMeasurement 

The Cycling Power Measurement characteristic is a variable length structure containing a Flags field, an Instantaneous Power field and, based on the contents of the Flags field, may contain one or more additional fields as shown in the table below.

CyclingPowerVector

export interface CyclingPowerVector 

The Cycling Power Vector characteristic is a variable length structure containing a Flags fieldand based on the contents of the Flags field, may contain one or more additional fields as shown in the table below.

DatabaseChangeIncrement

export interface DatabaseChangeIncrement 

DateOfBirth

export interface DateOfBirth 

DateOfThresholdAssessment

export interface DateOfThresholdAssessment 

DateTime

export interface DateTime 

The Date Time characteristic is used to represent time.

The Date Time characteristic contains fields for year, month, day, hours, minutes and seconds. Calendar days in Date Time are represented using Gregorian calendar. Hours in Date Time are represented in the 24h system.

DayDateTime

export interface DayDateTime 

DayOfWeek

export interface DayOfWeek 

DewPoint

export interface DewPoint 

Digital

export interface Digital 

The Digital characteristic is used to expose and change the state of an IO Module?s digital signals.

DstOffset

export interface DstOffset 

Elevation

export interface Elevation 

EmailAddress

export interface EmailAddress 

Email address of the user. See Note below.

ExactTime256

export interface ExactTime256 

FatBurnHeartRateLowerLimit

export interface FatBurnHeartRateLowerLimit 

Lower limit of the heart rate where the user maximizes the fat burn while exersizing

FatBurnHeartRateUpperLimit

export interface FatBurnHeartRateUpperLimit 

Upper limit of the heart rate where the user maximizes the fat burn while exersizing

FirmwareRevisionString

export interface FirmwareRevisionString 

The value of this characteristic is a UTF-8 string representing the firmware revision for the firmware within the device.

FirstName

export interface FirstName 

First name of the user. See Note below.

FiveZoneHeartRateLimits

export interface FiveZoneHeartRateLimits 

Data structure containing the limits between the heart rate zones for the 5-zone heart rate definition (Maximum, Hard, Moderate, Light and Very Light).

FloorNumber

export interface FloorNumber 

The Floor Number characteristic describes in which floor the device is installed.

GapAppearance

export interface GapAppearance 

The external appearance of this device. The values are composed of a category (10-bits) and sub-categories (6-bits).

GapDeviceName

export interface GapDeviceName 

GapPeripheralPreferredConnectionParameters

export interface GapPeripheralPreferredConnectionParameters 

GapPeripheralPrivacyFlag

export interface GapPeripheralPrivacyFlag 

GapReconnectionAddress

export interface GapReconnectionAddress 

The Information included in this page is informative. The normative descriptions are contained in the applicable specification.

GattCharacteristicAggregateFormat

export interface GattCharacteristicAggregateFormat 

The Characteristic Aggregate Format descriptor defines the format of an aggregated Characteristic Value.

If 3 Characteristic Presentation Format declarations exist at Attribute Handles 0x40, 0x50 and 0x60, the Characteris Aggregate Format Value is 0x405060.

Only one Characteristic Aggregate Format descriptor exists in a characteristic definition. This descriptor consists of a list of Attribute Handles pointing to Characteristic Presentation Format declarations. This descriptor is read only and does not require authentication or authorization. The list of Attribute Handles is the concatenation of multiple 16-bit Attribute Handle values into a single Attribute Value. If more than one Characteristic Presentation Format declarations exist, then there is one Characteristic Aggregate Format declaration. However, a Characteristic Aggregate Format descriptor can be present even if there aren't any Presentation Format descriptors in the characteristic definition. The order of the Attribute Handles in the list is significant.

GattCharacteristicExtendedProperties

export interface GattCharacteristicExtendedProperties 

The Characteristic Extended Properties descriptor defines additional Characteristic Properties.

If the Characteristic Extended Properties bit of the Characteristic Properties is set, then this descriptor exists. The Characteristic Extended Properties descriptor is a bit field defining Reliable Write and Writeable Auxiliaries are enabled for the Characteristic. This descriptor is readable without authentication and authorization being required.

GattCharacteristicPresentationFormat

export interface GattCharacteristicPresentationFormat 

The Characteristic Presentation Format descriptor defines the format of the Characteristic Value.

When encoding an IPv4 address, the uint32 Format type is used.

When encoding an IPv6 address, the uint128 Format type is used.

When encoding a Bluetooth address (BD_ADDR), the uint48 Format type is used.

For a Characteristic Value of 23 and an Exponent of 2, the actual value is 2300

For a Characteristi Value of 3892 and an Exponent of -3, the actual value is 3.892

One or more Characteristic Presentation Format descriptors may be present. If multiple of these descriptors are present, then a Aggregate Formate descriptor is present. This descriptor is read only and does not require authentication or authorization to read. This descriptor is composed of five parts: format, exponent, unit, name space and description. The Format field determines how a single value contained in the Characteristic Value is formatted. The Exponent field is used with interger data types to determine how the Characteristic Value is furhter formatted. The actual value = Characteristic Value * 10^Exponent.

GattCharacteristicUserDescription

export interface GattCharacteristicUserDescription 

The Characteristic User Description descriptor provides a textual user description for a characteristic value.

If the Writable Auxiliary bit of the Characteristics Properties is set then this descriptor is written. Only one User Description descriptor exists in a characteristic definition.

GattClientCharacteristicConfiguration

export interface GattClientCharacteristicConfiguration 

The Client Characteristic Configuration descriptor defines how the characteristic may be configured by a specific client.

This descriptor shall be persistent across connections for bonded devices. The Client Characteristic Configuration descriptor is unique for each client. A client may read and write this descriptor to determine and set the configuration for that client. Authentication and authorization may be required by the server to write this descriptor. The default value for the Client Characteristic Configuration descriptor is 0x00. Upon connection of non-binded clients, this descriptor is set to the default value.

GattNamedDetails

export interface GattNamedDetails 

Consolidated metadata for an assigned Service, Characteristic, or Descriptor.

GattServerCharacteristicConfiguration

export interface GattServerCharacteristicConfiguration 

The Server Characteristic Configuration descriptor defines how the characteristic descriptor is associated with may be configured for the server.

Only one Server Characteristic Configuration descriptor exists in a characteristic definition. A client may write this configuration descriptor to control the configuration of the characteristic on the server for all clients. There is a single instantiation of this descriptor for all clients. Authentication and authorization may be required by the server to write this descriptor.

GattServiceChanged

export interface GattServiceChanged 

Gender

export interface Gender 

Gender of the user. The value of the Gender characteristic are defined below: 0:male,1:female, 2:Unspecified,3-225: RFU

GlucoseFeature

export interface GlucoseFeature 

The Glucose Feature characteristic is used to describe the supported features of the Server. When read, the Glucose Feature characteristic returns a value that is used by a Client to determine the supported features of the Server.

GlucoseMeasurement

export interface GlucoseMeasurement 

The Glucose Measurement characteristic is a variable length structure containing a Flags field, a Sequence Number field, a Base Time field and, based upon the contents of the Flags field, may contain a Time Offset field, Glucose Concentration field, Type-Sample Location field and a Sensor Status Annunciation field.

GlucoseMeasurementContext

export interface GlucoseMeasurementContext 

The Glucose Measurement Context characteristic is a variable length structure containing a Flags field, a Sequence Number field and, based upon the contents of the Flags field, may contain a Carbohydrate ID field, Carbohydrate field, Meal field, Tester-Health field, Exercise Duration field, Exercise Intensity field, Medication ID field, Medication field and a HbA1c field.

GustFactor

export interface GustFactor 

HardwareRevisionString

export interface HardwareRevisionString 

The value of this characteristic is a UTF-8 string representing the hardware revision for the hardware within the device.

HeartRateControlPoint

export interface HeartRateControlPoint 

HeartRateMax

export interface HeartRateMax 

Maximum heart rate a user can reach.

HeartRateMeasurement

export interface HeartRateMeasurement 

HeatIndex

export interface HeatIndex 

Height

export interface Height 

Height of the User

HidControlPoint

export interface HidControlPoint 

? Suspend ( Refer to Section 7.4.2, Bluetooth HID Profile Specification 1.0

? Exit Suspend (Refer to Section 7.4.2, Bluetooth HID Profile Specification 1.0

HidInformation

export interface HidInformation 

The HID Information Characteristic returns the HID attributes when read.

The HID Information Characteristic contains the HID attributes. The value of this Characteristic is static and can be cached for the lifetime of the bond between the HID device and the HID host.

HipCircumference

export interface HipCircumference 

Used with the Waist Circumference value to calculate the Waist to Hip Ratio (WHR)

HttpControlPoint

export interface HttpControlPoint 

The HTTP Control Point is used to initiate a request to send an HTTP request message from the device contgaining the HTTP Proxy Service, acting as an HTTP Client, and an HTTP Server.

HttpEntityBody

export interface HttpEntityBody 

The HTTP Entity Body Characteristic contains the contents of the message body after any Transfer Encoding has been applied.

HttpHeaders

export interface HttpHeaders 

The HTTP Headers Characteristic is used to hold the headers that would be sent to the HTTP Request or the headers contained within an HTTP response message from the HTTP Server.

HttpsSecurity

export interface HttpsSecurity 

The HTTPS Security characteristic contains the known authenticity of the HTTPS Server certificate for the URI.

HttpStatusCode

export interface HttpStatusCode 

The HTTP Status Code characteristic contains the Status-Code from the Status-Line of the first line of the HTTP Response Message, followed by one octet indicating the Data Status Bit Field indicating the status of the data received.

Humidity

export interface Humidity 

IndoorBikeData

export interface IndoorBikeData 

The Indoor Bike Data characteristic is used to send training-related data to the Client from an indoor bike (Server).

IndoorPositioningConfiguration

export interface IndoorPositioningConfiguration 

The Indoor Positioning Configuration describes the set of characteristic values included in the Indoor Positioning Service AD type.

IntermediateCuffPressure

export interface IntermediateCuffPressure 

This characteristic has the same format as the Blood Pressure Measurement characteristic. However, due to a different context, the Blood Pressure Measurement Compound Value field becomes the Intermediate Cuff Pressure Compound Value field, the Systolic sub-field becomes the Current Cuff Pressure sub-field and the Diastolic and MAP fields are unused.

IntermediateTemperature

export interface IntermediateTemperature 

The Intermediate Temperature characteristic has the same format as the Temperature Measurement characteristic. However, due to a different context, the Value field is referred to as the Intermediate Temperature Value field.

Irradiance

export interface Irradiance 

Language

export interface Language 

LastName

export interface LastName 

Last name of the user. See Note below.

Latitude

export interface Latitude 

The Latitude characteristic describes the WGS84 North coordinate of the device.

LnFeature

export interface LnFeature 

The LN Feature characteristic is used to report a list of features supported by the device.

LocalEastCoordinate

export interface LocalEastCoordinate 

The Local East characteristic describes the East coordinate of the device using local coordinate system.

LocalNorthCoordinate

export interface LocalNorthCoordinate 

The Local North characteristic describes the North coordinate of the device using local coordinate system.

LocalTimeInformation

export interface LocalTimeInformation 

LocationAndSpeed

export interface LocationAndSpeed 

The Location and Speed characteristic is a variable length structure containing a Flags field and, based on the contents of the Flags field, may contain a combination of data fields listed below. Note that it is possible for this characteristic to exceed the default LE MTU size.

LocationName

export interface LocationName 

The Location Name characteristic describes the name of the location the device is installed in.

Longitude

export interface Longitude 

The Longitude characteristic describes the WGS84 East coordinate of the device.

MagneticDeclination

export interface MagneticDeclination 

MagneticFluxDensity2D

export interface MagneticFluxDensity2D 

MagneticFluxDensity3D

export interface MagneticFluxDensity3D 

ManufacturerNameString

export interface ManufacturerNameString 

The value of this characteristic is a UTF-8 string representing the name of the manufacturer of the device.

MaximumRecommendedHeartRate

export interface MaximumRecommendedHeartRate 

Maximum recommended heart rate is a threshold that may be set to limit exertion. The maximum recommended heart rate is smaller or equal to the maximal heart rate a user can reach.

MeasurementInterval

export interface MeasurementInterval 

The Measurement Interval characteristic defines the time between measurements.

This characteristic is capable of representing values from 1 second to 65535 seconds which is equal to 18 hours, 12 minutes and 15 seconds.

ModelNumberString

export interface ModelNumberString 

The value of this characteristic is a UTF-8 string representing the model number assigned by the device vendor.

Navigation

export interface Navigation 

The Navigation characteristic is a variable length structure containing a Flags field, a Bearing field, a Heading field and, based on the contents of the Flags field, may contain a combination of data fields listed below.

NewAlert

export interface NewAlert 

This characteristic defines the category of the alert and how many new alerts of that category have occurred in the server device. Brief text information may also be included for the last alert in the category.

The value 0x01, 0x04, 0x52, 0x69, 0x63, 0x68, 0x61, 0x72, 0x64 are interpreted that the server has 4 new email messages and the last message was sent by ?Richard?.

This characteristic consists of ?Category ID?, ?uint8?, and ?UTF-8 string? fields. The size of this characteristic is dynamic because of the variable length text (?UTF-8?) field. The minimum length of ?UTF-8 string? is 0 octets and maximum length of ?UTF-8 string? is 18 octets.

NumberOfDigitals

export interface NumberOfDigitals 

The Characteristic Number of Digitals descriptor is used for defining the number of digitals in a characteristic.

ObjectFirstCreated

export interface ObjectFirstCreated 

ObjectId

export interface ObjectId 

ObjectLastModified

export interface ObjectLastModified 

ObjectName

export interface ObjectName 

ObjectSize

export interface ObjectSize 

PlxContinuousMeasurement

export interface PlxContinuousMeasurement 

The PLX Continuous Measurement characteristic, if supported, is used to send periodic pulse oximetry measurements. This characteristic is a variable length structure containing the Flags field (to indicate presence of optional fields), the SpO2PR-Normal field, and depending on the contents of the Flags field, the SpO2PR-Fast field, the SpO2PR-Slow field, the Measurement Status field, the Device and Sensor Status field, and/or the Pulse Amplitude Index field.

PlxFeatures

export interface PlxFeatures 

The PLX Features characteristic is used to describe the supported features of the Server. Included in the characteristic is a PLX Features field, and, depending on the contents of the PLX Features field, the Measurement Status Support field, and the Device and Sensor Status Support field.

PlxSpotCheckMeasurement

export interface PlxSpotCheckMeasurement 

The PLX Spot-check Measurement characteristic, if supported, is used to send Spot-check measurements of SpO2 (Percent oxygen saturation of hemoglobin) and PR (pulse rate). This characteristic is a variable length structure containing the Flags field, the SpO2PR-Spot-Check field, and depending on the contents of the Flags field, the Timestamp field, the Measurement Status field, the Device and Sensor Status field, and/or the Pulse Amplitude Index field.

PnpId

export interface PnpId 

The PnP_ID characteristic returns its value when read using the GATT Characteristic Value Read procedure.

The PnP_ID characteristic is a set of values that used to create a device ID value that is unique for this device. Included in the characteristic is a Vendor ID Source field, a Vendor ID field, a Product ID field and a Product Version field. These values are used to identify all devices of a given type/model/version using numbers.

PollenConcentration

export interface PollenConcentration 

PositionQuality

export interface PositionQuality 

The Position Quality characteristic is a variable length structure containing a Flags field and at least one of the optional data fields listed below

Pressure

export interface Pressure 

ProtocolMode

export interface ProtocolMode 

The Protocol Mode characteristic is used to expose the current protocol mode of the HID Service with which it is associated, or to set the desired protocol mode of the HID Service.

Rainfall

export interface Rainfall 

ReferenceTimeInformation

export interface ReferenceTimeInformation 

Report_2

export interface Report 

The Report characteristic is used to exchange data between a HID Device and a HID Host.

The Report characteristic value contains Input Report, Output Report or Feature Report data to be transferred between the HID Device and HID Host.

ReportMap

export interface ReportMap 

Only a single instance of this characteristic exists as part of a HID Service.

ReportReference

export interface ReportReference 

Mapping information in the form of a Report ID and Report Type which maps the current parent characteristic to the Report ID(s) and Report Type (s) defined within the Report Map characteristic.

ResolvablePrivateAddressOnly

export interface ResolvablePrivateAddressOnly 

The Resolvable Private Address Only characteristic defines whether the device will only use Resolvable Private Addresses (RPAs) as local addresses.

RestingHeartRate

export interface RestingHeartRate 

Lowest Heart Rate a user can reach

RingerControlPoint

export interface RingerControlPoint 

Value 1, meaning ?Silent Mode"

Value 2, meaning ?Mute Once?

Value 3, meaning ?Cancel Silent Mode?

The value 0x01 shall be interpreted as ?Silent Mode?

RingerSetting

export interface RingerSetting 

Value 0, meaning ?Ringer Silent"

Value 1, meaning ?Ringer Normal?

The value 0x01 shall be interpreted as ?Ringer Normal?

RowerData

export interface RowerData 

The Rower Data characteristic is used to send training-related data to the Client from a rower (Server).

RscFeature

export interface RscFeature 

The RSC (Running Speed and Cadence) Feature characteristic is used to describe the supported features of the Server.

RscMeasurement

export interface RscMeasurement 

The RSC Measurement characteristic (RSC refers to Running Speed and Cadence) is a variable length structure containing a Flags field, an Instantaneous Speed field and an Instantaneous Cadence field and, based on the contents of the Flags field, may contain a Stride Length field and a Total Distance field.

ScanIntervalWindow

export interface ScanIntervalWindow 

The Scan Interval Window characteristic is used to store the scan parameters of the GATT Client. Included in this characteristic are the Scan Interval and Scan Window of the GATT Client device.

The Scan Interval Window characteristic is used to store the scan parameters of the GATT Client. The GATT Server can use these values to optimize its own advertisement rate and to minimize the rate of its own advertisements while also minimizing the latency of reconnections.

ScanRefresh

export interface ScanRefresh 

The Scan Refresh characteristic is used to notify the Client that the Server requires the Scan Interval Window characteristic to be written with the latest values upon notification.

SensorLocation

export interface SensorLocation 

The Sensor Location characteristic is used to expose the location of the sensor.

SerialNumberString

export interface SerialNumberString 

The value of this characteristic is a variable-length UTF-8 string representing the serial number for a particular instance of the device.

SoftwareRevisionString

export interface SoftwareRevisionString 

The value of this characteristic is a UTF-8 string representing the software revision for the software within the device.

SportTypeForAerobicAndAnaerobicThresholds

export interface SportTypeForAerobicAndAnaerobicThresholds 

Sport type enumeration(See note below). The values of the Sport Type for Aerobic and Anaerobic Thresholds characteristic are defined below

StairClimberData

export interface StairClimberData 

The Stair Climber Data characteristic is used to send training-related data to the Client from a stair climber (Server).

StepClimberData

export interface StepClimberData 

The Step Climber Data characteristic is used to send training-related data to the Client from a step climber (Server).

SupportedHeartRateRange

export interface SupportedHeartRateRange 

The Supported Heart Rate Range characteristic is used to send the supported Heart Rate range as well as the minimum Heart Rate increment supported by the Server.

SupportedInclinationRange

export interface SupportedInclinationRange 

The Supported Inclination Range characteristic is used to send the supported inclination range as well as the minimum inclination increment supported by the Server.

SupportedNewAlertCategory

export interface SupportedNewAlertCategory 

Category that the server supports for new alert.

The value 0x0a is interpreted that this server supports ?Call? and ?Email? categories.

This characteristic uses the Alert Category ID Bit Mask Characteristic. If bit(s) is/are set, it means the server supports the corresponded categories for new incoming alert.

SupportedPowerRange

export interface SupportedPowerRange 

The Supported Power Range characteristic is used to send the supported power range as well as the minimum power increment supported by the Server.

SupportedResistanceLevelRange

export interface SupportedResistanceLevelRange 

The Supported Resistance Level Range characteristic is used to send the supported resistance level range as well as the minimum resistance increment supported by the Server.

SupportedSpeedRange

export interface SupportedSpeedRange 

The Supported Speed Range characteristic is used to send the supported speed range as well as the minimum speed increment supported by the Server.

SupportedUnreadAlertCategory

export interface SupportedUnreadAlertCategory 

Category that the server supports for unread alert.

The value 0x03 is interpreted that this server supports ?Simple Alert? and ?Email? categories for unread alert.

This characteristic uses the Alert Category ID Bit Mask Characteristic. If bit(s) is/are set, it means the server supports the corresponded categories for unread alert.

SystemId

export interface SystemId 

The SYSTEM ID characteristic consists of a structure with two fields. The first field are the LSOs and the second field contains the MSOs. This is a 64-bit structure which consists of a 40-bit manufacturer-defined identifier concatenated with a 24 bit unique Organizationally Unique Identifier (OUI). The OUI is issued by the IEEE Registration Authority (http://standards.ieee.org/regauth/index.html) and is required to be used in accordance with IEEE Standard 802-2001.6 while the least significant 40 bits are manufacturer defined.

If System ID generated based on a Bluetooth Device Address, it is required to be done as follows. System ID and the Bluetooth Device Address have a very similar structure: a Bluetooth Device Address is 48 bits in length and consists of a 24 bit Company Assigned Identifier (manufacturer defined identifier) concatenated with a 24 bit Company Identifier (OUI). In order to encapsulate a Bluetooth Device Address as System ID, the Company Identifier is concatenated with 0xFFFE followed by the Company Assigned Identifier of the Bluetooth Address. For more guidelines related to EUI-64, refer to http://standards.ieee.org/develop/regauth/tut/eui64.pdf.

If the system ID is based of a Bluetooth Device Address with a Company Identifier (OUI) is 0x123456 and the Company Assigned Identifier is 0x9ABCDE, then the System Identifier is required to be 0x123456FFFE9ABCDE.

Temperature

export interface Temperature 

TemperatureMeasurement

export interface TemperatureMeasurement 

The Temperature Measurement characteristic is a variable length structure containing a Flags field, a Temperature Measurement Value field and, based upon the contents of the Flags field, optionally a Time Stamp field and/or a Temperature Type field.

If the value of bit 1 of the Flags field is 0 and bit 2 is 0, the structure of the Temperature Measurement characteristic consists of two fields in this order; Flags and Temperature Measurement Value.

If the value of bit 1 of the Flags field is 1 (Time Stamp) and bit 2 is 0, the structure of the Temperature Measurement characteristic consists of three fields in this order: Flags, Temperature Measurement Value and Time Stamp.

If the value of bit 1 of the Flags field is 1 and bit 2 is 1 (Time Stamp and Temperature Type), the structure of the Temperature Measurement characteristic consists of four fields in this order: Flags, Temperature Measurement Value, Time Stamp and Temperature Type.

If the value of bit 1 of the Flags field is 0 and bit 2 is 1 (Temperature Type), the structure of the Temperature Measurement characteristic consists of three fields in this order: Flags, Temperature Measurement Value and Temperature Type.

The flags is the first field sent followed by the Temperature Measurement Value.

The fields in the above table are in the order of LSO to MSO. Where LSO = Least Significant Octet and MSO = Most Significant Octet.

TemperatureType

export interface TemperatureType 

The Temperature Type characteristic is an enumeration that indicates where the temperature was measured.

These Temperature Type values correspond to the Temperature Type descriptions used in ISO/IEEE 11073-10408-2008.

ThreeZoneHeartRateLimits

export interface ThreeZoneHeartRateLimits 

Data structure containing the limits between the heart rate zones for the 3-zone heart rate definition (Hard, Moderate and Light).

TimeAccuracy

export interface TimeAccuracy 

TimeSource

export interface TimeSource 

TimeTriggerSetting

export interface TimeTriggerSetting 

The value of the descriptor has two parts. Part one is a condition field and occupies one octet, and part two is the comparison value (trigger point) that the characteristic value is checked against.

TimeUpdateControlPoint

export interface TimeUpdateControlPoint 

TimeUpdateState

export interface TimeUpdateState 

TimeWithDst

export interface TimeWithDst 

TimeZone

export interface TimeZone 

TreadmillData

export interface TreadmillData 

The Treadmill Data characteristic is used to send training-related data to the Client from a treadmill (Server).

TrueWindDirection

export interface TrueWindDirection 

TrueWindSpeed

export interface TrueWindSpeed 

TwoZoneHeartRateLimit

export interface TwoZoneHeartRateLimit 

Heart rate limit between the heart rate zones for the 2-zone heart rate definition (Fitness and Fat Burn).

TxPowerLevel

export interface TxPowerLevel 

The Transmit Power Level characteristic represents the current transmit power level in dBm, and the level ranges from -100 dBm to +20 dBm to a resolution of 1 dBm.

The value 0x12 is interpreted as +18dBm

The value 0xEE is interpreted as -18dBm

The value of the characteristic is a signed 8 bit integer that has a fixed point exponent of 0.

Uncertainty

export interface Uncertainty 

The Uncertainty characteristic describes the uncertainty of the location information the device exposes.

UnreadAlertStatus

export interface UnreadAlertStatus 

This characteristic shows how many numbers of unread alerts exist in the specific category in the device.

The value 0x01, 0x04 are interpreted that the server has 4 unread messages in Email category.

This characteristic consists of ?Category ID? and ?uint8? which shows the number of unread alerts/messages.

Uri

export interface Uri 

The Uniform Resource Identifier (URI) Characteristic is used to configure the URI for a subsequent request.

UserIndex

export interface UserIndex 

UvIndex

export interface UvIndex 

ValueTriggerSetting

export interface ValueTriggerSetting 

The value of the descriptor has two parts. Part one is a condition field and occupies one octet, and part two is the comparison value (trigger point) that the characteristic value is checked against.

Vo2Max

export interface Vo2Max 

Maximal Oxygen uptake of a user

WaistCircumference

export interface WaistCircumference 

Used with the Hip Circumference value to calculate the Waist to Hip Ratio (WHR)

Weight

export interface Weight 

Weight of the User

WeightMeasurement

export interface WeightMeasurement 

WeightScaleFeature

export interface WeightScaleFeature 

WindChill

export interface WindChill 

TypeAliases

GattCharacteristicName

type GattCharacteristicName = keyof typeof GATT_CHARACTERISTIC_TABLE;

GattDescriptorName

type GattDescriptorName = keyof typeof GATT_DESCRIPTOR_TABLE;

GattIdsTable

type GattIdsTable<T extends GattName> = Record<T, GattTableValues>;

GattName

type GattName = GattServiceName | GattCharacteristicName | GattDescriptorName;

GattServiceName

type GattServiceName = keyof typeof GATT_SERVICE_TABLE;

GattTableValues

type GattTableValues = readonly [value: number, label: string | undefined];

Variables

BT_READERS

BT_READERS: Readonly<Map<number, BtReaderClass>>

gatt

gatt: {
    characteristic: TableAccessor<GattCharacteristicName>;
    descriptor: TableAccessor<GattDescriptorName>;
    service: TableAccessor<GattServiceName>;
}

Helper for accessing the various assigned numbers/values and their metadata.

GATT_CHARACTERISTIC_TABLE

GATT_CHARACTERISTIC_TABLE: Readonly<{
    readonly acceleration: readonly [11270, "Acceleration"];
    readonly acs_control_point: readonly [11059, "ACS Control Point"];
    readonly acs_data_in: readonly [11056, "ACS Data In"];
    readonly acs_data_out_indicate: readonly [11058, "ACS Data Out Indicate"];
    readonly acs_data_out_notify: readonly [11057, "ACS Data Out Notify"];
    readonly acs_status: readonly [11055, "ACS Status"];
    readonly active_preset_index: readonly [11228, "Active Preset Index"];
    readonly activity_goal: readonly [11086, "Activity Goal"];
    readonly advertising_constant_tone_extension_interval: readonly [11185, "Advertising Constant Tone Extension Interval"];
    readonly advertising_constant_tone_extension_minimum_length: readonly [11182, "Advertising Constant Tone Extension Minimum Length"];
    readonly advertising_constant_tone_extension_minimum_transmit_count: readonly [11183, "Advertising Constant Tone Extension Minimum Transmit Count"];
    readonly advertising_constant_tone_extension_phy: readonly [11186, "Advertising Constant Tone Extension PHY"];
    readonly advertising_constant_tone_extension_transmit_duration: readonly [11184, "Advertising Constant Tone Extension Transmit Duration"];
    readonly aerobic_heart_rate_lower_limit: readonly [10878, "Aerobic Heart Rate Lower Limit"];
    readonly aerobic_heart_rate_upper_limit: readonly [10884, "Aerobic Heart Rate Upper Limit"];
    readonly aerobic_threshold: readonly [10879, "Aerobic Threshold"];
    readonly age: readonly [10880, "Age"];
    readonly aggregate: readonly [10842, "Aggregate"];
    readonly alert_category_id: readonly [10819, "Alert Category ID"];
    readonly alert_category_id_bit_mask: readonly [10818, "Alert Category ID Bit Mask"];
    readonly alert_level: readonly [10758, "Alert Level"];
    readonly alert_notification_control_point: readonly [10820, "Alert Notification Control Point"];
    readonly alert_status: readonly [10815, "Alert Status"];
    readonly altitude: readonly [10931, "Altitude"];
    readonly ammonia_concentration: readonly [11215, "Ammonia Concentration"];
    readonly anaerobic_heart_rate_lower_limit: readonly [10881, "Anaerobic Heart Rate Lower Limit"];
    readonly anaerobic_heart_rate_upper_limit: readonly [10882, "Anaerobic Heart Rate Upper Limit"];
    readonly anaerobic_threshold: readonly [10883, "Anaerobic Threshold"];
    readonly analog: readonly [10840, undefined];
    readonly analog_output: readonly [10841, undefined];
    readonly ap_sync_key_material: readonly [11255, "AP Sync Key Material"];
    readonly apparent_energy_32: readonly [11145, "Apparent Energy 32"];
    readonly apparent_power: readonly [11146, "Apparent Power"];
    readonly apparent_wind_direction: readonly [10867, "Apparent Wind Direction"];
    readonly apparent_wind_speed: readonly [10866, "Apparent Wind Speed"];
    readonly ase_control_point: readonly [11206, "ASE Control Point"];
    readonly audio_input_control_point: readonly [11131, "Audio Input Control Point"];
    readonly audio_input_description: readonly [11132, "Audio Input Description"];
    readonly audio_input_state: readonly [11127, "Audio Input State"];
    readonly audio_input_status: readonly [11130, "Audio Input Status"];
    readonly audio_input_type: readonly [11129, "Audio Input Type"];
    readonly audio_location: readonly [11137, "Audio Location"];
    readonly audio_output_description: readonly [11139, "Audio Output Description"];
    readonly available_audio_contexts: readonly [11213, "Available Audio Contexts"];
    readonly average_current: readonly [10976, "Average Current"];
    readonly average_voltage: readonly [10977, "Average Voltage"];
    readonly barometric_pressure_trend: readonly [10915, "Barometric Pressure Trend"];
    readonly battery_critical_status: readonly [11241, "Battery Critical Status"];
    readonly battery_energy_status: readonly [11248, "Battery Energy Status"];
    readonly battery_health_information: readonly [11243, "Battery Health Information"];
    readonly battery_health_status: readonly [11242, "Battery Health Status"];
    readonly battery_information: readonly [11244, "Battery Information"];
    readonly battery_level: readonly [10777, "Battery Level"];
    readonly battery_level_state: readonly [10779, undefined];
    readonly battery_level_status: readonly [11245, "Battery Level Status"];
    readonly battery_power_state: readonly [10778, undefined];
    readonly battery_time_status: readonly [11246, "Battery Time Status"];
    readonly bearer_list_current_calls: readonly [11193, "Bearer List Current Calls"];
    readonly bearer_provider_name: readonly [11187, "Bearer Provider Name"];
    readonly bearer_signal_strength: readonly [11191, "Bearer Signal Strength"];
    readonly bearer_signal_strength_reporting_interval: readonly [11192, "Bearer Signal Strength Reporting Interval"];
    readonly bearer_technology: readonly [11189, "Bearer Technology"];
    readonly bearer_uci: readonly [11188, "Bearer UCI"];
    readonly bearer_uri_schemes_supported_list: readonly [11190, "Bearer URI Schemes Supported List"];
    readonly bgr_features: readonly [11268, "BGR Features"];
    readonly bgs_features: readonly [11267, "BGS Features"];
    readonly blood_pressure_feature: readonly [10825, "Blood Pressure Feature"];
    readonly blood_pressure_measurement: readonly [10805, "Blood Pressure Measurement"];
    readonly blood_pressure_record: readonly [11062, "Blood Pressure Record"];
    readonly bluetooth_sig_data: readonly [11065, "Bluetooth SIG Data"];
    readonly body_composition_feature: readonly [10907, "Body Composition Feature"];
    readonly body_composition_measurement: readonly [10908, "Body Composition Measurement"];
    readonly body_sensor_location: readonly [10808, "Body Sensor Location"];
    readonly bond_management_control_point: readonly [10916, "Bond Management Control Point"];
    readonly bond_management_feature: readonly [10917, "Bond Management Feature"];
    readonly boolean: readonly [10978, "Boolean"];
    readonly boot_keyboard_input_report: readonly [10786, "Boot Keyboard Input Report"];
    readonly boot_keyboard_output_report: readonly [10802, "Boot Keyboard Output Report"];
    readonly boot_mouse_input_report: readonly [10803, "Boot Mouse Input Report"];
    readonly br_edr_handover_data: readonly [11064, "BR-EDR Handover Data"];
    readonly broadcast_audio_scan_control_point: readonly [11207, "Broadcast Audio Scan Control Point"];
    readonly broadcast_receive_state: readonly [11208, "Broadcast Receive State"];
    readonly bss_control_point: readonly [11051, "BSS Control Point"];
    readonly bss_response: readonly [11052, "BSS Response"];
    readonly call_control_point: readonly [11198, "Call Control Point"];
    readonly call_control_point_optional_opcodes: readonly [11199, "Call Control Point Optional Opcodes"];
    readonly call_friendly_name: readonly [11202, "Call Friendly Name"];
    readonly call_state: readonly [11197, "Call State"];
    readonly caloric_intake: readonly [11088, "Caloric Intake"];
    readonly carbon_monoxide_concentration: readonly [11216, "Carbon Monoxide Concentration"];
    readonly cardiorespiratory_activity_instantaneous_data: readonly [11070, "CardioRespiratory Activity Instantaneous Data"];
    readonly cardiorespiratory_activity_summary_data: readonly [11071, "CardioRespiratory Activity Summary Data"];
    readonly cgm_feature: readonly [10920, "CGM Feature"];
    readonly cgm_measurement: readonly [10919, "CGM Measurement"];
    readonly cgm_session_run_time: readonly [10923, "CGM Session Run Time"];
    readonly cgm_session_start_time: readonly [10922, "CGM Session Start Time"];
    readonly cgm_specific_ops_control_point: readonly [10924, "CGM Specific Ops Control Point"];
    readonly cgm_status: readonly [10921, "CGM Status"];
    readonly chromatic_distance_from_planckian: readonly [10979, "Chromatic Distance from Planckian"];
    readonly chromaticity_coordinate: readonly [11036, "Chromaticity Coordinate"];
    readonly chromaticity_coordinates: readonly [10980, "Chromaticity Coordinates"];
    readonly chromaticity_in_cct_and_duv_values: readonly [10981, "Chromaticity in CCT and Duv Values"];
    readonly chromaticity_tolerance: readonly [10982, "Chromaticity Tolerance"];
    readonly cie_13_3_1995_color_rendering_index: readonly [10983, "CIE 13.3-1995 Color Rendering Index"];
    readonly client_supported_features: readonly [11049, "Client Supported Features"];
    readonly co2_concentration: readonly [11148, "\"CO\\\\textsubscript{2} Concentration\""];
    readonly coefficient: readonly [10984, "Coefficient"];
    readonly constant_tone_extension_enable: readonly [11181, "Constant Tone Extension Enable"];
    readonly content_control_id: readonly [11194, "Content Control ID"];
    readonly correlated_color_temperature: readonly [10985, "Correlated Color Temperature"];
    readonly cosine_of_the_angle: readonly [11149, "Cosine of the Angle"];
    readonly count_16: readonly [10986, "Count 16"];
    readonly count_24: readonly [10987, "Count 24"];
    readonly country_code: readonly [10988, "Country Code"];
    readonly cross_trainer_data: readonly [10958, "Cross Trainer Data"];
    readonly csc_feature: readonly [10844, "CSC Feature"];
    readonly csc_measurement: readonly [10843, "CSC Measurement"];
    readonly current_elapsed_time: readonly [11250, "Current Elapsed Time"];
    readonly current_group_object_id: readonly [11168, "Current Group Object ID"];
    readonly current_time: readonly [10795, "Current Time"];
    readonly current_track_object_id: readonly [11165, "Current Track Object ID"];
    readonly current_track_segments_object_id: readonly [11164, "Current Track Segments Object ID"];
    readonly cycling_power_control_point: readonly [10854, "Cycling Power Control Point"];
    readonly cycling_power_feature: readonly [10853, "Cycling Power Feature"];
    readonly cycling_power_measurement: readonly [10851, "Cycling Power Measurement"];
    readonly cycling_power_vector: readonly [10852, "Cycling Power Vector"];
    readonly database_change_increment: readonly [10905, "Database Change Increment"];
    readonly database_hash: readonly [11050, "Database Hash"];
    readonly date_of_birth: readonly [10885, "Date of Birth"];
    readonly date_of_threshold_assessment: readonly [10886, "Date of Threshold Assessment"];
    readonly date_time: readonly [10760, "Date Time"];
    readonly date_utc: readonly [10989, "Date UTC"];
    readonly day_date_time: readonly [10762, "Day Date Time"];
    readonly day_of_week: readonly [10761, "Day of Week"];
    readonly descriptor_value_changed: readonly [10877, "Descriptor Value Changed"];
    readonly device_time: readonly [11152, "Device Time"];
    readonly device_time_control_point: readonly [11153, "Device Time Control Point"];
    readonly device_time_feature: readonly [11150, "Device Time Feature"];
    readonly device_time_parameters: readonly [11151, "Device Time Parameters"];
    readonly device_wearing_position: readonly [11083, "Device Wearing Position"];
    readonly dew_point: readonly [10875, "Dew Point"];
    readonly digital: readonly [10838, undefined];
    readonly digital_output: readonly [10839, undefined];
    readonly dst_offset: readonly [10765, "DST Offset"];
    readonly electric_current: readonly [10990, "Electric Current"];
    readonly electric_current_range: readonly [10991, "Electric Current Range"];
    readonly electric_current_specification: readonly [10992, "Electric Current Specification"];
    readonly electric_current_statistics: readonly [10993, "Electric Current Statistics"];
    readonly elevation: readonly [10860, "Elevation"];
    readonly email_address: readonly [10887, "Email Address"];
    readonly emergency_id: readonly [11053, "Emergency ID"];
    readonly emergency_text: readonly [11054, "Emergency Text"];
    readonly encrypted_data_key_material: readonly [11144, "Encrypted Data Key Material"];
    readonly energy: readonly [10994, "Energy"];
    readonly energy_32: readonly [11176, "Energy 32"];
    readonly energy_in_a_period_of_day: readonly [10995, "Energy in a Period of Day"];
    readonly enhanced_blood_pressure_measurement: readonly [11060, "Enhanced Blood Pressure Measurement"];
    readonly enhanced_intermediate_cuff_pressure: readonly [11061, "Enhanced Intermediate Cuff Pressure"];
    readonly esl_address: readonly [11254, "ESL Address"];
    readonly esl_control_point: readonly [11262, "ESL Control Point"];
    readonly esl_current_absolute_time: readonly [11257, "ESL Current Absolute Time"];
    readonly esl_display_information: readonly [11258, "ESL Display Information"];
    readonly esl_image_information: readonly [11259, "ESL Image Information"];
    readonly esl_led_information: readonly [11261, "ESL LED Information"];
    readonly esl_response_key_material: readonly [11256, "ESL Response Key Material"];
    readonly esl_sensor_information: readonly [11260, "ESL Sensor Information"];
    readonly estimated_service_date: readonly [11247, "Estimated Service Date"];
    readonly event_statistics: readonly [10996, "Event Statistics"];
    readonly exact_time_100: readonly [10763, undefined];
    readonly exact_time_256: readonly [10764, "Exact Time 256"];
    readonly fat_burn_heart_rate_lower_limit: readonly [10888, "Fat Burn Heart Rate Lower Limit"];
    readonly fat_burn_heart_rate_upper_limit: readonly [10889, "Fat Burn Heart Rate Upper Limit"];
    readonly firmware_revision_string: readonly [10790, "Firmware Revision String"];
    readonly first_name: readonly [10890, "First Name"];
    readonly first_use_date: readonly [11278, "First Use Date"];
    readonly fitness_machine_control_point: readonly [10969, "Fitness Machine Control Point"];
    readonly fitness_machine_feature: readonly [10956, "Fitness Machine Feature"];
    readonly fitness_machine_status: readonly [10970, "Fitness Machine Status"];
    readonly five_zone_heart_rate_limits: readonly [10891, "Five Zone Heart Rate Limits"];
    readonly fixed_string_16: readonly [10997, "Fixed String 16"];
    readonly fixed_string_24: readonly [10998, "Fixed String 24"];
    readonly fixed_string_36: readonly [10999, "Fixed String 36"];
    readonly fixed_string_64: readonly [11230, "Fixed String 64"];
    readonly fixed_string_8: readonly [11000, "Fixed String 8"];
    readonly floor_number: readonly [10930, "Floor Number"];
    readonly force: readonly [11271, "Force"];
    readonly four_zone_heart_rate_limits: readonly [11084, "Four Zone Heart Rate Limits"];
    readonly gain_settings_attribute: readonly [11128, "Gain Settings Attribute"];
    readonly "gap.appearance": readonly [10753, "Appearance"];
    readonly "gap.central_address_resolution": readonly [10918, "Central Address Resolution"];
    readonly "gap.device_name": readonly [10752, "Device Name"];
    readonly "gap.peripheral_preferred_connection_parameters": readonly [10756, "Peripheral Preferred Connection Parameters"];
    readonly "gap.peripheral_privacy_flag": readonly [10754, "Peripheral Privacy Flag"];
    readonly "gap.reconnection_address": readonly [10755, "Reconnection Address"];
    readonly "gatt.service_changed": readonly [10757, "Service Changed"];
    readonly gender: readonly [10892, "Gender"];
    readonly general_activity_instantaneous_data: readonly [11068, "General Activity Instantaneous Data"];
    readonly general_activity_summary_data: readonly [11069, "General Activity Summary Data"];
    readonly generic_level: readonly [11001, "Generic Level"];
    readonly ghs_control_point: readonly [11252, "GHS Control Point"];
    readonly global_trade_item_number: readonly [11002, "Global Trade Item Number"];
    readonly glucose_feature: readonly [10833, "Glucose Feature"];
    readonly glucose_measurement: readonly [10776, "Glucose Measurement"];
    readonly glucose_measurement_context: readonly [10804, "Glucose Measurement Context"];
    readonly gmap_role: readonly [11264, "GMAP Role"];
    readonly gust_factor: readonly [10868, "Gust Factor"];
    readonly handedness: readonly [11082, "Handedness"];
    readonly hardware_revision_string: readonly [10791, "Hardware Revision String"];
    readonly health_sensor_features: readonly [11251, "Health Sensor Features"];
    readonly hearing_aid_features: readonly [11226, "Hearing Aid Features"];
    readonly hearing_aid_preset_control_point: readonly [11227, "Hearing Aid Preset Control Point"];
    readonly heart_rate_control_point: readonly [10809, "Heart Rate Control Point"];
    readonly heart_rate_max: readonly [10893, "Heart Rate Max"];
    readonly heart_rate_measurement: readonly [10807, "Heart Rate Measurement"];
    readonly heat_index: readonly [10874, "Heat Index"];
    readonly height: readonly [10894, "Height"];
    readonly hid_control_point: readonly [10828, "HID Control Point"];
    readonly hid_information: readonly [10826, "HID Information"];
    readonly high_intensity_exercise_threshold: readonly [11085, "High Intensity Exercise Threshold"];
    readonly high_resolution_height: readonly [11079, "High Resolution Height"];
    readonly high_temperature: readonly [11231, "High Temperature"];
    readonly high_voltage: readonly [11232, "High Voltage"];
    readonly hip_circumference: readonly [10895, "Hip Circumference"];
    readonly http_control_point: readonly [10938, "HTTP Control Point"];
    readonly http_entity_body: readonly [10937, "HTTP Entity Body"];
    readonly http_headers: readonly [10935, "HTTP Headers"];
    readonly http_status_code: readonly [10936, "HTTP Status Code"];
    readonly https_security: readonly [10939, "HTTPS Security"];
    readonly humidity: readonly [10863, "Humidity"];
    readonly idd_annunciation_status: readonly [11042, "IDD Annunciation Status"];
    readonly idd_command_control_point: readonly [11045, "IDD Command Control Point"];
    readonly idd_command_data: readonly [11046, "IDD Command Data"];
    readonly idd_features: readonly [11043, "IDD Features"];
    readonly idd_history_data: readonly [11048, "IDD History Data"];
    readonly idd_record_access_control_point: readonly [11047, "IDD Record Access Control Point"];
    readonly idd_status: readonly [11041, "IDD Status"];
    readonly idd_status_changed: readonly [11040, "IDD Status Changed"];
    readonly idd_status_reader_control_point: readonly [11044, "IDD Status Reader Control Point"];
    readonly "ieee_11073-20601_regulatory_certification_data_list": readonly [10794, "IEEE 11073-20601 Regulatory Certification Data List"];
    readonly illuminance: readonly [11003, "Illuminance"];
    readonly imd_control: readonly [11282, "IMD Control"];
    readonly imd_historical_data: readonly [11283, "IMD Historical Data"];
    readonly imd_status: readonly [11276, "IMD Status"];
    readonly imds_descriptor_value_changed: readonly [11277, "IMDS Descriptor Value Changed"];
    readonly incoming_call: readonly [11201, "Incoming Call"];
    readonly incoming_call_target_bearer_uri: readonly [11196, "Incoming Call Target Bearer URI"];
    readonly indoor_bike_data: readonly [10962, "Indoor Bike Data"];
    readonly indoor_positioning_configuration: readonly [10925, "Indoor Positioning Configuration"];
    readonly intermediate_cuff_pressure: readonly [10806, "Intermediate Cuff Pressure"];
    readonly intermediate_temperature: readonly [10782, "Intermediate Temperature"];
    readonly irradiance: readonly [10871, "Irradiance"];
    readonly language: readonly [10914, "Language"];
    readonly last_name: readonly [10896, "Last Name"];
    readonly latitude: readonly [10926, "Latitude"];
    readonly le_gatt_security_levels: readonly [11253, "LE GATT Security Levels"];
    readonly length: readonly [11274, "Length"];
    readonly life_cycle_data: readonly [11279, "Life Cycle Data"];
    readonly light_distribution: readonly [11233, "Light Distribution"];
    readonly light_output: readonly [11234, "Light Output"];
    readonly light_source_type: readonly [11235, "Light Source Type"];
    readonly linear_position: readonly [11272, "Linear Position"];
    readonly live_health_observations: readonly [11147, "Live Health Observations"];
    readonly ln_control_point: readonly [10859, "LN Control Point"];
    readonly ln_feature: readonly [10858, "LN Feature"];
    readonly local_east_coordinate: readonly [10929, "Local East Coordinate"];
    readonly local_north_coordinate: readonly [10928, "Local North Coordinate"];
    readonly local_time_information: readonly [10767, "Local Time Information"];
    readonly location_and_speed: readonly [10855, "Location and Speed"];
    readonly location_name: readonly [10933, "Location Name"];
    readonly lock_characteristic: readonly [11142, "Set Member Lock"];
    readonly longitude: readonly [10927, "Longitude"];
    readonly luminous_efficacy: readonly [11004, "Luminous Efficacy"];
    readonly luminous_energy: readonly [11005, "Luminous Energy"];
    readonly luminous_exposure: readonly [11006, "Luminous Exposure"];
    readonly luminous_flux: readonly [11007, "Luminous Flux"];
    readonly luminous_flux_range: readonly [11008, "Luminous Flux Range"];
    readonly luminous_intensity: readonly [11009, "Luminous Intensity"];
    readonly magnetic_declination: readonly [10796, "Magnetic Declination"];
    readonly magnetic_flux_density_2d: readonly [10912, "Magnetic Flux Density - 2D"];
    readonly magnetic_flux_density_3d: readonly [10913, "Magnetic Flux Density - 3D"];
    readonly manufacturer_name_string: readonly [10793, "Manufacturer Name String"];
    readonly mass_flow: readonly [11010, "Mass Flow"];
    readonly maximum_recommended_heart_rate: readonly [10897, "Maximum Recommended Heart Rate"];
    readonly measurement_interval: readonly [10785, "Measurement Interval"];
    readonly media_control_point: readonly [11172, "Media Control Point"];
    readonly media_control_point_opcodes_supported: readonly [11173, "Media Control Point Opcodes Supported"];
    readonly media_player_icon_object_id: readonly [11156, "Media Player Icon Object ID"];
    readonly media_player_icon_url: readonly [11157, "Media Player Icon URL"];
    readonly media_player_name: readonly [11155, "Media Player Name"];
    readonly media_state: readonly [11171, "Media State"];
    readonly medical_devices: readonly [11263, "UDI for Medical Devices"];
    readonly mesh_provisioning_data_in: readonly [10971, "Mesh Provisioning Data In"];
    readonly mesh_provisioning_data_out: readonly [10972, "Mesh Provisioning Data Out"];
    readonly mesh_proxy_data_in: readonly [10973, "Mesh Proxy Data In"];
    readonly mesh_proxy_data_out: readonly [10974, "Mesh Proxy Data Out"];
    readonly methane_concentration: readonly [11217, "Methane Concentration"];
    readonly middle_name: readonly [11080, "Middle Name"];
    readonly model_number_string: readonly [10788, "Model Number String"];
    readonly mute: readonly [11203, "Mute"];
    readonly navigation: readonly [10856, "Navigation"];
    readonly network_availability: readonly [10814, undefined];
    readonly new_alert: readonly [10822, "New Alert"];
    readonly next_track_object_id: readonly [11166, "Next Track Object ID"];
    readonly nitrogen_dioxide_concentration: readonly [11218, "Nitrogen Dioxide Concentration"];
    readonly noise: readonly [11236, "Noise"];
    readonly "non-methane_volatile_organic_compounds_concentration": readonly [11219, "Non-Methane Volatile Organic Compounds Concentration"];
    readonly object_action_control_point: readonly [10949, "Object Action Control Point"];
    readonly object_changed: readonly [10952, "Object Changed"];
    readonly object_first_created: readonly [10945, "Object First-Created"];
    readonly object_id: readonly [10947, "Object ID"];
    readonly object_last_modified: readonly [10946, "Object Last-Modified"];
    readonly object_list_control_point: readonly [10950, "Object List Control Point"];
    readonly object_list_filter: readonly [10951, "Object List Filter"];
    readonly object_name: readonly [10942, "Object Name"];
    readonly object_properties: readonly [10948, "Object Properties"];
    readonly object_size: readonly [10944, "Object Size"];
    readonly object_type: readonly [10943, "Object Type"];
    readonly observation_schedule_changed: readonly [11249, "Observation Schedule Changed"];
    readonly "on-demand_ranging_data": readonly [11286, "On-demand Ranging Data"];
    readonly ots_feature: readonly [10941, "OTS Feature"];
    readonly ozone_concentration: readonly [11220, "Ozone Concentration"];
    readonly parent_group_object_id: readonly [11167, "Parent Group Object ID"];
    readonly particulate_matter_pm1_concentration: readonly [11221, "Particulate Matter - PM1 Concentration"];
    readonly particulate_matter_pm10_concentration: readonly [11223, "Particulate Matter - PM10 Concentration"];
    readonly particulate_matter_pm2_5_concentration: readonly [11222, "Particulate Matter - PM2.5 Concentration"];
    readonly perceived_lightness: readonly [11011, "Perceived Lightness"];
    readonly percentage_8: readonly [11012, "Percentage 8"];
    readonly percentage_8_steps: readonly [11269, "Percentage 8 Steps"];
    readonly physical_activity_current_session: readonly [11076, "Physical Activity Current Session"];
    readonly physical_activity_monitor_control_point: readonly [11075, "Physical Activity Monitor Control Point"];
    readonly physical_activity_monitor_features: readonly [11067, "Physical Activity Monitor Features"];
    readonly physical_activity_session_descriptor: readonly [11077, "Physical Activity Session Descriptor"];
    readonly playback_speed: readonly [11162, "Playback Speed"];
    readonly playing_order: readonly [11169, "Playing Order"];
    readonly playing_orders_supported: readonly [11170, "Playing Orders Supported"];
    readonly plx_continuous_measurement: readonly [10847, "PLX Continuous Measurement"];
    readonly plx_features: readonly [10848, "PLX Features"];
    readonly plx_spot_check_measurement: readonly [10846, "PLX Spot-Check Measurement"];
    readonly pnp_id: readonly [10832, "PnP ID"];
    readonly pollen_concentration: readonly [10869, "Pollen Concentration"];
    readonly position_2d: readonly [10799, undefined];
    readonly position_3d: readonly [10800, undefined];
    readonly position_quality: readonly [10857, "Position Quality"];
    readonly power: readonly [11013, "Power"];
    readonly power_specification: readonly [11014, "Power Specification"];
    readonly preferred_units: readonly [11078, "Preferred Units"];
    readonly pressure: readonly [10861, "Pressure"];
    readonly protocol_mode: readonly [10830, "Protocol Mode"];
    readonly pulse_oximetry_control_point: readonly [10850, undefined];
    readonly rainfall: readonly [10872, "Rainfall"];
    readonly ranging_data_ready: readonly [11288, "Ranging Data Ready"];
    readonly rank_characteristic: readonly [11143, "Set Member Rank"];
    readonly ras_control_point: readonly [11287, "RAS Control Point"];
    readonly ras_features: readonly [11284, "RAS Features"];
    readonly rc_feature: readonly [11037, "RC Feature"];
    readonly rc_settings: readonly [11038, "RC Settings"];
    readonly "real-time_ranging_data": readonly [11285, "Real-time Ranging Data"];
    readonly reconnection_configuration_control_point: readonly [11039, "Reconnection Configuration Control Point"];
    readonly record_access_control_point: readonly [10834, "Record Access Control Point"];
    readonly reference_time_information: readonly [10772, "Reference Time Information"];
    readonly registered_user: readonly [11063, "Registered User"];
    readonly relative_runtime_in_a_correlated_color_temperature_range: readonly [11237, "Relative Runtime in a Correlated Color Temperature Range"];
    readonly relative_runtime_in_a_current_range: readonly [11015, "Relative Runtime in a Current Range"];
    readonly relative_runtime_in_a_generic_level_range: readonly [11016, "Relative Runtime in a Generic Level Range"];
    readonly relative_value_in_a_period_of_day: readonly [11019, "Relative Value in a Period of Day"];
    readonly relative_value_in_a_temperature_range: readonly [11020, "Relative Value in a Temperature Range"];
    readonly relative_value_in_a_voltage_range: readonly [11017, "Relative Value in a Voltage Range"];
    readonly relative_value_in_an_illuminance_range: readonly [11018, "Relative Value in an Illuminance Range"];
    readonly removable: readonly [10810, undefined];
    readonly report: readonly [10829, "Report"];
    readonly report_map: readonly [10827, "Report Map"];
    readonly resolvable_private_address_only: readonly [10953, "Resolvable Private Address Only"];
    readonly resting_heart_rate: readonly [10898, "Resting Heart Rate"];
    readonly ringer_control_point: readonly [10816, "Ringer Control Point"];
    readonly ringer_setting: readonly [10817, "Ringer Setting"];
    readonly rotational_speed: readonly [11273, "Rotational Speed"];
    readonly rower_data: readonly [10961, "Rower Data"];
    readonly rsc_feature: readonly [10836, "RSC Feature"];
    readonly rsc_measurement: readonly [10835, "RSC Measurement"];
    readonly sc_control_point: readonly [10837, "SC Control Point"];
    readonly scan_interval_window: readonly [10831, "Scan Interval Window"];
    readonly scan_refresh: readonly [10801, "Scan Refresh"];
    readonly scientific_temperature_celsius: readonly [10812, undefined];
    readonly search_control_point: readonly [11175, "Search Control Point"];
    readonly search_results_object_id: readonly [11174, "Search Results Object ID"];
    readonly secondary_time_zone: readonly [10768, undefined];
    readonly sedentary_interval_notification: readonly [11087, "Sedentary Interval Notification"];
    readonly seeking_speed: readonly [11163, "Seeking Speed"];
    readonly sensor_location: readonly [10845, "Sensor Location"];
    readonly serial_number_string: readonly [10789, "Serial Number String"];
    readonly server_supported_features: readonly [11066, "Server Supported Features"];
    readonly service_cycle_data: readonly [11281, "Service Cycle Data"];
    readonly service_required: readonly [10811, undefined];
    readonly set_identity_resolving_key: readonly [11140, "Set Identity Resolving Key"];
    readonly sink_ase: readonly [11204, "Sink ASE"];
    readonly sink_audio_locations: readonly [11210, "Sink Audio Locations"];
    readonly sink_pac: readonly [11209, "Sink PAC"];
    readonly size_characteristic: readonly [11141, "Coordinated Set Size"];
    readonly sleep_activity_instantaneous_data: readonly [11073, "Sleep Activity Instantaneous Data"];
    readonly sleep_activity_summary_data: readonly [11074, "Sleep Activity Summary Data"];
    readonly software_revision_string: readonly [10792, "Software Revision String"];
    readonly source_ase: readonly [11205, "Source ASE"];
    readonly source_audio_locations: readonly [11212, "Source Audio Locations"];
    readonly source_pac: readonly [11211, "Source PAC"];
    readonly sport_type_for_aerobic_and_anaerobic_thresholds: readonly [10899, "Sport Type for Aerobic and Anaerobic Thresholds"];
    readonly stair_climber_data: readonly [10960, "Stair Climber Data"];
    readonly status_flags: readonly [11195, "Status Flags"];
    readonly step_climber_data: readonly [10959, "Step Climber Data"];
    readonly step_counter_activity_summary_data: readonly [11072, "Step Counter Activity Summary Data"];
    readonly stored_health_observations: readonly [11229, "Stored Health Observations"];
    readonly stride_length: readonly [11081, "Stride Length"];
    readonly string: readonly [10813, undefined];
    readonly sulfur_dioxide_concentration: readonly [11224, "Sulfur Dioxide Concentration"];
    readonly sulfur_hexafluoride_concentration: readonly [11225, "Sulfur Hexafluoride Concentration"];
    readonly supported_audio_contexts: readonly [11214, "Supported Audio Contexts"];
    readonly supported_heart_rate_range: readonly [10967, "Supported Heart Rate Range"];
    readonly supported_inclination_range: readonly [10965, "Supported Inclination Range"];
    readonly supported_new_alert_category: readonly [10823, "Supported New Alert Category"];
    readonly supported_power_range: readonly [10968, "Supported Power Range"];
    readonly supported_resistance_level_range: readonly [10966, "Supported Resistance Level Range"];
    readonly supported_speed_range: readonly [10964, "Supported Speed Range"];
    readonly supported_unread_alert_category: readonly [10824, "Supported Unread Alert Category"];
    readonly system_id: readonly [10787, "System ID"];
    readonly tds_control_point: readonly [10940, "TDS Control Point"];
    readonly temperature: readonly [10862, "Temperature"];
    readonly temperature_8: readonly [11021, "Temperature 8"];
    readonly temperature_8_in_a_period_of_day: readonly [11022, "Temperature 8 in a Period of Day"];
    readonly temperature_8_statistics: readonly [11023, "Temperature 8 Statistics"];
    readonly temperature_celsius: readonly [10783, undefined];
    readonly temperature_fahrenheit: readonly [10784, undefined];
    readonly temperature_measurement: readonly [10780, "Temperature Measurement"];
    readonly temperature_range: readonly [11024, "Temperature Range"];
    readonly temperature_statistics: readonly [11025, "Temperature Statistics"];
    readonly temperature_type: readonly [10781, "Temperature Type"];
    readonly termination_reason: readonly [11200, "Termination Reason"];
    readonly three_zone_heart_rate_limits: readonly [10900, "Three Zone Heart Rate Limits"];
    readonly time_accuracy: readonly [10770, "Time Accuracy"];
    readonly time_broadcast: readonly [10773, undefined];
    readonly time_change_log_data: readonly [11154, "Time Change Log Data"];
    readonly time_decihour_8: readonly [11026, "Time Decihour 8"];
    readonly time_exponential_8: readonly [11027, "Time Exponential 8"];
    readonly time_hour_24: readonly [11028, "Time Hour 24"];
    readonly time_millisecond_24: readonly [11029, "Time Millisecond 24"];
    readonly time_second_16: readonly [11030, "Time Second 16"];
    readonly time_second_32: readonly [11238, "Time Second 32"];
    readonly time_second_8: readonly [11031, "Time Second 8"];
    readonly time_source: readonly [10771, "Time Source"];
    readonly time_update_control_point: readonly [10774, "Time Update Control Point"];
    readonly time_update_state: readonly [10775, "Time Update State"];
    readonly time_with_dst: readonly [10769, "Time with DST"];
    readonly time_zone: readonly [10766, "Time Zone"];
    readonly tmap_role: readonly [11089, "TMAP Role"];
    readonly torque: readonly [11275, "Torque"];
    readonly track_changed: readonly [11158, "Track Changed"];
    readonly track_duration: readonly [11160, "Track Duration"];
    readonly track_position: readonly [11161, "Track Position"];
    readonly track_title: readonly [11159, "Track Title"];
    readonly training_status: readonly [10963, "Training Status"];
    readonly treadmill_data: readonly [10957, "Treadmill Data"];
    readonly true_wind_direction: readonly [10865, "True Wind Direction"];
    readonly true_wind_speed: readonly [10864, "True Wind Speed"];
    readonly two_zone_heart_rate_limits: readonly [10901, "Two Zone Heart Rate Limits"];
    readonly tx_power_level: readonly [10759, "Tx Power Level"];
    readonly ugg_features: readonly [11265, "UGG Features"];
    readonly ugt_features: readonly [11266, "UGT Features"];
    readonly uncertainty: readonly [10932, "Uncertainty"];
    readonly unread_alert_status: readonly [10821, "Unread Alert Status"];
    readonly uri: readonly [10934, "URI"];
    readonly user_control_point: readonly [10911, "User Control Point"];
    readonly user_index: readonly [10906, "User Index"];
    readonly uv_index: readonly [10870, "UV Index"];
    readonly vo2_max: readonly [10902, "VO2 Max"];
    readonly voc_concentration: readonly [11239, "VOC Concentration"];
    readonly voltage: readonly [11032, "Voltage"];
    readonly voltage_frequency: readonly [11240, "Voltage Frequency"];
    readonly voltage_specification: readonly [11033, "Voltage Specification"];
    readonly voltage_statistics: readonly [11034, "Voltage Statistics"];
    readonly volume_control_point: readonly [11134, "Volume Control Point"];
    readonly volume_flags: readonly [11135, "Volume Flags"];
    readonly volume_flow: readonly [11035, "Volume Flow"];
    readonly volume_offset_control_point: readonly [11138, "Volume Offset Control Point"];
    readonly volume_offset_state: readonly [11136, "Volume Offset State"];
    readonly volume_state: readonly [11133, "Volume State"];
    readonly waist_circumference: readonly [10903, "Waist Circumference"];
    readonly weight: readonly [10904, "Weight"];
    readonly weight_measurement: readonly [10909, "Weight Measurement"];
    readonly weight_scale_feature: readonly [10910, "Weight Scale Feature"];
    readonly wind_chill: readonly [10873, "Wind Chill"];
    readonly work_cycle_data: readonly [11280, "Work Cycle Data"];
}>

GATT_DESCRIPTOR_TABLE

GATT_DESCRIPTOR_TABLE: Readonly<{
    readonly complete_br_edr_transport_block_data: readonly [10511, "Complete BR-EDR Transport Block Data"];
    readonly es_configuration: readonly [10507, "Environmental Sensing Configuration"];
    readonly es_measurement: readonly [10508, "Environmental Sensing Measurement"];
    readonly es_trigger_setting: readonly [10509, "Environmental Sensing Trigger Setting"];
    readonly external_report_reference: readonly [10503, "External Report Reference"];
    readonly "gatt.characteristic_aggregate_format": readonly [10501, "Characteristic Aggregate Format"];
    readonly "gatt.characteristic_extended_properties": readonly [10496, "Characteristic Extended Properties"];
    readonly "gatt.characteristic_presentation_format": readonly [10500, "Characteristic Presentation Format"];
    readonly "gatt.characteristic_user_description": readonly [10497, "Characteristic User Description"];
    readonly "gatt.client_characteristic_configuration": readonly [10498, "Client Characteristic Configuration"];
    readonly "gatt.server_characteristic_configuration": readonly [10499, "Server Characteristic Configuration"];
    readonly manufacturer_limits: readonly [10515, "Manufacturer Limits"];
    readonly measurement_description: readonly [10514, "Measurement Description"];
    readonly number_of_digitals: readonly [10505, "Number of Digitals"];
    readonly observation_schedule: readonly [10512, "Observation Schedule"];
    readonly process_tolerances: readonly [10516, "Process Tolerances"];
    readonly report_reference: readonly [10504, "Report Reference"];
    readonly time_trigger_setting: readonly [10510, "Time Trigger Setting"];
    readonly valid_range: readonly [10502, "Valid Range"];
    readonly valid_range_accuracy: readonly [10513, "Valid Range and Accuracy"];
    readonly value_trigger_setting: readonly [10506, "Value Trigger Setting"];
}>

GATT_SERVICE_TABLE

GATT_SERVICE_TABLE: Readonly<{
    readonly alert_notification: readonly [6161, "Alert Notification"];
    readonly audio_input_control: readonly [6211, "Audio Input Control"];
    readonly audio_stream_control: readonly [6222, "Audio Stream Control"];
    readonly authorization_control: readonly [6205, "Authorization Control"];
    readonly automation_io: readonly [6165, "Automation IO"];
    readonly basic_audio_announcement: readonly [6225, "Basic Audio Announcement"];
    readonly battery_service: readonly [6159, "Battery"];
    readonly binary_sensor: readonly [6203, "Binary Sensor"];
    readonly blood_pressure: readonly [6160, "Blood Pressure"];
    readonly body_composition: readonly [6171, "Body Composition"];
    readonly bond_management: readonly [6174, "Bond Management"];
    readonly broadcast_audio_announcement: readonly [6226, "Broadcast Audio Announcement"];
    readonly broadcast_audio_scan: readonly [6223, "Broadcast Audio Scan"];
    readonly common_audio: readonly [6227, "Common Audio"];
    readonly constant_tone_extension: readonly [6218, "Constant Tone Extension"];
    readonly continuous_glucose_monitoring: readonly [6175, "Continuous Glucose Monitoring"];
    readonly coordinated_set_identification: readonly [6214, "Coordinated Set Identification"];
    readonly current_time: readonly [6149, "Current Time"];
    readonly cycling_power: readonly [6168, "Cycling Power"];
    readonly cycling_speed_and_cadence: readonly [6166, "Cycling Speed and Cadence"];
    readonly device_information: readonly [6154, "Device Information"];
    readonly device_time: readonly [6215, "Device Time"];
    readonly elapsed_time: readonly [6207, "Elapsed Time"];
    readonly electronic_shelf_label: readonly [6231, "Electronic Shelf Label"];
    readonly emergency_configuration: readonly [6204, "Emergency Configuration"];
    readonly environmental_sensing: readonly [6170, "Environmental Sensing"];
    readonly fitness_machine: readonly [6182, "Fitness Machine"];
    readonly gaming_audio: readonly [6232, "Gaming Audio"];
    readonly gap: readonly [6144, "GAP"];
    readonly gatt: readonly [6145, "GATT"];
    readonly generic_health_sensor: readonly [6208, "Generic Health Sensor"];
    readonly generic_media_control: readonly [6217, "Generic Media Control"];
    readonly generic_telephone_bearer: readonly [6220, "Generic Telephone Bearer"];
    readonly glucose: readonly [6152, "Glucose"];
    readonly health_thermometer: readonly [6153, "Health Thermometer"];
    readonly hearing_access: readonly [6228, "Hearing Access"];
    readonly heart_rate: readonly [6157, "Heart Rate"];
    readonly http_proxy: readonly [6179, "HTTP Proxy"];
    readonly human_interface_device: readonly [6162, "Human Interface Device"];
    readonly immediate_alert: readonly [6146, "Immediate Alert"];
    readonly indoor_positioning: readonly [6177, "Indoor Positioning"];
    readonly industrial_measurement_device: readonly [6234, "Industrial Measurement Device"];
    readonly insulin_delivery: readonly [6202, "Insulin Delivery"];
    readonly internet_protocol_support: readonly [6176, "Internet Protocol Support"];
    readonly link_loss: readonly [6147, "Link Loss"];
    readonly location_and_navigation: readonly [6169, "Location and Navigation"];
    readonly media_control: readonly [6216, "Media Control"];
    readonly mesh_provisioning: readonly [6183, "Mesh Provisioning"];
    readonly mesh_proxy: readonly [6184, "Mesh Proxy"];
    readonly mesh_proxy_solicitation: readonly [6233, "Mesh Proxy Solicitation"];
    readonly microphone_control: readonly [6221, "Microphone Control"];
    readonly next_dst_change: readonly [6151, "Next DST Change"];
    readonly object_transfer: readonly [6181, "Object Transfer"];
    readonly phone_alert_status: readonly [6158, "Phone Alert Status"];
    readonly physical_activity_monitor: readonly [6206, "Physical Activity Monitor"];
    readonly public_broadcast_announcement: readonly [6230, "Public Broadcast Announcement"];
    readonly published_audio_capabilities: readonly [6224, "Published Audio Capabilities"];
    readonly pulse_oximeter: readonly [6178, "Pulse Oximeter"];
    readonly reconnection_configuration: readonly [6185, "Reconnection Configuration"];
    readonly reference_time_update: readonly [6150, "Reference Time Update"];
    readonly running_speed_and_cadence: readonly [6164, "Running Speed and Cadence"];
    readonly scan_parameters: readonly [6163, "Scan Parameters"];
    readonly telephone_bearer: readonly [6219, "Telephone Bearer"];
    readonly telephony_and_media_audio: readonly [6229, "Telephony and Media Audio"];
    readonly transport_discovery: readonly [6180, "Transport Discovery"];
    readonly tx_power: readonly [6148, "Tx Power"];
    readonly user_data: readonly [6172, "User Data"];
    readonly volume_control: readonly [6212, "Volume Control"];
    readonly volume_offset: readonly [6213, "Volume Offset Control"];
    readonly weight_scale: readonly [6173, "Weight Scale"];
}>

Readme

Keywords

Package Sidebar

Install

npm i @rickosborne/bluetools

Weekly Downloads

17

Version

2025.3.12

License

CC-BY-NC-SA-4.0

Unpacked Size

2.5 MB

Total Files

1124

Last publish

Collaborators

  • rickosborne