Ess V1.0.0
Ess V1.0.0
Date 2014-Nov-18
Revision V1.0.0
Group Prepared By SF WG
Abstract:
This service exposes measurement data from an environmental sensor intended for sports and fitness
applications. A wide range of environmental parameters is supported.
Revision History
Contributors
Name Company
Robert D. Hughes Intel Corporation
Tatsuo Arai Casio
Laurence Richardson Cambridge Silicon Radio
V1.0.0
Document Terminology
The Bluetooth SIG has adopted Section 13.1 of the IEEE Standards Style Manual, which dictates use of
the words “shall”, “should”, “may”, and “can” in the development of documentation, as follows:
The word shall is used to indicate mandatory requirements strictly to be followed in order to conform to
the standard and from which no deviation is permitted (shall equals is required to).
The use of the word must is deprecated and shall not be used when stating mandatory requirements;
must is used only to describe unavoidable situations.
The use of the word will is deprecated and shall not be used when stating mandatory requirements; will is
only used in statements of fact.
The word should is used to indicate that among several possibilities one is recommended as particularly
suitable, without mentioning or excluding others; or that a certain course of action is preferred but not
necessarily required; or that (in the negative form) a certain course of action is deprecated but not
prohibited (should equals is recommended that).
The word may is used to indicate a course of action permissible within the limits of the standard (may
equals is permitted).
The word can is used for statements of possibility and capability, whether material, physical, or causal
(can equals is able to).
V1.0.0
The term Reserved for Future Use (RFU) is used to indicate Bluetooth SIG assigned values that are
reserved by the Bluetooth SIG and are not otherwise available for use by implementations.
Contents
1 Introduction .......................................................................................................................................... 6
1.1 Conformance .................................................................................................................................. 6
1.2 Service Dependencies .................................................................................................................... 6
1.3 Bluetooth Core Specification Release Compatibility ...................................................................... 6
1.4 GATT Sub-Procedure Requirements ............................................................................................. 7
1.5 Transport Dependencies ................................................................................................................ 7
1.6 Application Error Codes .................................................................................................................. 7
1.7 Byte Transmission Order ................................................................................................................ 8
2 Service Declaration.............................................................................................................................. 9
3 Service Characteristics ..................................................................................................................... 10
3.1 ESS Characteristics ...................................................................................................................... 10
3.1.1 ESS Characteristic Behavior ................................................................................................... 11
3.1.2 Characteristic Descriptors ....................................................................................................... 11
3.1.2.1 ES Measurement Descriptor .......................................................................................... 12
3.1.2.2 ES Trigger Setting Descriptor ........................................................................................ 17
3.1.2.3 ES Configuration Descriptor........................................................................................... 18
3.1.2.4 Characteristic User Description...................................................................................... 20
V1.0.0
1 Introduction
The Environmental Sensing Service (ESS) exposes measurement data from an environmental sensor
intended for sports and fitness applications. A wide range of environmental parameters is supported.
The ESS uses a family of characteristics, one characteristic for each type of environmental measurement.
The UUID of the characteristic identifies the environmental parameter that is being measured, as
described in Section 3.1. The service may expose one or more such Environmental Sensing Service
characteristics, referred to generically from now on as “ESS Characteristics”.
Optionally, additional information describing the measurement contained in each ESS Characteristic is
made available to the Client through one or more additional characteristic descriptors:
The full set of ESS Characteristics that may be discovered is listed online in the Environmental Sensing
V1.0.0
Service Characteristics table for this specification [2]. The list may be updated whenever support for
additional environmental parameters is required by adding further ESS Characteristics to those defined
there. To request ESS Characteristics to be added to this table to support new or future ESS applications,
please contact the Sports and Fitness WG ([email protected]). Since all ESS Characteristics are
required to have identical behavioral options, extending the types of environmental parameters in this way
does not require any change to be made to this service specification.
1.1 Conformance
If a device claims conformance to this service, all capabilities indicated as mandatory for this service shall
be supported in the specified manner (process-mandatory). This also applies for all optional and
conditional capabilities for which support is indicated. All mandatory capabilities, and optional and
conditional capabilities for which support is indicated, are subject to verification as part of the Bluetooth
qualification program.
• Bluetooth Core Specification 4.0 with CSA2, CSA3 and CSA4 [1].
Table 1.1 summarizes additional GATT sub-procedure requirements beyond those required by all GATT
Servers.
C.1: Mandatory if the Server supports the ES Trigger Setting descriptor; excluded otherwise.
C.2: Mandatory if the Descriptor Value Changed characteristic is supported; optional otherwise.
C.3: Mandatory if the Server supports reading a Characteristic User Description descriptor string length that exceeds
the capacity of the default ATT_MTU; optional otherwise.
V1.0.0
C.4: Mandatory if the Server supports the Descriptor Value Changed characteristic or notification of the ESS
Characteristic or writing to the Characteristic User Description descriptor, ES Trigger Setting descriptor or ES
Configuration descriptor; optional otherwise.
C.5: Mandatory if the Server supports writing a Characteristic User Description descriptor string length that exceeds
the capacity of the default ATT_MTU; optional otherwise.
The term BR/EDR used throughout this document also includes the optional use of AMP.
2 Service Declaration
The Environmental Sensing Service is recommended to be instantiated as a «Primary Service».
3 Service Characteristics
The characteristics that may be exposed in the Environmental Sensing Service comprise a family of
characteristics all having the same general structure, each of which shall meet the description of “ESS
Characteristic” given in Table 3.1.
The generic term “ESS Characteristic” means any of the characteristics that are listed in the
Environmental Sensing Service Characteristics table published in [2].
Each type of environmental measurement supported has a characteristic assigned to it. The service may
expose more than one instance of the same ESS Characteristic subject to compliance with the conditions
specified in Section 3.1.
Where a characteristic can be notified, a Client Characteristic Configuration descriptor shall be included in
that characteristic as required by the Bluetooth Core Specification [1].
Changed
Table 3.1: Requirements for each ESS Characteristic
Each ESS Characteristic is defined in the Environmental Sensing Service Characteristics table in [2].
The Server may expose multiple instances of the same ESS Characteristic (i.e., characteristics with the
same UUID) provided that each instance has an ES Measurement descriptor (see Section 3.1.2.1) and
each ES Measurement descriptor has a unique value to allow the instances to be differentiated by the
Client. This allows a sensor to report its readings in more than one way. For example, a temperature
sensor may provide both instantaneous and daily average readings. In this example, the instantaneous
and average measurements are identified by the ES Measurement descriptor associated with each
instance of the ESS Characteristic so the Client can discriminate between the characteristic for average
temperature and instantaneous temperature.
If notification is supported and the ESS Characteristic is configured for notification via the Client
Characteristic Configuration descriptor and a measurement is available, the characteristic may be notified
while in a connection.
However, if the Server supports notifications and they have been enabled, notifications shall be sent only
in accordance with the trigger conditions specified by the value of the ES Trigger Setting descriptor(s) for
the associated ESS Characteristic as described in Section 3.1.2.2.
The ESS Characteristic contains time-sensitive data, thus the requirements for time-sensitive data and
data storage defined in Section 3.3 apply. The Server may attempt to notify a triggered ESS
Characteristic multiple times and at a period that it defines, as long as the requirements in Section 3.3 are
met.
All descriptor values shall be persistent for bonded Clients, however, if an ESS-related descriptor value
(i.e., a descriptor other than the Client Characteristic Configuration descriptor) is changed by a device
other than the Client itself, the Descriptor Value Changed characteristic shall be used to alert all affected
Client(s). See Section 3.2 for requirements related to this characteristic.
The service has the characteristic descriptor requirements defined in the following table.
C.1: Mandatory if multiple instances of an ESS Characteristic with same UUID are supported; optional otherwise.
C.2: Mandatory if notifications are supported; excluded otherwise.
C.3: Mandatory if multiple ES Trigger Setting descriptors are supported; excluded otherwise.
C.4: If the Write permission is supported, it shall be supported for all ES Trigger Setting descriptors and the ES
V1.0.0
Exponent Field
Field Name Format Octets Exponent Unit Resolution
Base Requirement
Flags 16bit 2 N/A N/A unitless Bitfield M
Enumeration
Sampling
UINT8 1 N/A N/A unitless (refer to listing M
Function
below)
Measurement UINT2
3 10 0 second 1 second M
Period 4
Update UINT2
3 10 0 second 1 second M
Interval 4
Enumeration
Application UINT8 1 N/A N/A unitless (refer to listing M
below)
Measurement
UINT8 1 2 -1 percentage 0.5 percent M
Uncertainty
Table 3.3: ES Measurement Descriptor - Structure
The fields in Table 3.3, reading from top to bottom, are shown in the order of LSO to MSO, where LSO =
Least Significant Octet and MSO = Most Significant Octet. For the case of the 16bit bit field, the Least
Significant Octet represents the eight bits numbered 0 to 7.
V1.0.0
3.1.2.1.1 Fields
The ES Measurement descriptor contains the following fields.
3.1.2.1.1.1 Flags
This is a bit field. The flags have been included to support future extensions. In the current version of this
specification, all of the bits are reserved for future use.
Reserved for Future Use (RFU) bits in the Flags fields shall be set to 0.
Bit Definition
0-15 Reserved for Future Use
Table 3.4: ES Measurement Descriptor - Flags
This field specifies the averaging operation or type of sampling function applying to the value of the ESS
characteristic. For example, this field of the descriptor can identify whether the measurement provided by
the Server is an arithmetic mean value or an instantaneous value. The assigned numbers for this field are
enumerated in Table 3.5.
For cases in which the sampling function is not made available, a special number has been assigned
indicating ‘Unspecified’.
This field specifies the averaging time span, accumulation time, or measurement period in seconds over
which the measurement is taken. For example, it can specify the length of the period used to obtain an
average reading.
For those cases where a value for the measurement period is not available or not applicable, a special
number has been assigned indicating ‘Not in use’.
The value of the ESS characteristic shall be internally refreshed by the Server at the frequency indicated
in the Internal Update Interval field; for example, a temperature value that is internally updated every 15
minutes. This field allows the Client to determine the interval (in seconds) between updates.
For those cases where a value for the Internal Update Interval is not available or not applicable, a special
number has been assigned indicating ‘Not in use’.
Note that this interval may be shorter than the Measurement Period if, for example, multiple averaging
periods are overlapped providing a rolling average. This is illustrated in Figure 3.1. A practical example is
described below:
A true wind speed sensor constantly tracks the average wind speed. The sensor makes a new average
available to the client every 15 minutes (i.e., the Internal Update Interval is 900 seconds). However, the
sensor uses an entire hour’s worth of wind speed measurement data to calculate the average value so
the Measurement Period is 3600 seconds. This is a rolling average with the averaging window moving
forward by 900 seconds at each update.
Period 3
Data being collected
Measurement Period
etc.
Period 2
Data being collected
Measurement Period
Period 1
Data being collected
TIME
Figure 3.1: Example showing the relationship between Internal Update Interval and Measurement Period
3.1.2.1.1.5 Application
This field specifies the intended application for which the ESS Characteristic is designed to be used (e.g.,
to differentiate between air pressure versus water pressure or soil temperature versus air temperature).
The assigned numbers for this field are enumerated in Table 3.8.
For those cases where the application is not defined, a special number has been assigned indicating
‘Unspecified’.
0x15: Top
0x16: Bottom
0x17: Main
0x18: Backup
0x19: Auxiliary
0x1A: Supplementary
0x1B: Inside
0x1C: Outside
0x1D: Left
0x1E: Right
0x1F: Internal
0x20: External
0x21: Solar
0x22-0xFF: Reserved for future use
Table 3.8: ES Measurement Descriptor - Applications
This field shows the measurement uncertainty of the data provided over the supported range in the value
of the ESS characteristic, expressed as a percentage as defined in Table 3.9.
Where this value includes random contributions to the measurement uncertainty, this assumes a level of
confidence of 95 percent, using a coverage factor as described in National Institute of Standards and
Technology (NIST) Technical Note 1297 [4].
For those cases where no measurement uncertainty information is available, a special number has been
assigned indicating ‘Information not available’.
In addition, the Valid Range descriptor (see Section 3.1.2.5) may be used to specify upper and lower
bounds (inclusive) for the range to which the declared measurement uncertainty applies.
If the Server supports notifications of an ESS Characteristic, it shall expose one or more ES Trigger
V1.0.0
Setting descriptors relating to that ESS Characteristic with no more than three instances of ES Trigger
Setting descriptors permitted per instance of an ESS Characteristic. Otherwise, ES Trigger Setting
descriptors shall not be present for that characteristic.
Requirements associated with multiple instances of the ES Trigger Setting descriptor when associated
with an instance of an ESS Characteristic are described in Section 3.1.2.3.1.
The descriptor UUID shall be set to «ES Trigger Setting» as defined in [2].
LSO MSO
Condition Operand
Octet Order N/A LSO … MSO
Format type UINT8 (Variable - defined per condition)
0 to n octets
Size 1 octet
(defined per condition)
Table 3.10: ES Trigger Setting Descriptor - Structure
Note 1: The conditions listed in this column refer to the value of the relevant characteristic with which the descriptor is
associated. Note that some conditions are not valid with some ESS Characteristics (e.g. conditions 0x04 – 0x07 are
not valid for enumerations such as Barometric Pressure Trend or ESS Characteristics that hold multiple values such
as Magnetic Flux Density - 2D or Magnetic Flux Density - 3D).
Note 2: When the Condition is not a time-based condition, the format of any Operand depends on the format of the
characteristic to which it applies; the Operand will have the same format, exponent, resolution, and units as the
referenced characteristic value.
The ES Configuration descriptor exposes information about the configuration of the Server. The value of
the Trigger Logic field indicates whether a logical AND or logical OR Boolean operator shall be used to
combine the conditions of multiple ES Trigger Setting descriptors, as described in Section 3.1.2.3.1.
The Trigger Logic field is an enumeration. The meaning of each value is as follows:
If more than one ES Trigger Setting descriptor is associated with an instance of the ESS Characteristic,
the relevant Boolean operation (i.e., either a logical AND or a logical OR operation) shall be configured by
using the Trigger Logic field of the ES Configuration descriptor described in Section 3.1.2.3.
The ES Trigger Setting descriptors of each ESS Characteristic share one common Boolean operator
relating to that characteristic; therefore, it is not possible for the Boolean operators to be mixed within the
trigger conditions for an ESS Characteristic.
If the ES Trigger Setting descriptor is writable, an ES Configuration descriptor, if present, shall also be
writable. Conversely, when the ES Trigger Setting descriptor is read-only, an ES Configuration descriptor,
if present, shall also be read-only.
Bonding is mandatory if the ES Trigger Setting descriptor and ES Configuration descriptors are writable
by the Client. Therefore, writing to the ES Trigger Setting and ES Configuration descriptors shall be
subject to authorization as follows: If the Client is a bonded Client and these descriptors are writable, the
Client shall be granted authorization to write to these descriptors. A Server shall not grant authorization to
unbonded Clients. If the descriptors are writable and an unbonded (i.e., unauthorized) Client attempts to
write to any of these descriptors, the Server shall respond with the ATT Error Response “Insufficient
Authorization”.
If the Server allows the Client to control the conditions under which data is notified (i.e., the ES Trigger
Setting descriptor and ES Configuration descriptor, if present, are writable by the Client), it shall allow
separate control for each bonded Client and therefore shall retain a separate value of these descriptors
per bond.
Either the ES Configuration descriptor and all of the ES Trigger Setting descriptors associated with an
ESS Characteristic shall be writable or all shall be read-only.
In the case where the Server controls the conditions under which data is notified (i.e., the ES Trigger
Setting descriptor is either not writable or not yet initialized by the Client), the Server shall set values in
any ES Trigger Setting descriptors and the ES Configuration descriptor (if present) to enable a Client to
read the notification conditions. If the value of the ES Trigger Setting or ES Configuration descriptors
change at the Server, the Descriptor Value Changed characteristic shall be indicated as described in
Section 3.2.
Note that when a Server is configured to notify data at time intervals (either by itself or by a Client), it
does so on a ‘best effort’ basis and there are no guarantees on the accuracy of time by the Server.
If the value of an ES Trigger Setting descriptor is set to “Trigger inactive”, this effectively disables that
specific ES Trigger Setting descriptor. If there are multiple ES Trigger Setting descriptors and each is set
to “Trigger inactive”, no notifications are possible and the value of the ESS Characteristic can only be
read by the Client. In the case that multiple instances of the ES Trigger Setting descriptor are associated
with an ESS Characteristic and the value of any of those ES Trigger Setting descriptor(s) is “Trigger
inactive”, the trigger conditions shall be determined as if that particular ES Trigger Setting descriptor did
not exist.
If the ES Trigger Setting descriptor and ES configuration descriptor are writable, the Server shall support
all defined trigger conditions and shall support both AND and OR operations respectively. This is to avoid
interoperability issues with Clients requiring specific functionality.
V1.0.0
If the ES Trigger Setting descriptor is writable and a Client attempts to write a Condition Value that is
RFU, the Server shall respond with the Condition not supported Error Code defined in Section 1.6 and
the value of the descriptor shall not be changed.
If the ES Configuration descriptor is writable and a Client attempts to write a value that is RFU, the Server
shall respond with the Write Request Rejected Error Code defined in Section 1.6 and the value of the
descriptor shall not be changed.
If the Client attempts to write an Operand to the ES Trigger Setting descriptor that is outside of the
operating range of the Server (refer to Section 3.1.2.5) or otherwise improperly formatted, the Server shall
respond with the Out of Range Error Code defined in [3] and the value of the descriptor shall not be
changed.
If the Client attempts to write a Fixed Time Interval that is lower than the supported Update Interval of the
Server, the Server may either attempt to send updates on a best effort basis or respond with the Write
Request Rejected Error Code.
If this descriptor is supported, the user description of the ESS characteristic is global and the Server must
make the same value available to all Clients.
If this descriptor is supported, the Server should support string lengths greater than 20 octets.
If the Characteristic User Description descriptor changes, the Descriptor Value Changed characteristic
shall be indicated as described in Section 3.2.
The rest of this sub-section applies only when the Characteristic User Description descriptor is writable.
The Server shall permit only an authenticated Client to write a new value to the Characteristic User
Description. If pairing has not occurred or only an unauthenticated pairing has occurred, the service
request must be rejected with the ATT error code Insufficient Authentication specified in the Bluetooth
Core Specification [1].
The Server may also choose to reject a write request to the Characteristic User Description if it
determines that the contents of the new value are unsuitable, such as a string containing characters in a
language that the implementation does not support. The criteria by which a requested value may be
V1.0.0
determined to be unsuitable are left to the implementation. The Server may reject such a write request by
responding with the Write Request Rejected Error Code defined in Section 1.6 and the value of the
descriptor shall not be changed.
This enables a Server to alert bonded Clients that the value of one or more ESS-related descriptors for a
given ESS Characteristic have changed and need to be re-read. Included in the characteristic value are a
Flags field (for showing the source of the change and the affected descriptors) and a Characteristic UUID
field to show which ESS characteristic is affected.
The characteristic UUID shall be set to «Descriptor Value Changed» as defined in [2].
The structure of the Descriptor Value Changed characteristic is defined in Table 3.14:
LSO MSO
Flags Characteristic UUID
Octet Order N/A LSO...MSO
Format type 16bit gatt_uuid
Size 2 octets 2 or 16 octets
Units Unitless Unitless
Table 3.14: Descriptor Value Changed Characteristic - Structure
For Clients that have a trusted relationship (i.e., bond) with the Server, the attribute cache is valid across
connections. For Clients with a trusted relationship and not in a connection when a value change to a
V1.0.0
relevant descriptor occurs, the Server shall send an indication of the Descriptor Value Changed
characteristic to the Client when it next reconnects to the Server. For Clients with a trusted relationship
that are connected when a value change to a relevant descriptor occurs, the Server shall send an
indication of the Descriptor Value Changed characteristic to the Client. For Clients that do not have a
trusted relationship with the Server, the attribute cache is valid only during the connection. Clients without
a trusted relationship shall receive an indication when the relevant descriptor change occurs only during
the current connection.
A new value becomes available when a descriptor value is changed by either a Client or at the Server
itself (e.g., via the Server UI). Table 3.15 summarizes the required behavior depending on which
descriptor changed and by which device:
Descriptor Value That Was Change Occurred at Server Change Occurred at Other
Changed (Bit 0 of Flags = 0) Client
(Bit 0 of Flags = 1)
ES Trigger Setting and/or Indicate DVC to affected Client N/A
ES Configuration
ES Measurement Indicate DVC to all Clients N/A
Characteristic User Description Indicate DVC to all Clients Indicate DVC to Clients other
than the Client which made the
change.
Table 3.15: Descriptor Value Changed Characteristic - Behavior
Note that if a value change to a descriptor was made by a Client, the Server shall not send the DVC
indication to the Client that made the change.
When multiple changes are made to descriptors of a single ESS Characteristic, it is recommended to
combine these changes, where possible, by setting multiple bits in a single indication of the Descriptor
Value Changed characteristic. However, if some changes require a different Source of Change value,
these will need to be sent in separate indications.
In some cases, such as when changes are made to descriptors of multiple ESS Characteristics, multiple
indications will also be required.
Reserved for Future Use (RFU) bits in the Flags fields shall be set to 0.
The bits of the Flags field and their function are shown in Table 3.16.
Bit Definition
0 Source of Change
0: Server
1: Client
1 Change to one or more ES Trigger Setting Descriptors
V1.0.0
0: False
1: True
2 Change to ES Configuration Descriptor
0: False
1: True
3 Change to ES Measurement Descriptor
0: False
1: True
4 Change to Characteristic User Description Descriptor
0: False
1: True
5-15 Reserved for Future Use
Table 3.16: Descriptor Value Changed Characteristic - Flags
Bit 0 (Source of Change) shall be set according to which device made the change. This allows the Client
to inform the user about the source of change.
Bits 1 to 5 shall be set according to which descriptor(s) were changed. In cases were multiple descriptors
have changed, multiple bits may be set.
The Characteristic UUID field shall be set to the value of the UUID for the affected ESS Characteristic.
The Server shall only make the most recent ESS Characteristic value available (i.e., via read or
notifications) and shall not buffer and make older measurements available as this might adversely impact
the user experience.
If a notification attempt is in progress when a new measurement value becomes available that no longer
fulfills the trigger condition, the old value shall be discarded and the Server shall no longer attempt to
notify the characteristic.
Implementations should take into account that, since it is mandatory for all ESS Characteristics to
possess the Read property, an ESS Characteristic value may be read at an unknown time after the value
was last refreshed.
V1.0.0
4 SDP Interoperability
If this service is exposed over BR/EDR, then it shall have the following SDP record.
BrowseGroupList PublicBrowseRoot* M
* PublicBrowseRoot shall be present; however, other browse UUIDs may also be included in the list.
6 References
[1] Bluetooth Core Specification v4.0 with CSA4 or later version of the Core Specification.
[2] Characteristic and Descriptor descriptions are accessible via the Bluetooth SIG Assigned Numbers.
[3] Supplement to the Bluetooth Core Specification (CSS), Version 3 or later.
[4] National Institute of Standards and Technology Technical Note 1297
V1.0.0
The diagram in Figure A.1 shows an Environmental Sensing Server that is able to report the True Wind
Speed. This may be one of several environmental measurements supported by this Server.
The Server is also exposing an ES Measurement Descriptor associated with the True Wind Speed
Characteristic and this provides supplementary information: The true wind speed value being reported is
the Maximum wind speed that was sampled during a Measurement Period of 1800 seconds. The
Measurement Period is a rolling window and the value reported is refreshed periodically. The Internal
Update Interval of 600 seconds tells the Client that a new value is calculated and made available by the
Server every 10 minutes. The claimed Measurement Uncertainty for the measurement data is ±12.5%.
The Server is also exposing a Characteristic User Description associated with the same ESS
Characteristic. This shows that the measurement source has been named “Airfield Anemometer No.1”
which enables the user to recognize which sensor the data is coming from easily.
For her application, the user wanted to get notifications of the wind speed only if there was at least a
reasonable breeze blowing so she configured an ES Trigger Setting descriptor to set a trigger when the
V1.0.0
value exceeds 2 m/s. Even when this condition is met, the user has determined that she needs to receive
notifications no more frequently than once every ten minutes so she has configured a second ES Trigger
Setting descriptor to send notifications with an interval of greater than or equal to 600 seconds between
transmissions which will help to minimize power consumption and extend battery life.
Since the user required notifications to be sent only while both of these trigger conditions were satisfied,
she has configured the Trigger Logic value of the ES Configuration Descriptor to specify that the trigger
conditions shall be combined using a Boolean AND operation.
The dashed characteristic boxes in the diagram illustrate that one Server may expose many ESS
Characteristics and each may have its own a set of descriptors associated with it. The service is scalable
- the minimum implementation would expose only the ESS Characteristic(s) without any of the optional
descriptors.
14.25 m/s
ESS Characteristic
One of the family of ESS Characteristics
(e.g. <<True Wind Speed>>)
Descriptors
Legend
ES Trigger Setting Descriptor Notify while the value exceeds 2 m/s
Notes:
1. The Characteristic Extended Properties descriptor and the Client Characteristic Configuration descriptor are
covered by the GATT specification contained in [1] and have been omitted from the above diagram for clarity.
2. The optional Valid Range descriptor described in Section 3.1.2.5 has not been used in this example.