'Mesh Model Specification
'Mesh Model Specification
Bluetooth® Specification
▪ Revision: v1.0
Abstract:
This Bluetooth specification defines models (along with their required states and messages)
that are used to perform basic functionality on the nodes in a mesh network beyond the
foundation models defined in the Bluetooth Mesh Profile specification [2]. This specification
includes generic models defining functionality that is standard across device types, and
models, such as lighting control, sensors, and time and scenes, to support key mesh
scenarios.
Revision History
Contributors
Name Company
Qualcomm Technologies International Limited, formerly of
Robin Heydon
Cambridge Silicon Radio
Qualcomm Technologies International Limited, formerly of
Jonathan Tanner
Cambridge Silicon Radio
Victor Zhodzishsky Broadcom Corporation
Wei Shen Ericsson AB
NXP Semiconductors N.V., formerly of Freescale
Bogdan Alexandru
Semiconductor, Inc.
Martin Turon Google Inc.
Robert D. Hughes Intel Corporation
Marcel Holtmann Intel Corporation
Simon Slupik Silvair, Inc.
Piotr Winiarczyk Silvair, Inc.
Danilo Blasi STMicroelectronics
Yao Wang IVT Wireless Limited
Rustam Kovyazin Motorola Solutions
Elaine Mar California Eastern Laboratories
Gerard Harbers Xicato, Inc.
Clive Feather Samsung Electronics Co., Ltd.
Use of this specification is your acknowledgement that you agree to and will comply with the following notices and
disclaimers. You are advised to seek appropriate legal, engineering, and other professional advice regarding the use,
interpretation, and effect of this specification.
Use of Bluetooth specifications by members of Bluetooth SIG is governed by the membership and other related
agreements between Bluetooth SIG and its members, including those agreements posted on Bluetooth SIG’s website
located at www.bluetooth.com. Any use of this specification by a member that is not in compliance with the applicable
membership and other related agreements is prohibited and, among other things, may result in (i) termination of the
applicable agreements and (ii) liability for infringement of the intellectual property rights of Bluetooth SIG and its
members.
Use of this specification by anyone who is not a member of Bluetooth SIG is prohibited and is an infringement of the
intellectual property rights of Bluetooth SIG and its members. The furnishing of this specification does not grant any
license to any intellectual property of Bluetooth SIG or its members. THIS SPECIFICATION IS PROVIDED “AS IS” AND
BLUETOOTH SIG, ITS MEMBERS AND THEIR AFFILIATES MAKE NO REPRESENTATIONS OR WARRANTIES AND
DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING ANY WARRANTIES OF MERCHANTABILITY,
TITLE, NON-INFRINGEMENT, FITNESS FOR ANY PARTICULAR PURPOSE, OR THAT THE CONTENT OF THIS
SPECIFICATION IS FREE OF ERRORS. For the avoidance of doubt, Bluetooth SIG has not made any search or
investigation as to third parties that may claim rights in or to any specifications or any intellectual property that may
be required to implement any specifications and it disclaims any obligation or duty to do so.
TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, BLUETOOTH SIG, ITS MEMBERS AND THEIR
AFFILIATES DISCLAIM ALL LIABILITY ARISING OUT OF OR RELATING TO USE OF THIS SPECIFICATION AND ANY
INFORMATION CONTAINED IN THIS SPECIFICATION, INCLUDING LOST REVENUE, PROFITS, DATA OR PROGRAMS,
OR BUSINESS INTERRUPTION, OR FOR SPECIAL, INDIRECT, CONSEQUENTIAL, INCIDENTAL OR PUNITIVE
DAMAGES, HOWEVER CAUSED AND REGARDLESS OF THE THEORY OF LIABILITY, AND EVEN IF BLUETOOTH SIG,
ITS MEMBERS OR THEIR AFFILIATES HAVE BEEN ADVISED OF THE POSSIBILITY OF THE DAMAGES.
If this specification is a prototyping specification, it is solely for the purpose of developing and using prototypes to
verify the prototyping specifications at Bluetooth SIG sponsored IOP events. Prototyping Specifications cannot be
used to develop products for sale or distribution and prototypes cannot be qualified for distribution.
Products equipped with Bluetooth wireless technology ("Bluetooth Products") and their combination, operation, use,
implementation, and distribution may be subject to regulatory controls under the laws and regulations of numerous
countries that regulate products that use wireless non-licensed spectrum. Examples include airline regulations,
telecommunications regulations, technology transfer controls and health and safety regulations. You are solely
responsible for complying with all applicable laws and regulations and for obtaining any and all required
authorizations, permits, or licenses in connection with your use of this specification and development, manufacture,
and distribution of Bluetooth Products. Nothing in this specification provides any information or assistance in
connection with complying with applicable laws or regulations or obtaining required authorizations, permits, or
licenses.
Bluetooth SIG is not required to adopt any specification or portion thereof. If this specification is not the final version
adopted by Bluetooth SIG’s Board of Directors, it may not be adopted. Any specification adopted by Bluetooth SIG’s
Board of Directors may be withdrawn, replaced, or modified at any time. Bluetooth SIG reserves the right to change
or alter final specifications in accordance with its membership and operating agreements.
Copyright © 2015–2017. All copyrights in the Bluetooth Specifications themselves are owned by Apple Inc., Ericsson
AB, Intel Corporation, Lenovo (Singapore) Pte. Ltd., Microsoft Corporation, Nokia Corporation, and Toshiba
Corporation. The Bluetooth word mark and logos are owned by Bluetooth SIG, Inc. Other third-party brands and
names are the property of their respective owners.
Contents
1 Introduction ................................................................................................................................ 20
1.1 Conformance ........................................................................................................................ 20
1.2 Bluetooth specification release compatibility ........................................................................ 20
1.3 Language .............................................................................................................................. 20
1.3.1 Language conventions ................................................................................................... 20
1.3.2 Reserved for Future Use ................................................................................................ 20
1.3.3 Prohibited ....................................................................................................................... 21
1.4 Architectural concepts .......................................................................................................... 21
1.4.1 State transitions ............................................................................................................. 21
1.4.1.1 Bound states .......................................................................................................... 24
1.4.1.2 Composite states.................................................................................................... 24
1.4.2 Messages ....................................................................................................................... 24
1.4.2.1 Transactions ........................................................................................................... 24
1.5 Endianness and field ordering .............................................................................................. 24
2 Device properties ....................................................................................................................... 26
2.1 Property ID ........................................................................................................................... 26
2.2 Property Value ...................................................................................................................... 26
2.3 Interpretation of Device Property Values .............................................................................. 26
2.3.1 Device property scalar value .......................................................................................... 26
2.3.1.1 Example decimal exponent .................................................................................... 26
2.3.1.2 Example binary exponent ....................................................................................... 26
2.3.1.3 Example multiplier .................................................................................................. 27
2.3.2 Device property non-scalar value ................................................................................... 27
2.4 Required device properties summary ................................................................................... 27
3 Generics ..................................................................................................................................... 28
3.1 Generic states....................................................................................................................... 28
3.1.1 Generic OnOff ................................................................................................................ 28
3.1.1.1 Binary state transitions ........................................................................................... 28
3.1.2 Generic Level ................................................................................................................. 29
3.1.3 Generic Default Transition Time..................................................................................... 29
3.1.3.1 Default Transition Step Resolution ......................................................................... 30
3.1.3.2 Default Transition Number of Steps ....................................................................... 30
3.1.4 Generic OnPowerUp ...................................................................................................... 31
3.1.5 Generic Power Level ...................................................................................................... 31
3.1.5.1 Generic Power Actual ............................................................................................. 31
3.1.5.2 Generic Power Last ................................................................................................ 33
3.1.5.3 Generic Power Default ........................................................................................... 33
3.1.5.4 Generic Power Range ............................................................................................ 33
3.1.6 Generic Battery .............................................................................................................. 34
3.1.6.1 Generic Battery Level ............................................................................................. 34
3.1.6.2 Generic Battery Time to Discharge ........................................................................ 34
1 Introduction
This Bluetooth Mesh Model specification defines models (along with their required states and
messages) that are used to define basic functionality of nodes on a mesh network.
1.1 Conformance
If conformance to this specification is claimed, all capabilities indicated as mandatory for this
specification shall be supported in the specified manner (process-mandatory).
1.3 Language
1.3.1 Language conventions
The Bluetooth SIG has established the following conventions for use of the words shall, must, will,
should, may, can, is, and note in the development of specifications:
For clarity of the definition of those terms, see Core Specification Volume 1, Part E, Section 1.
Where a field, parameter, or other variable object can take a range of values, and some values are
described as "Reserved for Future Use," a device sending the object shall not set the object to those
values. A device receiving an object with such a value should reject it, and any data structure
containing it, as being erroneous; however, this does not apply in a context where the object is
described as being ignored or it is specified to ignore unrecognized values.
When a field value is a bit field, unassigned bits can be marked as Reserved for Future Use and shall
be set to 0. Implementations that receive a message that contains a Reserved for Future Use bit that
is set to 1 shall process the message as if that bit was set to 0, except where specified otherwise.
1.3.3 Prohibited
When a field value is an enumeration, unassigned values can be marked as “Prohibited.” These
values shall never be used by an implementation, and any message received that includes a
Prohibited value shall be ignored and shall not be processed and shall not be responded to.
Where a field, parameter, or other variable object can take a range of values, and some values are
described as “Prohibited,” devices shall not set the object to any of those Prohibited values. A device
receiving an object with such a value should reject it, and any data structure containing it, as being
erroneous.
This specification in addition provides a detailed discussion of state transitions (see Section 1.4.1)
and introduces the concept of a device property as it relates to mesh models (see Section 2).
• An asynchronous event, such as a scheduler action being executed (see Section 5.1.4)
A change of state may be instantaneous (e.g., a state reported by a sensor) or may take some time
(e.g., a lamp that dims gradually or a motor that moves a physical object). The time that it takes for a
state to change from a present state to the target state (the state that the state server is changing to)
is called the transition time.
States may support non-instantaneous change using either the Generic Default Transition Time (see
Section 3.1.3) or the transition time specified as a field in the state-changing message.
Messages may support a delay parameter that indicates a delay between receiving a message and
starting the state transition. This helps when synchronizing actions of multiple receivers (such as
lights) when senders retransmit messages multiple times. Each retransmitted message may indicate a
different delay, compensating for the time elapsed since transmitting the first message.
Some states have associated messages that are able to report the state in transition. Whenever a
changing state is reported, the message is sent to the state that is present at the moment. There are
also messages reporting both the present state and the target state, along with the remaining time,
which is the time it will take from the moment the message is sent to the end of transition to the target
state. This is illustrated in Figure 1.1.
During the transition time, when a new message that results in a new transition involving that state is
received and processed, the new target state and the new transition time overwrite the existing target
state and transition time for this state.
Note: It is recommended that the state is changed linearly during the transition, when the
transition is a result of processing a message directly changing that state. The bound
states are changed according to the binding formulas.
States can have multiple dimensions. For example, the Light HSL state (see Section 6.1.4) is a 3-
dimensional state that combines the Light HSL Lightness (see Section 6.1.4.5), Light HSL Hue (see
Section 6.1.4.1), and Light HSL Saturation (see Section 6.1.4.2) states.
State transitions in each dimension are independent. For a combined multidimensional state
transition, the transition time and the remaining time represent the combined transition and remaining
times of individual dimensions. This is illustrated by Figure 1.2.
Target State 1
Present State 1
Initial State 1
Remaining Time 1
Transition Time 1
Set (new state 1) Status (present state 1, target state 1, remaining time 1)
message received message sent
Target State 2
Present State 2
Initial State 2
Remaining Time 2
Transition Time 2
Set (new state 2) Status (present state 2, target state 2, remaining time2)
message received message sent
Status (combined present state, combined target state, combined remaining time)
message sent
For example, a common type of binding is between a ‘Level’ state and an ‘OnOff’ state, such as the
Generic Power Level state (see Section 3.1.5) and the Generic OnOff state (see Section 3.1.1):
changing the Level to zero changes the bound OnOff state to Off, and changing the Level to a non-
zero value changes the bound OnOff state to On. Such binding is a unidirectional binding. Bindings
also may be bi-directional such as changing the OnOff state to Off changes the bound Level state to
zero, and changing the OnOff state to On changes the bound Level state to its last known non-zero
value. The binding rules are defined explicitly in state definitions.
For example, a Light HSL Server model (see Section 6.4.3.3.1), a Light Lightness Server model (see
Section 6.4.1), and a Generic Power OnOff Server model (see Section 3.3.3) on a Light HSL main
element share a single instance of a Subscription List. This means that subscribing one of the models
(e.g., Light Lightness Server) to a group results in the other models (the Generic Power OnOff Server
and the Light HSL Server) also subscribing to the same group.
1.4.2 Messages
All communication within a mesh network is accomplished by sending messages. Messages operate
on states. For each state, there is a defined set of messages that a server supports and that a client
may use to request the value of a state or to change a state. A server may also transmit unsolicited
messages that carry information about states and/or changing states.
A message is defined as having an opcode and associated parameters. For a description of the
opcode and its parameters, see the Mesh Profile specification [2].
1.4.2.1 Transactions
Messages may support transactions. A client can send a series of state-changing messages such as
Set, Recall, or Clear within a single transaction. A transaction is considered unique in the context of a
Transaction Identifier (if present in a message), a Source Address, a Destination Address, and an
instance of a state. Specific behaviors for transactions are included in model behaviors.
Where data structures are made of multiple fields, the fields are listed in the tables from top to bottom,
and they appear in the corresponding figures from left to right (i.e., the top row of the table
corresponds to the left of the figure). Table 1.1 and Figure 1.3 show an example data structure made
up of multiple fields.
Size
Field (octets or Field Content Description
bits)
Field 0 1 or more Start of this field is in Octet 0 (left most octet in corresponding figure)
… …
Field n 1 or more End of this field is in Octet m
Table 1.1: Field ordering example
In order to convert the data structure defined in a table into a series of octets the following procedure
is used. The binary number with N unassigned bits is created. The number of bits N in the number is
equal to the sum of the number of bits of every field in the table. The least significant bits (LSbs) of
the number are set to the value of Field 0 (first row of the table), then the number’s unassigned LSbs
are set to the value of Field 1. This procedure is continued for consecutive fields of the table and ends
when the most significant bits (MSbs) of the number are set to the value of last field of the table. As a
final step the number is transmitted in little endian form (i.e., least significant octet first).
For example, the field 0 is 4 bits wide and has a value of 0x6, field 1 is 12 bits wide and has a value of
0x987, and field 2 is 16 bits wide and has a value of 0x1234. The value of the binary number is
0x12349876 and shall be transmitted as 0x76, 0x98, 0x34, 0x12.
2 Device properties
A device property is a collection of one or more format descriptors that interpret data contained by a
server state.
A device property is identified by a 16-bit assigned Property ID (see Section 2.1), which references
GATT characteristics, and has a state called the Property Value (see Section 2.2).
2.1 Property ID
The Property ID is an assigned 16-bit number that identifies a device property that is associated with
a defined characteristic [10].
R = C * M * 10d * 2b
Where:
R = represented value
C = raw value
M = multiplier
d = decimal exponent
b = binary exponent
M = 1, d = -1, b = 0
M = 1, d = 0, b = -8
M = 2, d = -1, b = 0
3 Generics
This section of the specification defines a number of generic states, messages and models that are
explicitly defined to be non-specific in their functionality. For example, many devices can be turned on
and off regardless of whether they are a fan, an air conditioning unit, a light, or a power socket. All of
those devices would support the Generic OnOff states, messages, and models instead of having
separate OnOff states, messages, and models for each type of device.
Value Description
0x00 Off
0x01 On
0x02–0xFF Prohibited
Table 3.1: Generic OnOff states
Figure 3.1 illustrates the behavior for a Generic OnOff state bound to a Generic Power Actual state
(see Section 3.1.5.1.2) when changing to 0x01 (On). Figure 3.2 illustrates the behavior for a Generic
OnOff state bound to a Generic Power Actual state when changing to 0x00 (Off).
Present State
Initial State
Remaining Time
Set (new state value) Transition to the Status (present state value, target state value, remaining time)
message received new state begins message sent
Remaining Time
Set (new state value) Transition to the Status (present state value, target state value, remaining time)
message received new state begins message sent
Value Description
The Generic Level state of an element, represented as a 16-bit signed integer
0x0000–0xFFFF
(the complement of 2)
Table 3.2: Generic Level states
Size
Field Definition
(bits)
Default Transition Number of Steps 6 The number of Steps
The resolution of the Default Transition Number of
Default Transition Step Resolution 2
Steps field
Table 3.3: Generic Default Transition Time state format
Figure 3.3 illustrates the format of the Generic Default Transition Time state.
This mechanism covers a wide range of times that may be required by different applications:
• For 100 millisecond step resolution, the range is 0 through 6.2 seconds.
• For 10 seconds step resolution, the range is 0 through 620 seconds (10.5 minutes).
• For 10 minutes step resolution, the range is 0 through 620 minutes (10.5 hours).
The Generic Default Transition Time is calculated using the following formula:
Generic Default Transition Time = Default Transition Step Resolution * Default Transition Number
of Steps
Default values for the Generic Default Transition Step Resolution and the Default Transition Number
of Steps are implementation-specific and are defined by a device manufacturer.
Value Description
0b00 The Default Transition Step Resolution is 100 milliseconds
0b01 The Default Transition Step Resolution is 1 second
0b10 The Default Transition Step Resolution is 10 seconds
0b11 The Default Transition Step Resolution is 10 minutes
Table 3.4: Default Transition Step Resolution values
Value Description
0x00 The Generic Default Transition Time is immediate.
0x01–0x3E The number of steps.
The value is unknown. The state cannot be set to this value, but an element
0x3F may report an unknown value if a transition is higher than 0x3E or not
determined.
Table 3.5: Default Transition Number of Steps values
Value Description
0x00 Off. After being powered up, the element is in an off state.
Default. After being powered up, the element is in an On state and uses default
0x01
state values.
Restore. If a transition was in progress when powered down, the element
0x02 restores the target state when powered up. Otherwise the element restores the
state it was in when powered down.
0x03–0xFF Prohibited
Table 3.6: Generic OnPowerUp states
Represented power level [%] = 100 [%] * Generic Power Actual / 65535
The state is bound to the Generic Level state (see Section 3.1.2) and the Generic OnOff state (see
Section 3.1.1). The values for the Generic Power Actual state are defined in the following table.
Value Description
0x0000–0xFFFF Represents the power level relative to the maximum power level
Table 3.7: Generic Power Actual states
An element that has the Generic Power Actual set to 0x0000 may continue to power the wireless
communications and the microcontroller necessary to change the Generic Power Actual state back to
a non-zero value.
Additional regulatory requirements may determine the maximum energy use when the element has
the Generic Power Actual state set to 0x0000.
A reverse binding is also defined, meaning that whenever the Generic Power Actual state of an
element changes, the following calculation shall be performed:
The Generic Power Actual state shall not wrap around (i.e., from 65535 to 0, or 0 to 65535) when it
reaches the maximum or minimum value.
when the value of the Generic OnOff state is equal to 0x01, when value of the Generic
Power Default state is equal to 0x0000, or
when the value of the Generic OnOff state is equal to 0x01 and the value of the Generic
Power Default state is not equal to 0x0000.
A reverse binding is also defined, meaning that whenever the Generic Power Actual state of an
element changes, the following calculations shall be performed:
when the value of the Generic Power Actual is greater than 0x0000.
when the value of the Generic OnPowerUp state is equal to 0x01 and Generic Power Default
is not equal to zero, or
when the value of the Generic OnPowerUp state is equal to 0x01 and Generic Power Default
equal to zero, or
Generic Power Actual = last known value of the Generic Power Actual state before the node is
powered down
when the non-zero values of the Generic Power Actual state are less than the value of the
Generic Power Range Min state
when the non-zero values of the Generic Power Actual state are greater than the value of the
Generic Power Range Max state
Represented power level [%] = 100 [%] * Generic Power Last / 65535
The purpose of the Generic Power Last state is to store the last known non-zero value of the Generic
Power Actual state, which is a result of a completed transactional change of the state. Depending on
the value of the Generic OnPowerUp state (see Section 3.1.4), It may also be used as a default value
when an element is powered up.
Whenever the Generic Power Actual state is changed to a non-zero value as a result of a non-
transactional message or a completed sequence of transactional messages, the value of the Generic
Power Last state shall be set to the value of the Generic Power Actual state.
The values for the Generic Power Last state are defined in the following table.
Value Description
0x0000 Prohibited
0x0001–0xFFFF Represents the power level relative to the maximum power level
Table 3.8: Generic Power Last states
Represented power level [%] = 100 [%] * Generic Power Default / 65535
Value 0x0000 has a special meaning defined: use the value of the Generic Power Last state as the
default value. The purpose of the Generic Power Default state is to determine the power level of an
element when the device is powered up and when the Generic OnPowerUp state (see Section 3.1.3)
bound to the Generic Power Level state is set to 0x01 (Default).
The values for the Generic Power Default state are defined in the following table.
Value Description
0x0000 Use the Power Last value (see Section 3.1.5.1.1).
0x0001–0xFFFF Represents the power level relative to the maximum power level.
Table 3.9: Generic Power Default states
The Generic Power Range Min state determines the minimum non-zero power level an element can
be configured to. The Generic Power Range Max state determines the maximum power level an
element can be configured to. The values for the states are defined in the following table.
Value Description
0x0000 Prohibited
0x0001–0xFFFF Represents the power level relative to the maximum power level.
Table 3.10: Generic Power Min and Generic Power Max states
Value Description
The percentage of the charge level. 100% represents fully charged. 0%
0x00–0x64
represents fully discharged.
0x65–0xFE Prohibited
0xFF The percentage of the charge level is unknown.
Table 3.11: Generic Battery Level states
Value Description
0x000000–0xFFFFFE The remaining time (in minutes) of the discharging process
0xFFFFFF The remaining time of the discharging process is not known.
Table 3.12: Generic Battery Time to Discharge states
Value Description
0x000000–0xFFFFFE The remaining time (in minutes) of the charging process
0xFFFFFF The remaining time of the charging process is not known.
Table 3.13: Generic Battery Time to Charge states
Bit Definition
0-1 Generic Battery Flags Presence
2-3 Generic Battery Flags Indicator
4-5 Generic Battery Flags Charging
Bit Definition
6–7 Generic Battery Flags Serviceability
Table 3.14: Generic Battery Flags states
Value Description
0b00 The battery is not present.
0b01 The battery is present and is removable.
0b10 The battery is present and is non-removable
0b11 The battery presence is unknown.
Table 3.15: Generic Battery Flags Presence states
Value Description
0b00 The battery charge is Critically Low Level.
0b01 The battery charge is Low Level.
0b10 The battery charge is Good Level.
0b11 The battery charge is unknown.
Table 3.16: Generic Battery Flags Indicator states
The implementation determines what represents a good, low, or critically low battery level.
Value Description
0b00 The battery is not chargeable.
0b01 The battery is chargeable and is not charging.
0b10 The battery is chargeable and is charging.
0b11 The battery charging state is unknown.
Table 3.17: Generic Battery Flags Charging states
Value Description
0b00 Reserved for Future Use
0b01 The battery does not require service.
Value Description
0b10 The battery requires service.
0b11 The battery serviceability is unknown.
Table 3.18: Generic Battery Flags Serviceability states
Size
Field Notes
(octets)
Global Latitude 4 Global Coordinates (Latitude)
Global Longitude 4 Global Coordinates (Longitude)
Global Altitude 2 Global Altitude
Local North 2 Local Coordinates (North)
Local East 2 Local Coordinates (East)
Local Altitude 2 Local Altitude
Floor Number 1 Floor Number
Uncertainty 2 Uncertainty
Table 3.19: Generic Location state
Latitude is based on WGS84 [8] datum. The relationship between Latitude X in the range [-90°, 90°]
and the encoded number N is derived using the following formula:
𝑋 31
𝑁 = 𝑓𝑙𝑜𝑜𝑟 ( (2 − 1))
90
where N is bounded to the range −231+1≤N≤231−1. If N exceeds the bounds, the closest value within
the bounds shall be used.
The value 0x80000000 in the Global Latitude field indicates the Global Latitude is not configured.
Longitude is based on WGS84 [8] datum. The relationship between Longitude X in the range [-180°,
180°] and the encoded number N is derived using the following formula:
𝑋
𝑁 = 𝑓𝑙𝑜𝑜𝑟 ( (231 − 1))
180
where N is bounded to the range −231+1≤N≤231−1. If N exceeds the bounds, the closest value within
the bounds shall be used.
The value 0x80000000 in the Global Latitude field indicates the Global Longitude is not configured.
The values for the state are defined in the following table.
Value Meaning
0x7FFF Global Altitude is not configured.
The Local North value is encoded in decimeters and has a range of -32767 decimeters through 32767
decimeters. The value 0x8000 means the Local North information is not configured.
The Local East value is encoded decimeters and it ranges from -32767 decimeters through 32767
decimeters. The value 0x8000 means the Local East information is not configured.
The values for the state are defined in the following table.
Value Meaning
0x7FFF Local Altitude is not configured.
The floor number, N, is encoded as X = N + 20, where X is the encoded floor number.
Floor number = -20 (X=0) has a special meaning, indicating the floor -20, and also any floor below
that.
Floor number = 232 (X=252) has a special meaning, indicating the floor 232, and also any floor above that.
The values for the state are defined in the following table.
Note: The reason for having two definitions of ground floor (0 or 1) is to allow for different
conventions applicable in different countries.
The format of the field is an unsigned integer of size 8 bits.
3.1.7.8 Uncertainty
The Uncertainty field is a 16-bit bit field that describes the uncertainty of the location information the
element exposes. The field consists of several values. The meaning of each bit is described in the
following table.
This value (x) is a 4-bit value ranging from 0 through 15. It represents
the time (t) elapsed since the last update of the device's position,
measured in seconds using the following formula:
Update Time 𝑡 = 2𝑥−3
8–11
The represented range is from 0.125 seconds through 4096 seconds.
This value (y) is a 4-bit value ranging from 0 through 15. It represents
a location precision with the formula:
12–15 Precision
𝑃𝑟𝑒𝑐𝑖𝑠𝑖𝑜𝑛 = 2𝑦−3
The represented range is from 0.125 meters through 4096 meters.
Table 3.23: Uncertainty bit field values
Generic Manufacturer Properties cannot be written, but a client that has access to the Generic
Manufacturer Property Server (see Section 3.3.13) may decide if the device properties are accessible
by clients via the Generic User Property Server (see Section 3.3.11).
Generic Admin Properties can be read or written, and a client that has access to the Generic Admin
Property Server (see Section 3.3.12) may decide whether these device properties are accessible by
clients via the Generic User Property Server (see Section 3.3.11) and whether this access is read-
only, write-only, or read-write.
Manufacturer User
Property ID Property Value
Properties Access
Admin User
Property ID Property Value
Properties Access
User
Properties
Size
Field Notes
(octets)
User Property ID 2 Defined in Section 3.1.8.1.1.
User Access 1 Defined in Section 3.1.8.1.2.
User Property Value variable Scalar or String value, defined in Section 3.1.8.1.3.
Table 3.24: Generic User Property states
The values for the field are defined in the following table.
Value Meaning
0x0000 Prohibited
Value Meaning
0x00 Prohibited
Size
Field Notes
(octets)
Admin Property ID 2 Defined in Section 3.1.8.2.1.
Admin User Access 1 Defined in Section 3.1.8.2.2.
Admin Property Value variable Scalar or String value, defined in Section 3.1.8.2.3.
Table 3.27: Generic Admin Property states
The values for the field are defined in the following table.
Value Meaning
0x0000 Prohibited
0x0001–0xFFFF Identifier of a device property (see Section 2.1)
Table 3.28: Admin Property ID field values
Value Meaning
0x00 The device property is not a Generic User Property.
0x01 The device property is a Generic User Property and can be read.
0x02 The device property is a Generic User Property and can be written.
The device property is a Generic User Property and can be read and
0x03
written.
0x04–0xFF Prohibited
Table 3.29: Admin User Access field values
Size
Field Notes
(octets)
Manufacturer Property ID 2 Defined in Section 3.1.8.3.1.
Manufacturer User Access 1 Defined in Section 3.1.8.3.2.
Manufacturer Property Value variable Scalar or String value, defined in Section 3.1.8.3.3.
Table 3.30: Generic Manufacturer Property states
The values for the field are defined in the following table.
Value Meaning
0x0000 Prohibited
Value Meaning
0x00 The device property is not a Generic User Property.
Size
Field Notes
(octets)
Client Property ID 2 Defined in Section 3.1.9.1.
Table 3.33: Generic Client Property state
The values for the field are defined in the following table.
Value Meaning
0x0000 Prohibited
0x0001–0xFFFF Identifier of a device property (see Section 2.1)
Table 3.34: Client Property ID field values
The response to the Generic OnOff Get message is a Generic OnOff Status message.
The response to the Generic OnOff Set message is a Generic OnOff Status message.
Size
Field Notes
(octets)
OnOff 1 The target value of the Generic OnOff state
TID 1 Transaction Identifier
Transition Time 1 Format as defined in Section 3.1.3. (Optional)
Delay 1 Message execution delay in 5 millisecond steps (C.1)
C.1: If the Transition Time field is present, the Delay field shall also be present; otherwise these fields
shall not be present.
Table 3.35: Generic OnOff Set message parameters
The OnOff field identifies the Generic OnOff state of the element (see Section 3.1.1).
The TID field is a transaction identifier indicating whether the message is a new message or a
retransmission of a previously sent message, as described in Section 3.4.1.2.2.
If present, the Transition Time field identifies the time that an element will take to transition to the
target state from the present state (see Section 1.4.1.1). The format of the Transition Time field
matches the format of the Generic Default Transition Time state as defined in Section 3.1.3. Only
values of 0x00 through 0x3E shall be used to specify the value of the Transition Number of Steps
field.
The Delay field shall be present when the Transition Time field is present. It identifies the message
execution delay, representing a time interval between receiving the message by a model and
executing the associated model behaviors.
Size
Field Notes
(octets)
OnOff 1 The target value of the Generic OnOff state
TID 1 Transaction Identifier
Transition Time 1 Format as defined in Section 3.1.3. (Optional)
Delay 1 Message execution delay in 5 milliseconds steps (so)
C.1: If the Transition Time field is present, the Delay field shall also be present; otherwise these fields
shall not be present.
Table 3.36: Generic OnOff Set Unacknowledged message parameters
The OnOff field identifies the Generic OnOff state of the element (see Section 3.1.1).
The TID field is a transaction identifier indicating whether the message is a new message or a
retransmission of a previously sent message, as described in Section 3.4.1.2.2.
If present, the Transition Time field identifies the time that an element will take to transition to the target
state from the present state (see Section 1.4.1.1). The format of the Transition Time field matches the
format of the Generic Default Transition Time state as defined in Section 3.1.3. Only values of 0x00
through 0x3E shall be used to specify the value of the Transition Number of Steps field.
The Delay field shall be present when the Transition Time field is present. It identifies the message
execution delay, representing a time interval between receiving the message by a model and
executing the associated model behaviors.
Size
Field Notes
(octets)
Present OnOff 1 The present value of the Generic OnOff state.
The target value of the Generic OnOff state
Target OnOff 1
(optional).
Remaining Time 1 Format as defined in Section 3.1.3. (C.1)
C.1: If the Target OnOff field is present, the Remaining Time field shall also be present; otherwise
these fields shall not be present.
Table 3.37: Generic OnOff Status message parameters
The Present OnOff field identifies the present Generic OnOff state of the element (see Section 3.1.1).
If present, the Target OnOff field identifies the target Generic OnOff state that the element is to reach
(see Section 3.1.1).
If present, the Remaining Time field identifies the time it will take the element to complete the
transition to the target Generic OnOff state of the node (see Section 1.4.1.1 and 3.1.1).
The response to the Generic Level Get message is a Generic Level Status message.
The response to the Generic Level Set message is a Generic Level Status message.
Size
Field Notes
(octets)
Level 2 The target value of the Generic Level state
TID 1 Transaction Identifier
Size
Field Notes
(octets)
Transition Time 1 Format as defined in Section 3.1.3. (Optional)
Message execution delay in 5 milliseconds steps
Delay 1
(C.1)
C.1: If the Transition Time field is present, the Delay field shall also be present; otherwise these fields
shall not be present.
Table 3.38: Generic Level Set message parameters
The Level field identifies the Generic Level state of the element (see Section 3.1.2).
The TID field is a transaction identifier indicating whether the message is a new message or a
retransmission of a previously sent message, as described in Section 3.4.2.2.2.
If present, the Transition Time field identifies the time that an element will take to transition to the
target state from the present state (see Section 1.4.1.1). The format of the Transition Time field
matches the format of the Generic Default Transition Time state as defined in Section 3.1.3. Only
values of 0x00 through 0x3E shall be used to specify the Transition Number of Steps.
The Delay field shall be present when the Transition Time field is present. It identifies the message
execution delay, representing a time interval between receiving the message by a model and
executing the associated model behaviors.
Size
Field Notes
(octets)
Level 2 The target value of the Generic Level state
TID 1 Transaction Identifier
Transition Time 1 Format as defined in Section 3.1.3. (Optional)
Delay 1 Message execution delay in 5 millisecond steps (C.1)
C.1: If the Transition Time field is present, the Delay field shall also be present; otherwise these fields
shall not be present.
Table 3.39: Generic Level Set Unacknowledged message parameters
The Level field identifies the Generic Level state of the element (see Section 3.1.2).
The TID field is a transaction identifier indicating whether the message is a new message or a
retransmission of a previously sent message, as described in Section 3.4.2.2.2.
If present, the Transition Time field identifies the time that an element will take to transition to the
target state from the present state (see Section 1.4.1.1). The format of the Transition Time field
matches the format of the Generic Default Transition Time state as defined in Section 3.1.3. Only
values of 0x00 through 0x3E shall be used to specify the Transition Number of Steps.
The Delay field shall be present when the Transition Time field is present. It identifies the message
execution delay, representing a time interval between receiving the message by a model and
executing the associated model behaviors.
The response to the Generic Delta Set message is a Generic Level Status message.
Size
Field Notes
(octets)
Delta Level 4 The Delta change of the Generic Level state
TID 1 Transaction Identifier
Transition Time 1 Format as defined in Section 3.1.3. (Optional)
Message execution delay in 5 milliseconds steps
Delay 1
(C.1)
C.1: If the Transition Time field is present, the Delay field shall also be present; otherwise these fields
shall not be present.
Table 3.40: Generic Delta Set message parameters
The Delta Level field identifies the increase (when positive) or decrease (if negative) of the Generic
Level state of the element (see Section 3.1.2).
The TID field is a transaction identifier and shall be used to logically group a series of Generic Delta
Set messages. When starting a new transaction, TID should be assigned a least recently used value,
as described in Section 3.4.2.2.3.
The Transition Time field identifies the time that an element will take to transition to the target state
from the present state. The format of the Transition Time field matches the format of the Generic
Default Transition Time state as defined in Section 3.1.3. Only values of 0x00 through 0x3E shall be
used to specify the Transition Number of Steps.
The Delay field shall be present when the Transition Time field is present. It identifies the message
execution delay, representing a time interval between receiving the message by a model and
executing the associated model behaviors.
Size
Field Notes
(octets)
Delta Level 4 The Delta change of the Generic Level state
TID 1 Transaction Identifier
Transition Time 1 Format as defined in Section 3.1.3. (Optional)
Message execution delay in 5 milliseconds steps
Delay 1
(C.1)
C.1: If the Transition Time field is present, the Delay field shall also be present; otherwise these fields
shall not be present.
Table 3.41: Generic Delta Set Unacknowledged message parameters
The Delta Level field identifies the increase (when positive) or decrease (if negative) of the Generic
Level state of the element (see Section 3.1.2).
The TID field is a transaction identifier and shall be used to logically group a series of Generic Delta
Set Unacknowledged messages. When starting a new transaction, the TID should be assigned a least
recently used value.
If present, the Transition Time field identifies the time an element will take to transition to the target
state from the present state. The format of the Transition Time field matches the format of the Generic
Default Transition Time state as defined in Section 3.1.3. Only values of 0x00 through 0x3E shall be
used to specify the Transition Number of Steps.
The Delay field shall be present when the Transition Time field is present. It identifies the message
execution delay, representing a time interval between receiving the message by a model and
executing the associated model behaviors.
The response to the Generic Move Set message is a Generic Level Status message.
Size
Field Notes
(octets)
The Delta Level step to calculate Move speed for the Generic Level
Delta Level 2
state.
TID 1 Transaction Identifier
Transition Time 1 Format as defined in Section 3.1.3 (optional).
Delay 1 Message execution delay in 5 milliseconds steps (C.1).
C.1: If the Transition Time field is present, the Delay field shall also be present; otherwise these fields
shall not be present.
Table 3.42: Generic Move Set message parameters
The Delta Level field shall be used to calculate the speed of the transition of the Generic Level state.
The TID field is a transaction identifier indicating whether the message is a new message or a
retransmission of a previously sent message, as described in Section 3.4.2.2.4.
If present, the Transition Time field shall be used to calculate the speed of the transition of the
Generic Level state. The format of the Transition Time field matches the format of the Generic Default
Transition Time state as defined in Section 3.1.3. Only values of 0x00 through 0x3E shall be used to
specify the Transition Number of Steps. If the resulting Transition Time is equal to 0 or is undefined,
the Generic Move Set command will not initiate any Generic Level state change.
The Delay field shall be present when the Transition Time field is present. It identifies the message
execution delay, representing a time interval between receiving the message by a model and
executing the associated model behaviors.
Size
Field Notes
(octets)
The Delta Level step to calculate Move speed for the Generic Level
Delta Level 2
state
TID 1 Transaction Identifier
Transition Time 1 Format as defined in Section 3.1.3. (Optional).
Delay 1 Message execution delay in 5 milliseconds steps (C.1).
C.1: If the Transition Time field is present, the Delay field shall also be present; otherwise these fields
shall not be present.
Table 3.43: Generic Move Set Unacknowledged message parameters
The Delta Level field shall be used to calculate the speed of the transition of the Generic Level state.
The TID field is a transaction identifier indicating whether the message is a new message or a
retransmission of a previously sent message, as described in Section 3.4.2.2.4.
If present, the Transition Time field shall be used to calculate the speed of the transition of the
Generic Level state. The format of the Transition Time field matches the format of the Generic Default
Transition Time state as defined in Section 3.1.3. Only values of 0x00 through 0x3E shall be used to
specify the Transition Number of Steps. If the resulting Transition Time is equal to 0 or undefined, the
Generic Move Set command will not initiate any Generic Level state change.
The Delay field shall be present when the Transition Time field is present. It identifies the message
execution delay, representing a time interval between receiving the message by a model and
executing the associated model behaviors.
Size
Field Notes
(octets)
Present Level 2 The present value of the Generic Level state.
Target Level 2 The target value of the Generic Level state (Optional).
Remaining Time 1 Format as defined in Section 3.1.3 (C.1).
C.1: If the Target Level field is present, the Remaining Time field shall also be present; otherwise
these fields shall not be present.
Table 3.44: Generic Level Status message parameters
The Present Level field identifies the present Generic Level state of the element (see Section 3.1.2).
If present, the Target Level field identifies the target Generic Level state that the element is to reach
(see Section 3.1.2).
If present, the Remaining Time field identifies the time that it will take the element to complete the
transition to the target Generic Level state of the element (see Section 3.1.2).
The response to the Generic Default Transition Time Get message is a Generic Default Transition
Time Status message.
The response to the Generic Default Transition Time Set message is a Generic Default Transition
Time Status message.
Size
Field Notes
(octets)
Transition Time 1 The value of the Generic Default Transition Time state.
Table 3.45: Generic Default Transition Time Set message parameters
The Transition Time field identifies the Generic Default Transition Time state of the element (see
Section 3.1.3). Only values of 0x00 through 0x3E shall be used to specify the Transition Number
of Steps.
Size
Field Notes
(octets)
Transition Time 1 The value of the Generic Default Transition Time state.
Table 3.46: Generic Default Transition Time Set Unacknowledged message parameters
The Transition Time field identifies the Generic Default Transition Time state of the element (see
Section 3.1.3).
Size
Field Notes
(octets)
Transition Time 1 The value of the Generic Default Transition Time state.
Table 3.47: Generic Default Transition Time Status message parameters
The Transition Time field identifies the Generic Default Transition Time state of the element (see
Section 3.1.3).
The response to the Generic OnPowerUp Get message is a Generic OnPowerUp Status message.
The response to the Generic OnPowerUp Set message is a Generic OnPowerUp Status message.
Size
Field Notes
(octets)
OnPowerUp 1 The value of the Generic OnPowerUp state.
Table 3.48: Generic OnPowerUp Set message parameters
The OnPowerUp field identifies the Generic OnPowerUp state of the element (see Section 3.1.3).
Size
Field Notes
(octets)
OnPowerUp 1 The value of the Generic OnPowerUp state.
Table 3.49: Generic OnPowerUp Set Unacknowledged message parameters
The OnPowerUp field identifies the Generic OnPowerUp state of the element (see Section 3.1.3).
Size
Field Notes
(octets)
OnPowerUp 1 The value of the Generic OnPowerUp state.
Table 3.50: Generic OnPowerUp Status message parameters
The OnPowerUp field identifies the Generic OnPowerUp state of the element (see Section 3.1.3).
The response to the Generic Power Level Get message is a Generic Power Level Status message.
The response to the Generic Power Level Set message is a Generic Power Level Status message.
Size
Field Notes
(octets)
Power 2 The target value of the Generic Power Actual state
TID 1 Transaction Identifier
Transition Time 1 Format as defined in Section 3.1.3. (Optional)
Delay 1 Message execution delay in 5 milliseconds steps (C.1)
C.1: If the Transition Time field is present, the Delay field shall also be present; otherwise these fields
shall not be present.
Table 3.51: Generic Power Level Set message parameters
The Power field identifies the target Generic Power Actual state of the element, as defined in
Section 3.1.5.1.
The TID field is a transaction identifier indicating whether the message is a new message or a
retransmission of a previously sent message, as described in Section 3.4.5.2.2.
If present, the Transition Time field identifies the time an element will take to transition to the target
state from the present state (see Section 1.4.1.1). The format of the Transition Time field matches the
format of the Generic Default Transition Time state as defined in Section 3.1.3. Only values of 0x00
through 0x3E shall be used to specify the Transition Number of Steps.
The Delay field shall be present when the Transition Time field is present. It identifies the message
execution delay, representing a time interval between receiving the message by a model and
executing the associated model behaviors.
Size
Field Notes
(octets)
Power 2 The target value of the Generic Power Actual state
TID 1 Transaction Identifier
Transition Time 1 Format as defined in Section 3.1.3. (Optional)
Delay 1 Message execution delay in 5 milliseconds steps (C.1)
C.1: If the Transition Time field is present, the Delay field shall also be present; otherwise these
fields shall not be present.
Table 3.52: Generic Power Level Set Unacknowledged message parameters
The Power field identifies the target Generic Power Actual state of the element, as defined in
Section 3.1.5.1.
The TID field is a transaction identifier indicating whether the message is a new message or a
retransmission of a previously sent message, as described in Section 3.4.5.2.2.
If present, the Transition Time field identifies the time an element will take to transition to the target
state from the present state (see Section 1.4.1.1). The format of the Transition Time field matches the
format of the Generic Default Transition Time state, as defined in Section 3.1.3. Only values of 0x00
through 0x3E shall be used to specify the Transition Number of Steps.
The Delay field shall be present when the Transition Time field is present. It identifies the message
execution delay, representing a time interval between receiving the message by a model and
executing the associated model behaviors.
Size
Field Notes
(octets)
Present Power 2 The present value of the Generic Power Actual state.
The target value of the Generic Power Actual state
Target Power 2
(optional).
Remaining Time 1 Format as defined in Section 3.1.3 (C.1).
C.1: If the Target Power field is present, the Remaining Time field shall also be present; otherwise
these fields shall not be present.
Table 3.53: Generic Power Level Status message parameters
The Present Power field identifies the Generic Power Actual state of the element, as defined in
Section 3.1.5.1.
If present, the Target Power field identifies the target Generic Power Actual state that the element is
to reach (see Section 3.1.5.1).
If present, the Remaining Time field identifies the time it will take the element to complete the
transition to the target Generic Power Actual state of the element (see Section 1.4.1.1 and 3.1.5.1).
The response to a Generic Power Last Get message is a Generic Power Last Status message.
Size
Field Notes
(octets)
Power 2 The value of the Generic Power Last state.
Table 3.54: Generic Power Last Status message parameters
The Power field identifies the Generic Power Last state of the element, as defined in
Section 3.1.5.1.1.
The response to a Generic Power Default Get message is a Generic Power Default Status message.
The response to the Generic Power Default Set message is a Generic Power Default Status message.
Size
Field Notes
(octets)
Power 2 The value of the Generic Power Default state.
Table 3.55: Generic Power Default Set message parameters
The Power field identifies the Generic Power Default state of the element, as defined in Section 3.1.5.3.
Size
Field Notes
(octets)
Power 2 The value of the Generic Power Default state.
Table 3.56: Generic Power Default Set Unacknowledged message parameters
The Power field identifies the Generic Power Default state of the element, as defined in Section 3.1.5.3.
Size
Field Notes
(octets)
Power 2 The value of the Generic Power Default state.
Table 3.57: Generic Power Default Status message parameters
The Power field identifies the Generic Power Default state of the element, as defined in Section 3.1.5.3.
The response to the Generic Power Range Get message is a Generic Power Range Status message.
The response to the Generic Power Range Set message is a Generic Power Range Status message.
Size
Field Notes
(octets)
The value of the Generic Power Min field of the Generic
Range Min 2
Power Range state.
The value of the Generic Power Range Max field of the
Range Max 2
Generic Power Range state.
Table 3.58: Generic Power Range Set message parameters
The Range Min field identifies the Generic Power Range Min field of the Generic Power Range state
of the element (see Section 3.1.5.4).
The Range Max field identifies the Generic Power Max field of the Generic Power Range state of the
element (see Section 3.1.5.4).
The value of the Range Max field shall be greater or equal to the value of the Range Min field.
Size
Field Notes
(octets)
The value of the Generic Power Min field of the Generic
Range Min 2
Power Range state.
The value of the Generic Power Range Max field of the
Range Max 2
Generic Power Range state.
Table 3.59: Generic Power Range Set Unacknowledged message parameters
The Range Min field identifies the Generic Power Range Min field of the Generic Power Range state
of the element (see Section 3.1.5.4).
The Range Max field identifies the Generic Power Max field of the Generic Power Range state of the
element (see Section 3.1.5.4).
The value of the Range Max field shall be greater or equal to the value of the Range Min field.
Size
Field Notes
(octets)
Status Code 1 Status Code for the requesting message.
The value of the Generic Power Range Min field of the
Range Min 2
Generic Power Range state.
The value of the Generic Power Range Max field of the
Range Max 2
Generic Power Range state.
Table 3.60: Generic Power Range Status message parameters
The Status Code field identifies the Status Code for the last operation on the Generic Power Range
state. The allowed values for status codes and their meanings are documented in Section 7.2.
The Range Min field identifies the Generic Power Range Min field of the Generic Power Range state
of the element (see Section 3.1.5.4).
The Range Max field identifies the Generic Power Range Max field of the Generic Power Range state
of the element (see Section 3.1.5.4).
The response to the Generic Battery Get message is a Generic Battery Status message.
Size
Field Notes
(octets)
Battery Level 1 The value of the Generic Battery Level state.
The value of the Generic Battery Time to Discharge
Time to Discharge 3
state.
Time to Charge 3 The value of the Generic Battery Time to Charge state.
Flags 1 The value of the Generic Battery Flags state.
Table 3.61: Generic Battery Status message parameters
The Battery Level field identifies the Generic Battery Level state of the element, as defined in
Section 3.1.6.1.
The Time to Discharge field identifies the Generic Battery Time to Discharge state of the element,
as defined in Section 3.1.6.2.
The Time to Charge field identifies the Generic Battery Time to Charge state of the element, as
defined in Section 3.1.6.3.
The Flags field identifies the Generic Battery Flags state of the element, as defined in Section 3.1.6.4.
The response to the Generic Location Global Get message is a Generic Location Global Status message.
The response to the Generic Location Global Set message is a Generic Location Global Status message.
Size
Field Notes
(octets)
Global Latitude 4 Global Coordinates (Latitude)
Global Longitude 4 Global Coordinates (Longitude)
Global Altitude 2 Global Altitude
Table 3.62: Generic Location Global Set message parameters
The Global Latitude field identifies the Generic Location Global Latitude state of the element, as
defined in Section 3.1.7.1.
The Global Longitude field identifies the Generic Location Global Longitude state of the element, as
defined in Section 3.1.7.2.
The Global Altitude field identifies the Generic Location Global Altitude state of the element, as
defined in Section 3.1.7.6.
Size
Field Notes
(octets)
Global Latitude 4 Global Coordinates (Latitude)
Global Longitude 4 Global Coordinates (Longitude)
Global Altitude 2 Global Altitude
Table 3.63: Generic Location Global Set Unacknowledged message parameters
The Global Latitude field identifies the Generic Location Global Latitude state of the element, as
defined in Section 3.1.7.1.
The Global Longitude field identifies the Generic Location Global Longitude state of the element, as
defined in Section 3.1.7.2.
The Global Altitude field identifies the Generic Location Global Altitude state of the element, as
defined in Section 3.1.7.6.
Size
Field Notes
(octets)
Global Latitude 4 Global Coordinates (Latitude)
Global Longitude 4 Global Coordinates (Longitude)
Global Altitude 2 Global Altitude
Table 3.64: Generic Location Global Status message parameters
The Global Latitude field identifies the Generic Location Global Latitude state of the element, as
defined in Section 3.1.7.1.
The Global Longitude field identifies the Generic Location Global Longitude state of the element, as
defined in Section 3.1.7.2.
The Global Altitude field identifies the Generic Location Global Altitude state of the element, as
defined in Section 3.1.7.6.
The response to the Generic Location Local Get message is a Generic Location Local Status
message.
The response to the Generic Location Local Set message is a Generic Location Local Status
message.
Size
Field Notes
(octets)
Local North 2 Local Coordinates (North)
Local East 2 Local Coordinates (East)
Local Altitude 2 Local Altitude
Floor Number 1 Floor Number
Uncertainty 2 Uncertainty
Table 3.65: Generic Location Local Set message parameters
The Local North field identifies the Generic Location Local North state of the element, as defined in
Section 3.1.7.4.
The Local East field identifies the Generic Location Local East state of the element, as defined in
Section 3.1.7.5.
The Local Altitude field identifies the Generic Location Local Altitude state of the element, as defined
in Section 3.1.7.6.
The Floor Number field identifies the Generic Location Floor Number state of the element, as defined
in Section 3.1.7.7.
The Uncertainty field identifies the Generic Location Uncertainty state of the element, as defined in
Section 3.1.7.8.
Size
Field Notes
(octets)
Local North 2 Local Coordinates (North)
Local East 2 Local Coordinates (East)
Local Altitude 2 Local Altitude
Floor Number 1 Floor Number
Uncertainty 2 Uncertainty
Table 3.66: Generic Location Local Set Unacknowledged message parameters
The Local North field identifies the Generic Location Local North state of the element, as defined in
Section 3.1.7.4.
The Local East field identifies the Generic Location Local East state of the element, as defined in
Section 3.1.7.5.
The Local Altitude field identifies the Generic Location Local Altitude state of the element, as defined
in Section 3.1.7.6.
The Floor Number field identifies the Generic Location Floor Number state of the element, as defined
in Section 3.1.7.7.
The Uncertainty field identifies the Generic Location Uncertainty state of the element, as defined in
Section 3.1.7.8.
Size
Field Notes
(octets)
Local North 2 Local Coordinates (North)
Local East 2 Local Coordinates (East)
Local Altitude 2 Local Altitude
Floor Number 1 Floor Number
Uncertainty 2 Uncertainty
Table 3.67: Generic Location Local Status message parameters
The Local North field identifies the Generic Location Local North state of the element, as defined in
Section 3.1.7.4.
The Local East field identifies the Generic Location Local East state of the element, as defined in
Section 3.1.7.5.
The Local Altitude field identifies the Generic Location Local Altitude state of the element, as defined
in Section 3.1.7.6.
The Floor Number field identifies the Generic Location Floor Number state of the element, as defined
in Section 3.1.7.7.
The Uncertainty field identifies the Generic Location Uncertainty state of the element, as defined in
Section 3.1.7.8.
The response to the Generic User Properties Get message is a Generic User Properties Status
message.
The message is sent as a response to the Generic User Properties Get message or may be sent as
an unsolicited message.
Size
Field Notes
(octets)
A sequence of N User Property IDs present within an element,
User Property IDs 2*N where N is the number of device property IDs included in the
message.
Table 3.68: Generic User Properties Status message parameters
The User Property IDs field contains a sequence of all Generic User Property ID states of an element
(see Section 3.1.8).
The response to the Generic User Property Get message is a Generic User Property Status
message.
Size
Field Notes
(octets)
User Property ID 2 Property ID identifying a Generic User Property
Table 3.69: Generic User Property Get message parameters
The User Property ID field identifies a Generic User Property ID state of an element (see
Section 3.1.8).
The response to the Generic User Property Set message is a Generic User Property Status message.
Size
Field Notes
(octets)
User Property ID 2 Property ID identifying a Generic User Property
User Property Value variable Raw value for the User Property
Table 3.70: Generic User Property Set message parameters
The User Property ID field identifies a User Property ID state of an element (see Section 3.1.8.1.1).
The User Property Value field identifies a User Property Value state of an element (see
Section 3.1.8.1.3).
Size
Field Notes
(octets)
User Property ID 2 Property ID identifying a Generic User Property
User Property Value variable Raw value for the User Property
Table 3.71: Generic User Property Set Unacknowledged message parameters
The User Property ID field identifies a User Property ID state of an element (see Section 3.1.8.1.1).
The User Property Value field identifies a User Property Value state of an element (see
Section 3.1.8.1.3).
The message is sent as a response to the Generic User Property Get message and the Generic User
Property Set message, or may be sent as an unsolicited message.
Size
Field Notes
(octets)
User Property ID 2 Property ID identifying a Generic User Property.
User Access 1 Enumeration indicating user access (Optional)
User Property Value variable Raw value for the User Property (C.1)
C.1: If the User Access field is present, the User Property Value field shall also be present; otherwise
this field shall not be present.
Table 3.72: Generic User Property Status message parameters
The User Property ID field identifies a User Property ID state of an element (see Section 3.1.8.1.1).
The User Access field identifies a User Access state of an element (see Section 3.1.8.1.2).
The User Property Value field identifies a User Property Value state of an element (see Section 3.1.8.1.3).
The response to the Generic Admin Properties Get message is a Generic Admin Properties Status
message.
The message is sent as a response to the Generic Admin Properties Get message or may be sent as
an unsolicited message.
Size
Field Notes
(octets)
A sequence of N Admin Property IDs present within an element,
Admin Property
2*N where N is the number of device property IDs included in the
IDs
message.
Table 3.73: Generic Admin Properties Status message parameters
The Admin Property IDs field contains a sequence of all Generic Admin Property ID states of an
element (see Section 3.1.8.2).
The response to the Generic Admin Property Get message is a Generic Admin Property Status message.
Size
Field Notes
(octets)
Admin Property ID 2 Property ID identifying a Generic Admin Property.
Table 3.74: Generic Admin Property Get message parameters
The Admin Property ID field identifies an Admin Property ID state of an element (see
Section 3.1.8.2.1).
The response to the Generic Admin Property Set message is a Generic Admin Property Status
message.
Size
Field Notes
(octets)
Admin Property ID 2 Property ID identifying a Generic Admin Property.
Admin User Access 1 Enumeration indicating user access.
Admin Property Value variable Raw value for the Admin Property
Table 3.75: Generic Admin Property Set message parameters
The Admin Property ID field identifies an Admin Property ID state of an element (see
Section 3.1.8.2.1).
The Admin User Access field identifies an Admin User Access state of an element (see
Section 3.1.8.2.2).
The Admin Property Value field identifies an Admin Property Value state of an element (see
Section 3.1.8.2.3).
Size
Field Notes
(octets)
Admin Property ID 2 Property ID identifying a Generic Admin Property.
Admin User Access 1 Enumeration indicating user access.
Admin Property Value variable Raw value for the Admin Property.
Table 3.76: Generic Admin Property Set Unacknowledged message parameters
The Admin Property ID field identifies an Admin Property ID state of an element (see
Section 3.1.8.2.1).
The Admin User Access field identifies an Admin User Access state of an element (see
Section 3.1.8.2.2).
The Admin Property Value field identifies an Admin Property Value state of an element (see
Section 3.1.8.2.3).
The message is sent as a response to the Generic Admin Property Get message and the Generic
Admin Property Set message, or may be sent as an unsolicited message.
Size
Field Notes
(octets)
Admin Property ID 2 Property ID identifying a Generic Admin Property
Admin User Access 1 Enumeration indicating user access (Optional)
Admin Property Value variable Raw value for the Admin Property (C.1)
C.1: If the Admin User Access field is present, the Admin Property Value field shall also be present;
otherwise this field shall not be present.
Table 3.77: Generic Admin Property Status message parameters
The Admin Property ID field identifies an Admin Property ID state of an element (see
Section 3.1.8.2.1).
The Admin User Access field identifies an Admin User Access state of an element (see
Section 3.1.8.2.2).
The Admin Property Value field identifies an Admin Property Value state of an element (see
Section 3.1.8.2.3).
The response to the Generic Manufacturer Properties Get message is a Generic Manufacturer
Properties Status message.
The message is sent as a response to the Generic Manufacturer Properties Get message or may be
sent as an unsolicited message.
Size
Field Notes
(octets)
A sequence of N Manufacturer Property IDs present
Manufacturer Property IDs 2*N within an element, where N is the number of device
property IDs included in the message.
Table 3.78: Generic Manufacturer Properties Status message parameters
The Manufacturer Property IDs field contains a sequence of all Generic Manufacturer Property ID
states of an element (see Section 3.1.8).
The response to the Generic Manufacturer Property Get message is a Generic Manufacturer Property
Status message.
Size
Field Notes
(octets)
Manufacturer Property ID 2 Property ID identifying a Generic Manufacturer Property
Table 3.79: Generic Manufacturer Property Get message parameters
The Manufacturer Property ID field identifies a Manufacturer Property ID state of an element (see
Section 3.1.8.3.1).
The response to the Generic Manufacturer Property Set message is a Generic Manufacturer Property
Status message.
Size
Field Notes
(octets)
Manufacturer Property ID 2 Property ID identifying a Generic Manufacturer Property
Manufacturer User Access 1 Enumeration indicating user access
Table 3.80: Generic Manufacturer Property Set message parameters
The Manufacturer Property ID field identifies a Manufacturer Property ID state of an element (see
Section 3.1.8.3.1).
The Manufacturer User Access field identifies a Manufacturer User Access state of an element (see
Section 3.1.8.3.1).
Size
Field Notes
(octets)
Manufacturer Property ID 2 Property ID identifying a Generic Manufacturer Property
Manufacturer User Access 1 Enumeration indicating user access
Table 3.81: Generic Manufacturer Property Set Unacknowledged message parameters
The Manufacturer Property ID field identifies a Manufacturer Property ID state of an element (see
Section 3.1.8.3.1).
The Manufacturer User Access field identifies a Manufacturer User Access state of an element (see
Section 3.1.8.3.2).
The message is sent as a response to the Generic Manufacturer Property Get and Generic
Manufacturer Property Set messages or may be sent as an unsolicited message.
Size
Field Notes
(octets)
Manufacturer Property ID 2 Property ID identifying a Generic Manufacturer Property
Manufacturer User Access 1 Enumeration indicating user access (Optional)
Manufacturer Property Value variable Raw value for the Manufacturer Property (C.1)
C.1: If the Manufacturer User Access field is present, the Manufacturer Property Value field shall also
be present; otherwise this field shall not be present.
Table 3.82: Generic Manufacturer Property Status message parameters
The Manufacturer Property ID field identifies a Manufacturer Property ID state of an element (see
Section 3.1.8.3.1).
The Manufacturer User Access field identifies a Manufacturer User Access state of an element (see
Section 3.1.8.3.2).
The Manufacturer Property Value field identifies a Manufacturer Property Value state of an element
(see Section 3.1.8.3.3).
The response to the Generic Client Properties Get message is a Generic Client Properties Status
message.
Size
Field Notes
(octets)
Client Property ID 2 A starting Client Property ID present within an element
Table 3.83: Generic Client Properties Get message parameters
The Client Property ID field contains the smallest Property ID the client is requesting (see
Section 3.1.9).
The message is sent as a response to the Generic Client Properties Get message or may be sent as
an unsolicited message.
Size
Field Notes
(octets)
A sequence of N Client Property IDs present within an element,
Client Property IDs 2*N where N is the number of device property IDs included in the
message.
Table 3.84: Generic Client Properties Status message parameters
The Client Property IDs field contains a sequence of all Generic Client Property ID states of an
element (see Section 3.1.9).
3.3.1.1 Description
The Generic OnOff Server model is a root model (i.e., it does not extend any other models).
This model may be used to represent a variety of devices that do not fit any of the model descriptions
defined but support the generic properties of On/Off. The model defines the following state instances:
Table 3.86 illustrates the complete structure of elements, states, and messages used by the model.
SIG
Element States Messages Rx Tx
Model ID
Generic OnOff Get M
Generic OnOff Generic OnOff Set M
Main 0x1000 (see Section
3.1.1) Generic OnOff Set Unacknowledged M
Generic OnOff Status M
Table 3.86: Generic OnOff Server elements, states, and messages
Both messages may optionally include a Transition Time field that indicates the transition time to the
target state. If present, the Transition Time field value shall be used as the time for transition to the
target state. If the Transition Time field is not present and the Generic Default Transition Time state
(see Section 3.1.3) is supported, the Generic Default Transition Time state shall be used. Otherwise
the transition shall be instantaneous.
If the Transition Time field is included, the Delay field is included and indicates a delay in 5-
millisecond steps that the server shall wait before executing any state-changing behavior for this
message.
If the received message is a Generic OnOff Set message, the Generic OnOff Server shall respond
with a Generic OnOff Status message (see Section 3.3.1.2.3).
When sending a Generic OnOff Status message, the Generic OnOff Server shall set the OnOff field to
the present Generic OnOff state. If the Generic OnOff Server is in the process of changing the
Generic OnOff state, it shall set the Target OnOff field to the target Generic OnOff state and shall set
the Remaining Time field to the time it will take to complete the transition; otherwise, the Target Level
and Remaining Time fields shall be omitted.
It is recommended to transmit a Generic OnOff Status message when the element has been
physically turned on or off locally (as opposed to via the mesh network).
3.3.2.1 Description
The Generic Level Server model is a root model (i.e., it does not extend any other models).
Table 3.88 illustrates the complete structure of elements, states, and messages used by the model.
SIG
Element States Messages Rx Tx
Model ID
Generic Level Get M
Generic Level Set M
Generic Level Set
M
Unacknowledged
Generic Level Generic Delta Set M
Main 0x1002 (see Section Generic Delta Set
3.1.2) M
Unacknowledged
Generic Move Set M
Generic Move Set
M
Unacknowledged
Generic Level Status M
Table 3.88: Generic Level Server elements, states, and messages
If present, the Transition Time field value shall be used as the time for transition to the target state.
If the Transition Time field is not present and the Generic Default Transition Time state (see
Section 3.1.3) is supported, the Generic Default Transition Time state shall be used. Otherwise the
transition shall be instantaneous.
If the Transition Time field is included, the Delay field is included and indicates a delay 5-millisecond
steps that the server shall wait before executing any state-changing behavior for this message.
If the target state is equal to the current state, the transition shall not be started and is considered
complete.
If the received message is the Generic Level Set message, the Generic Level Server shall respond
with a Generic Level Status message (see Section 3.3.2.2.5).
Note: The messages within a transaction carry the cumulative values of the Delta Level field. If
one or more messages within a transaction are not received (e.g., because of radio
collisions), the next received message will make up for the lost messages, carrying
cumulative values of the Delta Level field.
A new transaction starts when the TID field value in the received message is different from the TID
field value in the previously received message that was using the same source and destination
addresses or from the most recently received message with the same TID field value that was
received 6 or more seconds earlier. The present Generic Level state is stored as the Initial Generic
Level value for this transaction.
A Generic Level Server shall abort a transaction upon receiving the message with a different source
address or a different destination address. Incoming messages within an aborted transaction shall not
result in any state changes.
When a Generic Level Server receives a Generic Delta Set message or a Generic Delta Set
Unacknowledged message, it shall set the Generic Level state to the Delta Level field of the message
added to the Initial Generic Level state.
When the Generic Level state is bound to another state that is not contiguous, the Generic Level
Server shall set the Generic Level state to a value that satisfies the requirements of the bound state.
For example, a Generic Level state may be bound to a Light Lightness state that is bound to a Light
Lightness Range state (see Section 6.1.2.2.5) such that only values 0 and 1000–50000 are
supported; therefore, if the resulting value of the bound Light Lightness range state is in the excluded
open range of (0,1000), a value of 0 shall be set for negative Delta Level values and a value of 1000
shall be set for positive Delta Level values.
When the Generic Level state is not bound to any state, the overflow/underflow handling is
implementation-specific. Some Generic Level Servers may stop at their maximum or minimum level,
and some may wrap around.
When the Generic Level state is bound to another state, the overflow/underflow handling shall be
defined by the wrap-around behavior of the bound state.
If present, the Transition Time field value shall be used as the time for transition to the target state.
If the Transition Time field is not included and the Generic Default Transition Time state (see
Section 3.1.3) is supported, the Generic Default Transition Time state shall be used. Otherwise the
transition shall be instantaneous.
If the Transition Time field is included, the Delay field is included and indicates a delay 5-millisecond
steps that the server shall wait before executing any state-changing behavior for this message.
If the target state is equal to the current state, the transition shall not be started and is considered
complete.
It is recommended to set the value of the Transition Time field to the expected interval after which the
next message will be sent. For example, if the messages are sent every 200 milliseconds, the
Transition Time should be set to 200 milliseconds.
Upon receiving a Generic Delta Set message, the Generic Level Server shall respond with a Generic
Level Status message (see Section 3.3.2.2.5).
When the Generic Level state is not bound to another state, the overflow/underflow handling is
implementation-specific. Some Generic Level Servers may stop at their maximum or minimum levels,
and some may wrap around.
When the Generic Level state is bound to another state, the overflow/underflow handling shall be
defined by the wrap-around behavior of the bound state.
When a Generic Level Server receives the message with a value of the Delta Level field equal to 0, it
shall stop changing the Generic Level state.
If present, the Transition Time field value shall be used as the time for calculating the transition speed
towards the target state. If the Transition Time field is not present and the Generic Default Transition
Time state (see Section 3.1.3) is supported, the Generic Default Transition Time state shall be used.
Otherwise the Generic Move Set command shall not initiate any Generic Level state change.
If the resulting Transition Time is equal to 0, the Generic Move Set command will not initiate any
Generic Level state change.
If the Transition Time field is included, the Delay field is included and indicates a delay 5-millisecond
steps that the server shall wait before executing any state-changing behavior for this message.
If the target state is equal to the current state, the transition shall not be started and is considered
complete.
Upon receiving a Generic Move Set message, the Generic Level Server shall respond with a Generic
Level Status message (see Section 3.3.2.2.5). The target Generic Level state is the upper limit of the
Generic Level state when the transition speed is positive, or the lower limit of the Generic Level state
when the transition speed is negative.
It is recommended to send a Generic Level Status message when the Generic Level state (see
Section 3.1.2) has changed as a result of a local action (as opposed to an action initiated via the
mesh network), such as the element being turned on or off.
When sending a Generic Level Status message, the Generic Level Server shall set the Present Level
field to the present Generic Level state. If the Generic Level Server is in the process of changing the
Generic Level state, it shall set the Target Level field to the target Generic Level state and the
Remaining Time field to the time it will take to complete the transition. Otherwise, the Target Level
and Remaining Time fields shall be omitted.
3.3.3.1 Description
The Generic Default Transition Time Server model is a root model (i.e., it does not extend any other
models).
This model may be used to represent a default transition time for a variety of devices. The model
defines the following state instances.
Generic Default Transition Time Server States Stored with Bound States
State Instance Scene Model State Instance
Generic Default Transition Time Main No - - -
Table 3.89: Generic Default Transition Time Server states and bindings
Table 3.93 illustrates the complete structure of elements, states, and messages used by the model.
SIG
Element States Messages Rx Tx
Model ID
Generic Default Transition Time Get M
Generic
Default Generic Default Transition Time Set M
Main 0x1004 Transition Generic Default Transition Time Set
Time M
Unacknowledged
(Section 3.1.3)
Generic Default Transition Time Status M
Table 3.90: Generic Default Transition Time Server elements, states, and messages
If the received message is a Generic Default Transition Time Set message, the Generic Default
Transition Time Server shall respond with a Generic Default Transition Time Status message (see
Section 3.3.3.2.3).
When sending a Generic Default Transition Time Status message, the Generic Default Transition
Time Server shall set the Transition Time field to the Generic Default Transition Time state.
3.3.4.1 Description
The Generic Power OnOff Server model extends the Generic OnOff Server model. When this
model is present on an element, the corresponding Generic Power OnOff Setup Server model
(see Section 3.3.5) shall also be present.
This model may be used to represent a variety of devices that do not fit any of the model descriptions
that have been defined but support the generic properties of On/Off.
The model adds the state instances listed in Table 3.91 and messages listed in Table 3.92 to the
models that it extends.
SIG
Element States Messages Rx Tx
Model ID
Generic OnPowerUp Generic OnPowerUp Get M
Main 0x1006
(see Section 3.1.4) Generic OnPowerUp Status M
Table 3.92: Generic Power OnOff Server messages
Table 3.93 illustrates the complete structure of elements, states, and messages used by the model.
SIG
Element States Messages Rx Tx
Model ID
Generic OnOff Get M
Generic OnOff Generic OnOff Set M
0x1000
Main (see Section 3.1.1) Generic OnOff Set Unacknowledged M
Generic OnOff Status M
0x1006 Generic OnPowerUp Get M
SIG
Element States Messages Rx Tx
Model ID
Generic
OnPowerUp Generic OnPowerUp Status M
(see Section 3.1.4)
Table 3.93: Generic Power OnOff Server elements, states, and messages
If the value of the Generic OnPowerUp state is 0x00, the Generic OnOff state shall be set to Off.
If the value of the Generic OnPowerUp state is 0x01, the Generic OnOff state shall be set to On. The
bound states shall be set to their default values, if defined.
If the value of the Generic OnPowerUp state is 0x02, the bound states shall be restored to the states
they were in when powered down. If the bound states were in transition to new target states when a
node was powered down, they shall be restored to the target states. If the bound states were in
transition with unknown target states (i.e., as a result of receiving a Generic Move message), they
shall continue the transition.
If the value of the Generic OnPowerUp state is 0x02 and a transition was in progress when powered
down, the element restores the target state when powered up.
If the value of the Generic OnPowerUp state is 0x02 and a transition was not in progress when
powered down, the element restores the state it was in when powered down.
Each element shall transition to the determined state using its value of the Generic Default Transition
Time state as the transition time. If the Generic Default Transition Time is not defined for the element,
it shall transition to the determined state instantaneously.
When sending a Generic OnPowerUp Status message, the Generic Power OnOff Server shall set the
OnPowerUp field to the Generic OnPowerUp state.
3.3.5.1 Description
The Generic Power OnOff Setup Server model extends the Generic Power OnOff Server model (see
Section 3.3.4) and the Generic Default Transition Time Server model.
The model adds the messages listed in Table 3.94 to the models that it extends.
SIG
Element States Messages Rx Tx
Model ID
Generic Generic OnPowerUp Set M
OnPowerUp
Main 0x1007 Generic OnPowerUp Set
(see Section M
3.1.4) Unacknowledged
Table 3.95 illustrates the complete structure of elements, states, and messages used by the model.
SIG
Element States Messages Rx Tx
Model ID
Generic OnOff Get M
Generic OnOff Generic OnOff Set M
0x1000 (see Section
3.1.1) Generic OnOff Set Unacknowledged M
Generic OnOff Status M
Generic Default Transition Time Get M
Generic
Default Generic Default Transition Time Set M
0x1004 Transition Generic Default Transition Time Set
Time (Section M
Main Unacknowledged
3.1.3)
Generic Default Transition Time Status M
Generic Generic OnPowerUp Get M
OnPowerUp
0x1006
(see Section Generic OnPowerUp Status M
3.1.4)
Generic Generic OnPowerUp Set M
OnPowerUp
0x1007
(see Section Generic OnPowerUp Set Unacknowledged M
3.1.4)
Table 3.95: Generic Power OnOff Setup Server elements, states, and messages
If the received message is a Generic OnPowerUp Set message, the Generic Power OnOff Server
shall respond with a Generic OnPowerUp Status message (see Section 3.3.4.3.2).
3.3.6.1 Description
The Generic Power Level Server model extends the Generic Power OnOff Server model (see
Section 3.3.3) and the Generic Level Server model (see Section 3.3.2). When this model is present
on an Element, the corresponding Generic Power Level Setup Server model (see Section 3.3.7) shall
also be present.
The model adds the state instances listed in Table 3.96 and messages listed in Table 3.97 to the
model that it extends.
SIG
Element Model States Messages Rx Tx
ID
Generic Power Level Get M
Generic Power Generic Power Level Set M
Level
(see Section Generic Power Level Set
M
3.1.5) Unacknowledged
Generic Power Level Status M
Generic Power Generic Power Last Get M
Last (see
Section Generic Power Last Status M
Main 0x1009 3.1.5.1.1)
Generic Power Generic Power Default Get M
Default (see
Section Generic Power Default Status M
3.1.5.3)
Generic Power Generic Power Range Get M
Range (see
Section Generic Power Range Status M
3.1.5.4)
Table 3.97: Generic Power Level messages
Table 3.98 illustrates the complete structure of elements, states, and messages used by the model.
SIG
Element Model States Messages Rx Tx
ID
Generic OnOff Get M
Generic OnOff Generic OnOff Set M
0x1000 (see Section
3.1.1) Generic OnOff Set Unacknowledged M
Generic OnOff Status M
Generic Generic OnPowerUp Get M
OnPowerUp
0x1006
(see Section Generic OnPowerUp Status M
3.1.4)
Generic Level Get M
Generic Level Set M
Generic Level Set Unacknowledged M
Generic Level Generic Delta Set M
0x1002 (see Section
3.1.5.1.1) Generic Delta Set Unacknowledged M
Generic Move Set M
Main Generic Move Set Unacknowledged M
Generic Level Status M
Generic Power Level Get M
Generic Power Level Set M
Generic Power Level Set
M
Generic Power Unacknowledged
Level Generic Power Level Status M
(see Section
3.1.5) Generic Power Last Get M
0x1009 Generic Power Last Status M
Generic Power Default Get M
Generic Power Default Status M
Generic Power Generic Power Range Get M
Range (see
Section Generic Power Range Status M
3.1.5.4)
Table 3.98: Generic Power Level Server elements, states, and messages
3.3.6.2.2 Receiving Generic Power Level Set / Generic Power Level Set
Unacknowledged messages
When a Generic Power Level Server receives a Generic Power Level Set message or a Generic
Power Level Set Unacknowledged message, it shall set the Generic Power Actual state to the value
of the Power field of the message, unless the message has the same values for the SRC, DST, and
TID fields as the previous message received within the last 6 seconds.
If present, the Transition Time field value shall be used as the time for transition to the target state. If
the Transition Time field is not present and the Generic Default Transition Time state (see Section
3.1.3) is supported, the Generic Default Transition Time state shall be used. Otherwise the transition
shall be instantaneous.
If the Transition Time field is included, the Delay field is included and indicates a delay 5-millisecond steps
that the server shall wait before executing any state-changing behavior for this message.
If the target state is equal to the current state, the transition shall not be started and is considered
complete.
If the received message is a Generic Power Level Set message, the Generic Power Level Server
shall respond with a Generic Power Level Status message (see Section 3.3.6.2.3).
When sending a Generic Power Level Status message, the Generic Power Level Server shall set the
Power field to the Generic Power Actual state. If the Generic Power Level Server is in the process of
changing the Generic Power Actual state, it shall set the Target Power field to the target Generic
Power Actual state and shall set the Remaining Time field to the time it will take to complete the
transition. Otherwise, the Target Level and Remaining Time fields shall be omitted. It is recommended
to transmit a Generic Power Level Status message when the element has been physically turned on
or off or its Generic Power Actual state (see Section 3.1.5.1) has changed locally (as opposed to via
the mesh network).
When sending a Generic Power Last Status message, the Generic Power Level Server shall set the
Power field to the Generic Power Last state.
When sending a Generic Power Default Status message, the Generic Power Level Server shall set
the Power field to the Generic Power Default state.
When sending a Generic Power Range Status message, the Generic Power Server shall set the
Range Min field to the Generic Power Range Min state, the Range Max field to the Generic Power
Range Max state, and the Status Code field to the status of the last operation on the Generic Power
Range state.
3.3.7.1 Description
The Generic Power Level Setup Server model extends the Generic Power Level Server model (see
Section 3.3.6) and the Generic Power OnOff Setup model (see Section 3.3.5).
The model adds the messages listed in Table 3.99 to the model that it extends:
SIG
Element States Messages Rx Tx
Model ID
Generic Power Generic Power Default Set M
Default (see Generic Power Default Set
Section 3.1.5.3) M
Unacknowledged
Main 0x100A Generic Power Generic Power Level Range Set M
Level Range
(see Section Generic Power Level Range Set
M
3.1.5.4) Unacknowledged
Table 3.100 illustrates the complete structure of elements, states, and messages used by the model.
SIG
Element States Messages Rx Tx
Model ID
Generic OnOff Get M
Generic OnOff Generic OnOff Set M
0x1000 (see Section
3.1.1) Generic OnOff Set Unacknowledged M
Generic OnOff Status M
Generic Default Transition Time Get M
Generic
Main Default Generic Default Transition Time Set M
0x1004 Transition Generic Default Transition Time Set
Time (Section M
Unacknowledged
3.1.3)
Generic Default Transition Time Status M
Generic Level Get M
0x1002
Generic Level Set M
SIG
Element States Messages Rx Tx
Model ID
Generic Level Set Unacknowledged M
Generic Delta Set M
Generic Level Generic Delta Set Unacknowledged M
(see Section
3.1.2) Generic Move Set M
Generic Move Set Unacknowledged M
Generic Level Status M
Generic Generic OnPowerUp Get M
OnPowerUp
0x1006
(see Section Generic OnPowerUp Status M
3.1.4)
Generic Power Level Get M
Generic Power Level Set M
Generic Power Level Set Unacknowledged M
Generic Power
Level Generic Power Level Status M
(see Section Generic Power Last Get M
3.1.5)
0x1009 Generic Power Last Status M
Generic Power Default Get M
Generic Power Default Status M
Generic Power Generic Power Range Get M
Range (see
Section Generic Power Range Status M
3.1.5.4)
Generic Power Generic Power Default Set M
Default (see
Section Generic Power Default Set Unacknowledged M
3.1.5.3)
0x100A
Generic Power Generic Power Level Range Set M
Range (see
Section Generic Power Level Range Set
M
3.1.5.4) Unacknowledged
Table 3.100: Generic Power Level Setup Server elements, states, and messages
3.3.7.2.1 Receiving Generic Power Default Set / Generic Power Default Set
Unacknowledged messages
When a Generic Power Level Server receives a Generic Power Default Set message or a Generic
Power Default Set Unacknowledged message, it shall set the Generic Power Default state to the
value in the Power field of the message.
If the received message is a Generic Power Default Set message, the Generic Power Level Server
shall respond with a Generic Power Default Status message (see Section 3.3.6.4.2).
3.3.7.3.1 Receiving Generic Power Range Set / Generic Power Range Set
Unacknowledged messages
When a Generic Power Level Setup Server receives a Generic Power Range Set message (see
Section 3.2.5.2) or a Generic Power Range Set Unacknowledged message (see Section 3.2.5.3) with
values that can be accepted, it shall set the Generic Power Range state fields to the corresponding
fields of the message and shall set the status of the operation to 0x00 (Success).
When a Generic Power Level Setup Server receives a Generic Power Range Set message or a
Generic Power Range Set Unacknowledged message with values that cannot be accepted, it shall set
the status of the operation to a value representing the reason why the values cannot be accepted, as
defined in Table 7.2.
If the received message is a Generic Power Range Set message, the Generic Power Level Setup
Server shall respond with a Generic Power Range Status message (see Section 3.3.6.5.2).
3.3.8.1 Description
The Generic Battery Server model is a root model (i.e., it does not extend any other models).
Table 3.102 illustrates the complete structure of elements, states, and messages used by the model.
SIG
Element States Messages Rx Tx
Model ID
Generic Battery Generic Battery Get M
Main 0x100C
(see Section 3.1.6) Generic Battery Status M
Table 3.102: Generic Battery Server elements, states, and messages
It is recommended to send a Generic Battery Status message when any of the Generic Battery states
(see Section 3.1.6) has changed.
3.3.9.1 Description
The Generic Location Server model is a root model (i.e., it does not extend any other models). When
this model is present on an Element, the corresponding Generic Location Setup Server model (see
Section 3.3.10) shall also be present.
The model may be used to represent an element that knows its location (global or local).
Table 3.104 illustrates the complete structure of elements, states, and messages used by the model.
SIG
Element States Messages Rx Tx
Model ID
Generic Location Global Get M
Generic Location Generic Location Global Status M
Main 0x100E (see Section
3.1.7) Generic Location Local Get M
Generic Location Local Status M
Table 3.104: Generic Location Server elements, states, and messages
3.3.9.2.2 Receiving Generic Location Global Set / Generic Location Global Set
Unacknowledged messages
Upon receiving a Generic Location Global Set message or a Generic Location Global Set
Unacknowledged message, the Generic Location Server shall set the Generic Location Global
Latitude state to the value of the Global Latitude field, the Generic Location Global Longitude state to
the value of the Global Longitude field, and the Generic Location Global Altitude state to the value of
the Global Altitude field.
If the message is a Generic Location Global Set message, the Generic Location Server shall respond
with a Generic Location Global Status message (see Section 3.3.9.2.3).
A Generic Location Server shall send a Generic Location Status message as a response to the
Generic Location Global Get message (see Section 3.2.7.1) or at any time as an unsolicited
message.
3.3.9.2.5 Receiving Generic Location Local Set / Generic Location Local Set
Unacknowledged messages
Upon receiving a Generic Location Local Set message or a Generic Location Local Set
Unacknowledged message, the Generic Location Server shall set the Generic Location Local North
state to the value of the Local North field, the Generic Location Local East state to the value of the
Local East field, the Generic Location Floor Number state to the value of the Floor Number field, the
Generic Location Local Altitude state to the value of the Local Altitude field, and the Generic Location
Uncertainty state to the value of the Uncertainty field.
Upon receiving a Generic Location Local Set message, the Generic Location Server shall respond
with a Generic Location Local Status message (see Section 3.3.9.2.6).
A Generic Location Server shall send a Generic Location Status message as a response to the
Generic Location Local Get message (see Section 3.2.7.5) or at any time as an unsolicited message.
3.3.10.1 Description
The Generic Location Setup Server model extends the Generic Location Server model (see Section 3.3.9).
The model adds the messages listed in Table 3.105 to the model that it extends:
SIG
Element States Messages Rx Tx
Model ID
Generic Location Global Set M
Generic Location Global Set
Generic Location M
Unacknowledged
Main 0x100F (see Section
3.1.7) Generic Location Local Set M
Generic Location Local Set
M
Unacknowledged
Table 3.105: Generic Location Setup Server messages
3.3.10.2.1 Receiving Generic Location Global Set / Generic Location Global Set
Unacknowledged messages
Upon receiving a Generic Location Global Set message or a Generic Location Global Set
Unacknowledged message, the Generic Location Setup Server shall set the Generic Location Global
Latitude state to the value of the Global Latitude field, the Generic Location Global Longitude state to
the value of the Global Longitude field, and the Generic Location Global Altitude state to the value of
the Global Altitude field.
If the message is a Generic Location Global Set message, the Generic Location Server shall respond
with a Generic Location Global Status message (see Section 3.3.9.2.3).
3.3.10.2.2 Receiving Generic Location Local Set / Generic Location Local Set
Unacknowledged messages
Upon receiving a Generic Location Local Set message or a Generic Location Local Set
Unacknowledged message, the Generic Location Setup Server shall set the Generic Location Local
North state to the value of the Local North field, the Generic Location Local East state to the value of
the Local East field, the Generic Location Floor Number state to the value of the Floor Number field,
the Generic Location Local Altitude state to the value of the Local Altitude field, and the Generic
Location Uncertainty state to the value of the Uncertainty field.
If the message is a Generic Location Local Set message, the Generic Location Server shall respond
with a Generic Location Local Status message (see Section 3.3.9.2.6).
3.3.11.1 Description
The Generic User Property Server model is a root model.
Table 3.107 illustrates the complete structure of elements, states, and messages used by the model.
SIG
Element States Messages Rx Tx
Model ID
Generic User Properties Get M
Generic User Properties Status M
Generic User Generic User Property Get M
Main 0x1013 Property (see Generic User Property Set M
Section 3.1.8)
Generic User Property Set
M
Unacknowledged
Generic User Property Status M
Table 3.107: Generic User Property Server elements, states, and messages
3.3.11.2.4 Receiving Generic User Property Set / Generic User Property Set
Unacknowledged messages
Upon receiving a Generic User Property Set message or a Generic User Property Set
Unacknowledged message, the Generic User Property Server shall set the User Property Value state
to the value of the User Property Value field for a device property identified by the User Property ID, if
the value of the User Access state for this device property is 0x02 (can be written) or 0x03 (can be
read and written).
If the received message is a Generic User Property Set message, the Generic User Property Server
shall respond with a Generic User Property Status message (see Section 3.3.11.2.5).
If the message is sent as a response to the Generic User Property Get message or a Generic User
Property Set message with a value of the User Property ID field that does not identify any existing
User Property, the User Property ID field shall be set to the value of the User Property ID field of the
incoming message, and the User Access and User Property Value fields shall be omitted.
If the message is sent as a response to the Generic User Property Get message with a value of the
User Property ID field that identifies an existing User Property and the value of the User Access state
is 0x02 (can be written), the User Property ID field shall be set to the value of the User Property ID
field of the incoming message, the User Access field shall be set to the value of the User Access state
field, and the User Property Value field shall be omitted.
If the message is sent as a response to the Generic User Property Set message with a User Property
ID field that identifies an existing User Property, and the value of the User Access state is 0x01 (can
be read), the User Property ID field shall be set to the value of the User Property ID field of the
incoming message, the User Access field shall be set to the value of the User Access state field, and
the User Property Value field shall be omitted.
3.3.12.1 Description
The Generic Admin Property Server model extends the Generic User Property Server model (see
Section 3.3.11).
The model adds the state instances listed in Table 3.108 and messages listed in Table 3.109 to the
model that it extends.
SIG
Element States Messages Rx Tx
Model ID
Generic Admin Properties Get M
Generic Admin Properties Status M
Generic Admin Generic Admin Property Get M
Main 0x1011 Property (see Generic Admin Property Set M
Section 3.1.8.2)
Generic Admin Property Set
M
Unacknowledged
Generic Admin Property Status M
Table 3.109: Generic Admin Property messages
Table 3.110 illustrates the complete structure of elements, states, and messages used by the model.
SIG
Element States Messages Rx Tx
Model ID
Generic User Properties Get M
Generic User Properties Status M
Generic User Generic User Property Get M
0x1013 Property (see Generic User Property Set M
Section 3.1.8.1)
Generic User Property Set
M
Unacknowledged
Generic User Property Status M
Main
Generic Admin Properties Get M
Generic Admin Properties Status M
Generic Admin Generic Admin Property Get M
0x1011 Property (see Generic Admin Property Set M
Section 3.1.8.2)
Generic Admin Property Set
M
Unacknowledged
Generic Admin Property Status M
Table 3.110: Generic Admin Property Server elements, states, and messages
3.3.12.2.4 Receiving Generic Admin Property Set / Generic Admin Property Set
Unacknowledged messages
Upon receiving a Generic Admin Property Set message or a Generic Admin Property Set
Unacknowledged message, the Generic Admin Property Server shall set the Admin User Access
state to the value of the Admin User Access field, and shall set the Admin Property Value state to the
value of the Admin Property Value field for a device property that is identified by the User Property ID.
If the received message is a Generic Admin Property Set message, the Generic Admin Property
Server shall respond with a Generic Admin Property Status message (see Section 3.3.12.2.5).
If the message is sent as a response to the Generic Admin Property Get message or a Generic
Admin Property Set message with a value of the Admin Property ID field that does not identify any
existing Admin Property, the Admin Property ID field shall be set to the value of the Admin Property ID
field of the incoming message, and the Admin User Access field and Admin Property Value field shall
be omitted.
3.3.13.1 Description
The Generic Manufacturer Property Server model extends the Generic User Property Server model
(see Section 3.3.10).
The model adds the state instances listed in Table 3.111 and messages listed in Table 3.112 to the
model it extends.
SIG
Element States Messages Rx Tx
Model ID
Generic Manufacturer Properties Get M
Generic Generic Manufacturer Properties Status M
Manufacturer
Generic Manufacturer Property Get M
Main 0x1012 Property (see
Section Generic Manufacturer Property Set M
3.1.8) Generic Manufacturer Property Set
M
Unacknowledged
SIG
Element States Messages Rx Tx
Model ID
Generic Manufacturer Property Status M
Table 3.112: Generic Manufacturer Property messages
Table 3.113 illustrates the complete structure of elements, states, and messages used by the model.
SIG
Element States Messages Rx Tx
Model ID
Generic User Properties Get M
Generic User Properties Status M
Generic User
Property (see Generic User Property Get M
0x1013
Section Generic User Property Set M
3.1.8)
Generic User Property Set Unacknowledged M
Generic User Property Status M
Main Generic Manufacturer Properties Get M
Generic Manufacturer Properties Status M
Generic
Manufacturer Generic Manufacturer Property Get M
0x1012 Property (see Generic Manufacturer Property Set M
Section
3.1.8) Generic Manufacturer Property Set
M
Unacknowledged
Generic Manufacturer Property Status M
Table 3.113: Generic Manufacturer Property Server elements, states, and messages
If the received message is a Generic Manufacturer Property Set message, the Generic Manufacturer
Property Server shall respond with a Generic Manufacturer Property Status message (see Section
3.3.13.2.5).
If the message is sent as a response to the Generic Manufacturer Property Get message or a Generic
Manufacturer Property Set message with a value of the Manufacturer Property ID field that does not
identify any existing Manufacturer Property, the Manufacturer Property ID field shall be set to the
value of the Manufacturer Property ID field of the incoming message, and the Manufacturer User
Access field and Manufacturer Property Value field shall be omitted.
3.3.14.1 Description
The Generic Client Property Server model is a root model.
Table 3.115 illustrates the complete structure of elements, states, and messages used by the model.
SIG
Element States Messages Rx Tx
Model ID
Generic Client Generic Client Properties Get M
Main 0x1014 Property (see
Section 3.1.9) Generic Client Properties Status M
Table 3.115: Generic Client Property Server elements, states, and messages
Properties Get message that it is responding to. The size of the Client Property IDs field is limited by
the maximum size of a mesh message defined by the Mesh Profile specification [2]. If the sequence
exceeds the maximum size, only the truncated part of the sequence that fits within the maximum size
of a message shall be sent.
3.4.1.1 Description
The Generic OnOff Client model is a root model (i.e., it does not extend any other models).
This model may be used to represent a variety of elements that do not fit any of the model
descriptions defined but can consume and control the generic properties of On/Off. The model may
operate on states defined by the Generic Power OnOff Server model (see Section 3.3.3) via Generic
OnOff Messages (see Section 3.2.1).
The following table illustrates the complete structure of elements, procedures, and messages used by
the model. At least one message listed in the table shall be supported by this model.
SIG
Element Procedure Messages Rx Tx
Model ID
Generic OnOff Get O
Generic OnOff Set O
Main 0x1001 Generic OnOff
Generic OnOff Set Unacknowledged O
Generic OnOff Status C.1
C.1: If any of the messages: Generic OnOff Get Generic OnOff Set are supported, the Generic OnOff
Status message shall also be supported; otherwise, support for the Generic OnOff Status message is
optional.
Table 3.116: Generic OnOff Client elements and messages
To set the Generic OnOff state of a Generic OnOff Server without acknowledgment, a Generic OnOff
Client shall send a Generic OnOff Set Unacknowledged message, setting the OnOff field to the
required value and the TID field to the least recently used value.
Both messages may optionally include a Transition Time field indicating the transition time to the
target state. If present, the Transition Time field value shall be used as the time for transition to the
target state. If the Transition Time field is not present and the Generic Default Transition Time state
(see Section 3.1.3) is supported, the Generic Default Transition Time state shall be used. Otherwise
the transition shall be instantaneous.
If a Transition Time is included, a Delay field shall be included indicating the message execution delay
representing the time interval between receiving the message by a Model and executing the
associated model behaviors.
To retransmit the message, a Generic OnOff Client shall use the same value for the TID field as in the
previously sent message within 6 seconds from sending that message.
The choice to use a Generic OnOff Set or Generic OnOff Set Unacknowledged message is an
implementation detail.
An element, typically due to user interaction, may send a Generic OnOff Set message or a Generic
OnOff Set Unacknowledged message at any time.
If the Generic OnOff Server is in a process of changing the Generic OnOff state, the Generic OnOff Client
can determine the target Generic OnOff state that is indicated by the Target OnOff field of the message as
well as the remaining transition time that is indicated by the Remaining Time field of the message.
3.4.2.1 Description
The Generic Level Client model is a root model (i.e., it does not extend any other models).
This model may be used to represent a variety of devices that do not fit any of the defined Model
descriptions but can consume and control the generic properties of Level. The model operates on
states defined by the Generic Level Server model (see Section 3.3.2) via Generic Level messages
(see Section 3.2.2).
The following table illustrates the complete structure of elements, procedures, and messages used by
the model. At least one message listed in the table shall be supported by this model.
SIG
Element Procedure Messages Rx Tx
Model ID
Generic Level Get O
Generic Level Set O
Generic Level Set
O
Unacknowledged
Generic Delta Set O
Main 0x1003 Generic Level Generic Delta Set
O
Unacknowledged
Generic Move Set O
Generic Move Set
O
Unacknowledged
Generic Level Status C.1
C.1: If any of the messages: Generic Level Get, Generic Level Set, Generic Delta Set, Generic Move
Set are supported, the Generic Level Status message shall also be supported; otherwise, support for
the Generic Level Status message is optional.
Table 3.117: Generic Level Client elements and messages
To set the Generic Level state of a Generic Level Server without acknowledgment, a Generic Level
Client shall send a Generic Level Set Unacknowledged message, setting the Level field to the
required value and the TID field to the least recently used value.
Both messages may optionally include a Transition Time field indicating the transition time to the
target state. If present, the Transition Time field value shall be used as the time for transition to the
target state. If the Transition Time field is not present and the Generic Default Transition Time state
(see Section 3.1.3) is supported, the Generic Default Transition Time state shall be used. Otherwise
the transition shall be instantaneous.
If a Transition Time is included, a Delay field shall be included indicating the message execution
delay, which represents the time interval between when a model received the message and when the
associated model behaviors were executed.
To retransmit the message, a Generic Level Client shall use the same value for the TID field as in the
previously sent message, within 6 seconds from sending that message.
The choice to use a Generic Level Set message or Generic Level Set Unacknowledged message is
an implementation detail.
An element, typically as a result of user interaction, may send a Generic Level Set message or a
Generic Level Set Unacknowledged message at any time.
To change the Generic Level state of a Generic Level Server by a relative value without
acknowledgment, a Generic Level Client shall send a Generic Delta Set Unacknowledged message,
setting the Delta Level field to the required relative value.
Both messages may optionally include a Transition Time field indicating the transition time to the
target state. If present, the Transition Time field value shall be used as the time for transition to the
target state. If the Transition Time field is not present and the Generic Default Transition Time state
(see Section 3.1.3) is supported, the Generic Default Transition Time state shall be used. Otherwise
the transition shall be instantaneous.
If a Transition Time is included, a Delay field shall be included indicating the message execution
delay, which represents the time interval between when a model received the message and when the
associated model behaviors were executed.
Both messages support transactional control. A number of Generic Delta Set and Generic Delta Set
Unacknowledged messages with the same transaction identifier in the TID field may be sent.
Note: The messages within a transaction carry the cumulative values of the Delta Level field. In
case one or more messages within a transaction are not received by the Generic Level
Server (e.g., as a result of radio collisions), the next received message will make up for the
lost messages, carrying cumulative values of the Delta Level field. For example, a first
message in a new transaction has the value of Delta Level equal to 20. Upon receiving
this message, the server sets the current state as the Initial state for this transaction (see
Section 3.3.2.2.3) and increases the value of the Initial state by 20. If the subsequent
messages in the same transaction have values of the Delta field equal to 30, 40, and 50
respectively, each message sets the new state to the value relative to the Initial state
stored when the transaction has been started. This mechanism is designed to ensure that
a correct value will be set upon receiving any message, regardless of how many
messages were lost. In this example, the final state is set to the value of the base state
increased by 50, even if some messages within this transaction have not been received.
A new transaction is started when the TID field value in the sent message is different from the TID
field value in the previously sent message, or when a message with the same TID field value was
sent 6 or more seconds earlier.
To retransmit the message, a Generic Level Client shall use the same value for the TID field and the
same value for the Delta Level fields as in the message previously sent within 6 seconds from
sending that message.
The choice to use a Generic Delta Set message or Generic Delta Set Unacknowledged message is
an implementation detail.
An element, typically as a result of user interaction, may send a Generic Delta Set message or a
Generic Delta Set Unacknowledged message at any time or may start a transaction by selecting a
new TID and sending a Generic Delta Set Unacknowledged message with the selected TID. As
additional deltas are required, typically as a result of continuing user interaction, the element may
continue to send additional Generic Delta Set Unacknowledged messages with the same TID. When
the procedure is complete, typically due to the lack of user interaction, the element may send a
Generic Delta Set message or a Generic Delta Set Unacknowledged message with the same TID.
The sample message sequence chart (MSC) for this scenario is presented in Section 7.4.2.7.
To start changing the Generic Level state of a Generic Level Server with a determined speed without
acknowledgment, a Generic Level Client shall send a Generic Move Set Unacknowledged message,
setting the Delta Level field to the required relative value and the TID field to the least recently used
value.
Both messages may optionally include a Transition Time field indicating the transition time, which is
used to calculate the speed of the transition. If present, the Transition Time field value shall be used
as the time for transition to the target state. If the Transition Time field is not present and the Generic
Default Transition Time state (see Section 3.1.3) is supported, the Generic Default Transition Time
state shall be used. Otherwise the transition shall be instantaneous.
If a Transition Time is included, a Delay field shall be included indicating the message execution
delay, which represents the time interval between when a model received the message and when the
associated model behaviors were executed.
To stop changing the Generic Level state of a Generic Level Server with acknowledgment, a Generic
Level Client shall send a Generic Move Set message, setting the Delta Level field to 0x0000. The
response is a Generic Level Status message (see Section 3.4.2.2.5).
To stop changing the Generic Level state of a Generic Level Server without acknowledgment, a
Generic Level Client shall send a Generic Move Set Unacknowledged message, setting the Delta
Level field to 0x0000.
To retransmit the message, a Generic Level Client shall use the same value for the TID field as in the
previously sent message, within 6 seconds from sending that message.
The choice to use a Generic Move Set message or a Generic Move Set Unacknowledged message is
an implementation detail.
An element, typically as a result of user interaction, may send a Generic Delta Set message or a
Generic Delta Set Unacknowledged message at any time.
If the Generic Level Server is in a process of changing the Generic Level state, the Generic Level
Client can determine the target Generic Level state that is indicated by the Target Level field of the
message as well as the remaining transition time that is indicated by the Remaining Time field of the
message.
3.4.3.1 Description
The Generic Default Transition Time Client model is a root model (i.e., it does not extend any other
models).
The model may operate on states defined by the Generic Default Transition Time Server model
(Section 3.3.3) via Generic Default Transition Time messages (Section 3.2.3).
The following table illustrates the complete structure of elements, procedures, and messages used by
the model. At least one message listed in the table shall be supported by this model.
SIG
Element Procedure Messages Rx Tx
Model ID
Generic Default Transition Time Get O
Generic Default Transition Time Set O
Generic Default
Main 0x1005 Generic Default Transition Time Set
Transition Time O
Unacknowledged
Generic Default Transition Time Status C.1
C.1: If any of the messages: Generic Default Transition Time Get, Generic Default Transition Time
Set are supported, the Generic Default Transition Time Status message shall also be supported;
otherwise support for the Generic Default Transition Time Status message is optional.
Table 3.118: Generic Default Transition Time Client elements and messages
3.4.3.2.2 Sending Generic Default Transition Time Set / Generic Default Transition
Time Unacknowledged messages
To set the Generic Default Transition Time state of a Generic Default Transition Time Server with
acknowledgment, a Generic Default Transition Time Client shall send a Generic Default Transition
Time Set message, setting the Transition Time field to the required value. The response is a Generic
Default Transition Time Status message (see Section 3.4.3.2.3).
To set the Generic Default Transition Time state of a Generic Default Transition Time Server without
acknowledgment, a Generic Default Transition Time Client shall send a Generic Default Transition
Time Set Unacknowledged message, setting the Transition Time field to the required value.
The choice to use a Generic Default Transition Time Set message or a Generic Default Transition
Time Set Unacknowledged message is an implementation detail.
3.4.4.1 Description
The Generic Power OnOff Client model extends the Generic OnOff Client model.
The model may operate on states defined by the Generic Power OnOff Server model (see Section
3.3.4) via Generic Default Transition Time messages (see Section 3.2.3) and Generic OnPowerUp
messages (see Section 3.2.4).
The following table illustrates the complete structure of elements, procedures, and messages used by
the model. At least one message listed in the table shall be supported by this model.
SIG
Element Procedure Messages Rx Tx
Model ID
Generic OnOff Get O
Generic OnOff Set O
0x1001 Generic OnOff
Generic OnOff Set Unacknowledged O
Main
Generic OnOff Status C.1
Generic Generic OnPowerUp Get O
0x1008
OnPowerUp Generic OnPowerUp Set O
SIG
Element Procedure Messages Rx Tx
Model ID
Generic OnPowerUp Set
O
Unacknowledged
Generic OnPowerUp Status C.2
C.1: If any of the messages: Generic OnOff Get, Generic OnOff Set are supported, the Generic OnOff
Status message shall also be supported; otherwise support for the Generic OnOff Status message is
optional.
C.2: If any of the messages: Generic OnPowerUp Get, Generic OnPowerUp Set are supported, the
Generic OnPowerUp Status message shall also be supported; otherwise support for the Generic
OnPowerUp Status message is optional.
Table 3.119: Generic OnOff Client elements and messages
To set the Generic OnPowerUp state of a Generic Power OnOff Server without acknowledgment, a
Generic OnOff Client shall send a Generic OnPowerUp Set Unacknowledged message, setting the
OnPowerUp field to the required value.
The choice to use a Generic OnPowerUp Set or Generic OnPowerUp Set Unacknowledged message
is an implementation detail.
3.4.5.1 Description
The Generic Power Level Client model extends the Generic Power OnOff Client model (see
Section 3.4.4).
This model may be used to represent an element that can control an element of a peer device that
exposes a Generic Power Level Server model (see Section 3.3.6) via Generic Power Level messages
(see Section 3.2.5).
The following table illustrates the complete structure of elements, procedures, and messages used by
the model. At least one message listed in the table shall be supported by this model.
SIG
Element Procedure Messages Rx Tx
Model ID
Generic Power Level Get O
Generic Power Level Set O
Generic Power
Actual Generic Power Level Set
O
Unacknowledged
Generic Power Level Status C.1
Generic Power Generic Power Last Get O
Last Generic Power Last Status C.2
Generic Power Default Get O
Main 0x100B Generic Power Default Set O
Generic Power
Default Generic Power Default Set
O
Unacknowledged
Generic Power Default Status C.3
Generic Power Range Get O
Generic Power Range Set O
Generic Power
Range Generic Power Range Set
O
Unacknowledged
Generic Power Range Status C.4
C.1: If any of the messages: Generic Power Level Get, Generic Power Level Set are supported, the
Generic Power Level Status message shall also be supported; otherwise support for the Generic
Power Level Status message is optional.
C.2: If the Generic Power Last Get message is supported, the Generic Power Last Status message
shall also be supported; otherwise support for the Generic Power Last Status message is optional.
C.3: If any of the messages: Generic Power Default Get, Generic Power Default Set are supported,
the Generic Power Default Status message shall also be supported; otherwise support for the Generic
Power Default Status message is optional.
C.4: If any of the messages: Generic Power Range Get, Generic Power Range Set are supported, the
Generic Power Range Status message shall also be supported; otherwise support for the Generic
Power Range Status message is optional.
Table 3.120: Generic Power Level Client elements and messages
3.4.5.2.2 Sending Generic Power Level Set / Generic Power Level Set
Unacknowledged messages
To set the Generic Power Actual state of a Generic Power Level Server with acknowledgment, a
Generic Power Level Client shall send a Generic Power Level Set message, setting the Power field to
the required value and the TID field to the least recently used value. The response is a Generic Power
Level Status message (see Section 3.4.5.2.3).
To set the Generic Power Actual state of a Generic Power Level Server without acknowledgment, a
Generic Power Level Client shall send a Generic Power Level Set Unacknowledged message, setting
the Power field to the required value and the TID field to the least recently used value.
Both messages may optionally include a Transition Time field indicating the transition time to the
target state. If present, the Transition Time field value shall be used as the time for transition to the
target state. If the Transition Time field is not present and the Generic Default Transition Time state
(see Section 3.1.3) is supported, the Generic Default Transition Time state shall be used. Otherwise
the transition shall be instantaneous.
If a Transition Time is included, a Delay field shall be included indicating the message execution
delay, which represents the time interval between when a model received the message and when the
associated model behaviors were executed.
To retransmit the message, a Generic Power Level Client shall use the same value for the TID field
as in the previously sent message, within 6 seconds from sending that message.
An element, typically as a result of a user interaction, may send a Generic Power Level Set message
at any time. The choice to use a Generic Power Level Set message or a Generic Power Level Set
Unacknowledged message is an implementation detail.
If the Generic Power Level Server is in a process of changing the Generic Power Actual state, the
Generic Power Level Client can determine the target Generic Power Actual state, which is indicated
by the Target Power field of the message, as well as the remaining transition time, which is indicated
by the Remaining Time field of the message.
3.4.5.4.2 Sending Generic Power Default Set / Generic Power Default Set
Unacknowledged messages
To set the Generic Power Default state of a Generic Power Level Server with acknowledgment, a
Generic Power Level Client shall send a Generic Power Default Set message, setting the Power field
to the required value. The response is a Generic Power Default Status message (see Section
3.4.5.4.3).
To set the Generic Power Default state of a Generic Power Level Server without acknowledgment, a
Generic Power Level Client shall send a Generic Power Default Set Unacknowledged message,
setting the Power field to the required value.
The choice to use a Generic Power Default Set message or a Generic Power Default Set
Unacknowledged message is an implementation detail.
3.4.5.5.2 Sending Generic Power Range Set / Generic Power Range Set
Unacknowledged messages
To set the Generic Power Range state of a Generic Power Level Setup Server with acknowledgment,
a Generic Power Level Client shall send a Generic Power Range Set message, setting the Range Min
and Range Max fields to the required values. The response is a Generic Power Range Status
message (see Section 3.4.5.5.3).
To set the Generic Power Range state of a Generic Power Level Setup Server without
acknowledgment, a Generic Power Level Client shall send a Generic Power Range Set
Unacknowledged message, setting the Range Min and Range Max fields to the required values.
The choice to use a Generic Power Range Set or a Generic Power Range Set Unacknowledged
message is an implementation detail.
An element, typically as a result of user interaction, may send a Generic Power Range Set message
or a Generic Power Range Set Unacknowledged message at any time.
3.4.6.1 Description
The Generic Battery Client model is a root model (i.e., it does not extend any other models).
This model may be used to represent an element that can monitor another element of a peer device
that exposes a Generic Battery Server model (see Section 3.3.8) via Generic Battery messages (see
Section 3.2.6). A typical use case is an information display collecting and displaying status information
received from battery powered network nodes.
The following table illustrates the complete structure of elements, procedures, and messages used by
the model. At least one message listed in the table shall be supported by this model.
SIG
Element Procedure Messages Rx Tx
Model ID
Main 0x100D Generic Battery Generic Battery Get O
SIG
Element Procedure Messages Rx Tx
Model ID
Generic Battery Status C.1
C.1: If the Generic Battery Get message is supported, the Generic Battery Status message shall also
be supported; otherwise support for the Generic Battery Status message is optional.
Table 3.121: Generic Battery Client elements and messages
3.4.7.1 Description
The Generic Location Client model is a root model (i.e., it does not extend any other models).
This model may be used to represent an element that can control an element of a peer device that
exposes a Generic Location Server model (see Section 3.3.9) via Generic Location messages (see
Section 3.2.7).
The following table illustrates the complete structure of elements, procedures, and messages used by
the model. At least one message listed in the table shall be supported by this model.
SIG
Element Procedure Messages Rx Tx
Model ID
Generic Location Global Get O
Generic Location Global Set O
Generic Location Global Set
O
Unacknowledged
Generic Location Global Status C.1
Main 0x1010 Generic Location
Generic Location Local Get O
Generic Location Local Set O
Generic Location Local Set
O
Unacknowledged
Generic Location Local Status C.2
C.1: If any of the messages: Generic Location Global Get, Generic Location Global Set are
supported, the Generic Location Global Status message shall also be supported; otherwise support
for the Generic Location Global Status message is optional.
C.2: If any of the messages: Generic Location Local Get, Generic Location Local Set are supported,
the Generic Location Local Status message shall also be supported; otherwise support for the
Generic Location Local Status message is optional.
Table 3.122: Generic Location Client elements and messages
3.4.7.2.2 Sending Generic Location Global Set / Generic Location Global Set
Unacknowledged messages
To set the Global Latitude, Global Longitude, and Global Altitude fields of the Generic Location state
of a Generic Location Server with acknowledgment, a Generic Location Client shall send a Generic
Location Global Set message, setting the Global Latitude, Global Longitude, and Global Altitude fields
to the required values. The response is a Generic Location Global Status message (see Section
3.4.7.2.3).
To set the Global Latitude, Global Longitude, and Global Altitude fields of the Generic Location state
of a Generic Location Server without acknowledgment, a Generic Location Client shall send a
Generic Location Global Set Unacknowledged message, setting the Global Latitude, Global
Longitude, and Global Altitude fields to the required values.
3.4.7.3.2 Sending Generic Location Local Set / Generic Location Local Set
Unacknowledged messages
To set the Local North, Local East, Floor Number, Local Altitude, and Uncertainty fields of the Generic
Location state of a Generic Location Server with acknowledgment, a Generic Location Client shall
send a Generic Location Local Set message, setting the Local North, Local East, Floor Number, Local
Altitude, and Uncertainty fields to the required values. The response is a Generic Location Global
Status message (see Section 3.4.7.3.3).
To set the Local North, Local East, Floor Number, Local Altitude, and Uncertainty fields of the Generic
Location state of a Generic Location Server without acknowledgment, a Generic Location Client shall
send a Generic Location Local Set Unacknowledged message, setting the Local North, Local East,
Floor Number, Local Altitude, and Uncertainty fields to the required values.
The choice to use a Generic Location Local Set message or a Generic Location Local Set
Unacknowledged message is an implementation detail.
Generic Location state of a Generic Location Server, which are indicated by the Local North, Local
East, Floor Number, Local Altitude, and Uncertainty fields of the message.
3.4.8.1 Description
The Generic Property Client model is a root model (i.e., it does not extend any other models).
This model may be used to represent an element that can consume the state of an element of a peer
device that exposes a Generic User Property Server model (see Section 3.3.11) or a Generic Admin
Property Server model (see Section 3.3.12) via Generic Property messages (see Section 3.2.8).
The following table illustrates the complete structure of elements, procedures, and messages used by
the model. At least one message listed in the table shall be supported by this model.
SIG
Element Procedure Messages Rx Tx
Model ID
Generic User Properties Get O
Generic User Properties Status C.1
Generic User Property Get O
Generic User
Generic User Property Set O
Generic User Property Set Unacknowledged O
Generic User Property Status C.2
Generic Admin Properties Get O
Generic Admin Properties Status C.3
Generic Admin Property Get O
Generic Admin Generic Admin Property Set O
Main 0x1015 Generic Admin Property Set
O
Unacknowledged
Generic Admin Property Status C.4
Generic Manufacturer Properties Get O
Generic Manufacturer Properties Status C.5
Generic Manufacturer Property Get O
Generic
Manufacturer Generic Manufacturer Property Set O
Generic Manufacturer Property Set
O
Unacknowledged
Generic Manufacturer Property Status C.6
Generic Client Properties Get O
Generic Client
Generic Client Properties Status C.7
C.1: If the Generic User Properties Get message is supported, the Generic User Properties Status
message shall also be supported; otherwise support for the Generic User Properties Status message
is optional.
C.2: If any of the messages: Generic User Property Get, Generic User Property Set are supported,
the Generic User Property Status message shall also be supported; otherwise support for the Generic
User Property Status message is optional.
C.3: If the Generic Admin Properties Get message is supported, the Generic Admin Properties Status
message shall also be supported; otherwise support for the Generic Admin Properties Status
message is optional.
C.4: If any of the messages: Generic Admin Property Get, Generic Admin Property Set are supported,
the Generic Admin Property Status message shall also be supported; otherwise support for the
Generic Admin Property Status message is optional.
C.5: If the Generic Manufacturer Properties Get message is supported, the Generic Manufacturer
Properties Status message shall also be supported; otherwise support for the Generic Manufacturer
Properties Status message is optional.
C.6: If any of the messages: Generic Manufacturer Property Get, Generic Manufacturer Property Set
are supported, the Generic Manufacturer Property Status message shall also be supported; otherwise
support for the Generic Manufacturer Property Status message is optional.
C.7: If the Generic Client Properties Get message is supported, the Generic Client Properties Status
message shall also be supported; otherwise support for the Generic Client Properties Status message
is optional.
Table 3.123: Generic Property Client elements and messages
3.4.8.2.4 Sending Generic User Property Set / Generic User Property Set
Unacknowledged messages
To set the Generic User Property state of a Generic User Property Sever with acknowledgment, a
Generic Property Client shall send a Generic User Property Set message, setting the User Property
ID field to the value identifying the property and the User Property Value field to the required value.
The response is a Generic User Property Status message (see Section 3.4.8.2.5).
To set the Generic User Property state of a Generic User Property Setting Sever without
acknowledgment, a Generic Property Client shall send a Generic User Property Set Unacknowledged
message, setting the User Property ID field to the value identifying the device property and the User
Property Value field to the required value.
The choice to use a Generic User Property Set message or a Generic User Property Set
Unacknowledged message is an implementation detail.
3.4.8.3.4 Sending Generic Admin Property Set / Generic Admin Property Set
Unacknowledged messages
To set the Generic Admin Property state of a Generic Admin Property Sever with acknowledgment, a
Generic Property Client shall send a Generic Admin Property Set message, setting the Admin
Property ID field to the value identifying the device property, and setting the Admin User Access field
and the Admin Property Value field to the required values. The response is a Generic Admin Property
Status message (see Section 3.4.8.3.5).
To set the Generic Admin Property state of a Generic Admin Property Sever without
acknowledgment, a Generic Property Client shall send a Generic Admin Property Set
Unacknowledged message, setting the Admin Property ID field to the value identifying the device
property and setting the Admin User Access field and the Admin Property Value field to the required
values.
The choice to use a Generic Admin Property Set message or a Generic Admin User Property Set
Unacknowledged message is an implementation detail.
To set the Generic Manufacturer Property state of a Generic Manufacturer Property Sever without
acknowledgment, a Generic Property Client shall send a Generic Manufacturer Property Set
Unacknowledged message, setting the Manufacturer Property ID field to the value identifying the
device property and setting the Manufacturer User Access field to the required value.
The choice to use a Generic Manufacturer Property Set message or a Generic Manufacturer User
Property Set Unacknowledged message is an implementation detail.
The following types of relations are illustrated: interactions via messages between client models
(represented by blue rectangles) and server models (represented by dark blue rectangles), hierarchy
of models extending other models, server models serving states (represented by red rounded
rectangles), and bindings between states.
OnOff OnOff
Client Server OnOff
0x1001 0x1000
Level Level
Client Server Level
0x1003 0x1002
Power OnOff
Setup Server
0x1007
Power Actual
Power Level Power Level
Client Server
0x100B 0x1009 Power Last
Power Default
Power Range
Power Level
Setup Server
0x100A
Location Location
Client Server Location
0x1010 0x100E
Location
Setup Server
0x100F
Battery Battery
Client Server Battery
0x100D 0x100C
Property User
Client Property Server User Property
0x1015 0x1013
Admin
Property Server Admin Property
0x1011
Manufacturer
Manufacturer
Property Server
Property
0x1012
Client
Property Server Client Property
0x1014
4 Sensors
This section of the specification defines a standard way of interfacing with sensors. This allows any
device to expose any set of sensors that can be used without having specific states, messages, and
models defined for each application area.
Multiple instances of the Sensor states may be present within the same model, provided that each
instance has a unique value of the Sensor Property ID (see Section 4.1.1.1) to allow the instances to
be differentiated. This allows a sensor to collect and send multiple measurements (e.g., a room
sensor may send temperature, humidity, and occupancy information in a single message) or to report
its readings in more than one way (e.g., a temperature sensor may provide both instantaneous and
daily average readings). Such sensors are known as multisensors.
Note: The number of sensors within a multisensor is limited by the size of the message payload
for the Sensor Descriptor Status message. A single Sensor Descriptor may be sent using
a single Unsegmented Access message. Using Segmentation and Reassembly (SAR), up
to 38 Sensor Descriptor states may be sent.
Size
Field Notes
(bits)
Sensor Property ID 16 Defined in Section 4.1.1.1.
Sensor Positive Tolerance 12 Defined in Section 4.1.1.2.
Sensor Negative Tolerance 12 Defined in Section 4.1.1.3.
Sensor Sampling Function 8 Defined in Section 4.1.1.4.
Sensor Measurement Period 8 Defined in Section 4.1.1.5.
Sensor Update Interval 8 Defined in Section 4.1.1.6.
Table 4.1: Sensor Descriptor states
The values for the field are defined in the following table.
Value Meaning
0x0000 Prohibited
0x0001–0xFFFF Identifier of a device property (see Section 2.1)
Table 4.2: Sensor Property ID field values
The values for the state are defined in the following table.
Value Description
0x000 Unspecified
0x001–0xFFF The positive tolerance of the sensor. See Note below.
Table 4.3: Sensor Positive Tolerance states
Note: The magnitude of a possible positive error associated with the reported data (expressed
as a percentage) is derived using the following formula:
𝑃𝑜𝑠𝑖𝑡𝑖𝑣𝑒 𝑇𝑜𝑙𝑒𝑟𝑎𝑛𝑐𝑒
𝑃𝑜𝑠𝑠𝑖𝑏𝑙𝑒 𝑃𝑜𝑠𝑖𝑡𝑖𝑣𝑒 𝐸𝑟𝑟𝑜𝑟 [%] = 100 [%] ∗
4095
The values for the state are defined in the following table.
Value Description
0x000 Unspecified
0x001–0xFFF The negative tolerance of the sensor. See Note below.
Table 4.4: Sensor Negative Tolerance states
Note: The magnitude of a possible negative error associated with the reported data (expressed
as a percentage) is derived using the following formula:
𝑁𝑒𝑔𝑎𝑡𝑖𝑣𝑒 𝑇𝑜𝑙𝑒𝑟𝑎𝑛𝑐𝑒
𝑃𝑜𝑠𝑠𝑖𝑏𝑙𝑒 𝑁𝑒𝑔𝑎𝑡𝑖𝑣𝑒 𝐸𝑟𝑟𝑜𝑟 [%] = 100 [%] ∗
4095
For cases in which the sampling function is not made available, a special number has been assigned
to indicate the value is Unspecified. The values for the state are defined in the following table.
Value Description
0x00 Unspecified
0x01 Instantaneous
Value Description
0x02 Arithmetic Mean
0x03 RMS
0x04 Maximum
0x05 Minimum
0x06 Accumulated. (See note below.)
0x07 Count. (See note below.)
0x08–0xFF Reserved for Future Use
Table 4.5: Sensor sampling functions
Note: The Count sampling function can be used for a discrete variable such as the number of
lightning discharges detected by a lightning detector. The Sensor Measurement Period
(see Section 4.1.1.5) in this case would state the length of the period over which a counted
number of lightning strikes was detected. The Accumulated sampling function is intended
to represent a cumulative moving average. The measurement value would be a
cumulative moving average value that was continually updated with a frequency indicated
by the Sensor Update Interval (see Section 4.1.1.6).
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 is not applicable, a
special number has been assigned to indicate Not Applicable. The values for the state are defined in
the following table.
For those cases where a value for the Sensor Update Interval is not available or is not applicable, a
special number has been assigned to indicate Not Applicable. The values for the state are defined in
the following table.
For example, an occupancy sensor may have a “sensitivity” setting that controls the sensitivity of the
sensor. Sensitivity may be adjusted to prevent small animals from triggering the sensor.
Size
Field Notes
(octets)
Sensor Property ID 2 Property ID of a sensor
Sensor Setting Property ID 2 Property ID of a setting within a sensor
Sensor Setting Access 1 Read/Write access rights for the setting
Sensor Setting Raw variable Raw value of a setting within a sensor
Table 4.8: Sensor Setting state
Multiple Sensor Setting states may be present for each sensor. The Sensor Setting Property ID
values shall be unique for each Sensor Property ID that identifies a sensor within an element.
The values for the field are defined in the following table.
Value Meaning
0x0000 Prohibited
0x0001–0xFFFF Identifier of a device property (see Section 2.1)
Table 4.9: Sensor Property ID field values
The values for the field are defined in the following table.
Value Meaning
0x0000 Prohibited
0x0001–0xFFFF Identifier of a device property (see Section 2.1)
Table 4.10: Sensor Setting Property ID field values
Value Meaning
0x00 Prohibited
0x02 Prohibited
If the Fast Cadence High value is equal or higher than the Fast Cadence Low value, and the
measured value is within the closed interval of [Fast Cadence Low, Fast Cadence High], the Sensor
Status messages are published more frequently. The messages shall be published every Publish
Period (configured for the model) divided by the Fast Cadence Period Divisor state (see Section
4.1.3.1).
If the Fast Cadence High value is lower than the Fast Cadence Low value, and the measured value is
lower than the Fast Cadence High value or is higher than the Fast Cadence Low value, the Sensor
Status messages are published more frequently. The messages shall be published every Publish
Period (configured for the model) divided by the Fast Cadence Period Divisor state (see Section
4.1.3.1).
Figure 4.1 illustrates how the cadence of sent messages varies based on a measured quantity. If the
measured value is within the range defined by the Fast Cadence High and the Fast Cadence Low
values, messages are sent more frequently. While measured values exceed the Fast Cadence High
value or when they fall below the Fast Cadence Low value, messages are sent less frequently until
the measured value is again within the specified range.
Figure 4.1: Publishing of Sensor Status messages at a fast cadence within a certain range of values
If the change of the measured value is more rapid, the Sensor Status messages may be published
more frequently. A value represented by the Fast Cadence Period Divisor state (see Section 4.1.3.1)
is used as a divider for the Publish Period (configured for the model) if the change exceeds the
conditions determined by the Status Trigger Type (see Section 4.1.3.2), Status Trigger Delta Down
(see Section 4.1.3.3), and the Status Trigger Delta Up (see Section 4.1.3.4).
Figure 4.2 illustrates sending Sensor Status messages triggered by the measured quantity change
exceeding the configured Status Trigger Delta Down value.
Figure 4.2: Publishing of Sensor Status messages triggered by changes of the measured quantity
Size
Field Notes
(bits)
Sensor Property 16 Defined in Section 4.1.1.1.
Fast Cadence Period Divisor for the Publish Period (see Mesh Profile specification
7
Divisor [2]).
Status Trigger Type 1 Defines the unit and format of the Status Trigger Delta fields.
Status Trigger Delta Down variable Delta down value that triggers a status message.
Status Trigger Delta Up variable Delta up value that triggers a status message.
Status Min Interval 8 Minimum interval between two consecutive Status messages.
Fast Cadence Low variable Low value for the fast cadence range.
Fast Cadence High variable High value for the fast cadence range.
Table 4.12: Sensor Cadence states
The Sensor Cadence state may be not supported by sensors based on device properties referencing
non- scalar characteristics such as histograms or composite characteristics.
The valid range for the Fast Cadence Period Divisor state is 0–15 and other values are Prohibited.
• The value of 0b0 means that the format shall be defined by the Format Type of the
characteristic that the Sensor Property ID state references (see Section 4.1.1.1).
• The value of 0b1 means that the unit is «unitless», the format type is 0x06 (uint16), and the
value is represented as a percentage change with a resolution of 0.01 percent.
• If the value of the Status Trigger Type field is 0b0, the setting is calculated as defined by the
Sensor Property ID state (see Section 4.1.1.1).
• If the value of the Status Trigger Type field is 0b1, the setting is calculated using the following
formula:
• If the value of the Status Trigger Type field is 0b0, the setting is calculated as defined by the
Sensor Property ID state (see Section 4.1.1.1).
• If the value of the Status Trigger Type field is 0b1, the setting is calculated using the following
formula:
The valid range for the Status Min Interval is 0–26 and other values are Prohibited.
Note: The Fast Cadence Low may be set to a value higher than the Fast Cadence High. In such
cases, the increased cadence will occur outside the range (Fast Cadence High, Fast
Cadence Low).
Note: The Fast Cadence High may be set to a value lower than the Fast Cadence Low. In such
cases, the increased cadence will occur outside the range (Fast Cadence High, Fast
Cadence Low).
The Sensor Data state is a sequence of one or more pairs of Sensor Property ID and Raw Value
fields, with each Raw Value field size and representation defined by the characteristics referenced by
the Sensor Property ID (see Section 2.1).
When the Sensor Property refers multiple characteristics or a composite characteristic (i.e., a
characteristic that contains other characteristics), the associated Raw Value field is a concatenated
sequence of all formats defined by all characteristics.
The pairs are organized in ascending order based on the value of the Property ID n field.
Note: The ascending order provides backward compatibility when new numbers for device
properties are assigned. A client may stop parsing the structure on the first device property
that it does not recognize.
Size
Field Notes
(octets)
Property ID 1 2 ID of the 1st device property of the sensor
Raw Value field with a size and representation defined by the
Raw Value 1 variable
1st device property
Property ID 2 2 ID of the 2nd device property of a sensor
Size
Field Notes
(octets)
Raw Value field with a size and representation defined by the
Raw Value 2 variable
2nd property
…
Property ID n 2 ID of the nth device property of the sensor
Raw Value field with a size and representation defined by the
Raw Value n variable
nth device property
Table 4.13: Sensor Data state
The maximum number of pairs of Property ID and Raw Value fields within a multisensor depends on
their size. The combined size of the Sensor Data state shall not exceed the message payload size.
Size
Field Notes
(octets)
Sensor Property ID 2 Property describing the data series of the sensor
Raw value representing the left corner of a column on the X
Sensor Raw Value X variable
axis
Sensor Column Width variable Raw value representing the width of the column
Sensor Raw Value Y variable Raw value representing the height of the column on the Y axis
Table 4.14 Sensor Series Column states
Columns
Y Axis
X Axis
Figure 4.3: Sensor Series Column example
The values for the field are defined in the following table.
Value Meaning
0x0000 Prohibited
0x0001–0xFFFF Identifier of a device property (see Section 2.1)
Table 4.15: Sensor Property ID field values
Note: Values outside the bins defined by a Sensor Property are not included. For example, if the
histogram is defined as 3 bins representing “lamp operating hours in a given temperature
range” and the bins are [40,60), [60, 80), and [80,100], then any hours outside that
[40, 100] range would not be included.
The response to a Sensor Descriptor Get message is a Sensor Descriptor Status message.
Size
Field Notes
(octets)
Property ID 2 Property ID for the sensor (Optional)
Table 4.16: Sensor Descriptor Get message parameters
If present, the Property ID field identifies a Sensor Property ID state of an element (see Section
4.1.1.1).
Size
Field Notes
(octets)
Descriptor 8*N or 2 Sequence of 8-octet Sensor Descriptors (Optional)
Table 4.17: Sensor Descriptor Status message parameters
The Descriptor field shall contain a sequence of 0 or more Sensor Descriptor states as defined in
Section 4.1.1.
When the message is a response to a Sensor Descriptor Get message that identifies a sensor
descriptor property that does not exist on the element, the Descriptor field shall contain the requested
Property ID value and the other fields of the Sensor Descriptor state shall be omitted.
The response to the Sensor Cadence Get message is a Sensor Cadence Status message.
Size
Field Notes
(octets)
Property ID 2 Property ID for the sensor.
Table 4.18: Sensor Cadence Get message parameters
The Property ID field identifies a Sensor Property ID state of an element (see Section 4.1.1.1).
The response to the Sensor Cadence Set message is a Sensor Cadence Status message.
Size
Field Notes
(bits)
Property ID 16 Property ID for the sensor.
Fast Cadence Period Divisor for the Publish Period (see Mesh Profile specification
7
Divisor [2]).
Status Trigger Type 1 Defines the unit and format of the Status Trigger Delta fields.
Status Trigger Delta Down variable Delta down value that triggers a status message.
Status Trigger Delta Up variable Delta up value that triggers a status message.
Status Min Interval 8 Minimum interval between two consecutive Status messages.
Fast Cadence Low variable Low value for the fast cadence range.
Fast Cadence High variable High value for the fast cadence range.
Table 4.19: Sensor Cadence Set message parameters
The Property ID field identifies a Sensor Property ID state of an element (see Section 4.1.1.1).
The Fast Cadence Period Divisor field identifies a Fast Cadence Period Divisor state of an element
(see Section 4.1.3.1).
The Status Trigger Type field identifies a Status Trigger Type state of an element (see
Section 4.1.3.2).
The Status Trigger Delta Down field identifies a Status Trigger Delta Down state of an element (see
Section 4.1.3.3).
The Status Trigger Delta Up field identifies a Status Trigger Delta Up state of an element (see Section
4.1.3.4).
The Status Min Interval field identifies a Status Min Interval state of an element (see Section 4.1.3.5).
The Fast Cadence Low field identifies a Fast Cadence Low state of an element (see Section 4.1.3.6).
The Fast Cadence High field identifies a Fast Cadence High state of an element (see
Section 4.1.3.7).
Size
Field Notes
(bits)
Property ID 16 Property for the sensor.
Fast Cadence Period Divisor for the Publish Period (see Mesh Profile
7
Divisor specification [2]).
Defines the unit and format of the Status Trigger Delta
Status Trigger Type 1
fields.
Status Trigger Delta
variable Delta down value that triggers a status message.
Down
Status Trigger Delta Up variable Delta up value that triggers a status message.
Minimum interval between two consecutive Status
Status Min Interval 8
messages.
Fast Cadence Low variable Low value for the fast cadence range.
Fast Cadence High variable High value for the fast cadence range.
Table 4.20: Sensor Cadence Set Unacknowledged message parameters
The Property ID field identifies a Sensor Property ID state of an element (see Section 4.1.1.1).
The Fast Cadence Period Divisor field identifies a Fast Cadence Period Divisor state of an element
(see Section 4.1.3.1).
The Status Trigger Type field identifies a Status Trigger Type state of an element (see
Section 4.1.3.2).
The Status Trigger Delta Down field identifies a Status Trigger Delta Down state of an element (see
Section 4.1.3.3).
The Status Trigger Delta Up field identifies a Status Trigger Delta Up state of an element (see Section
4.1.3.4).
The Status Min Interval field identifies a Status Min Interval state of an element (see Section 4.1.3.5).
The Fast Cadence Low field identifies a Fast Cadence Low state of an element (see Section 4.1.3.6).
The Fast Cadence High field identifies a Fast Cadence High state of an element (see
Section 4.1.3.7).
Size
Field Notes
(bits)
Property ID 16 Property for the sensor.
Fast Cadence Period Divisor for the Publish Period (see Mesh Profile specification
7
Divisor [2]). (Optional)
Defines the unit and format of the Status Trigger Delta fields.
Status Trigger Type 1
(C.1)
Status Trigger Delta
variable Delta down value that triggers a status message. (C.1)
Down
Status Trigger Delta Up variable Delta up value that triggers a status message. (C.1)
Minimum interval between two consecutive status
Status Min Interval 8
messages. (C.1)
Fast Cadence Low variable Low value for the fast cadence range. (C.1)
Fast Cadence High variable High value for the fast cadence range. (C.1)
C.1: If the Fast Cadence Period Divisor field is present, the Status Trigger Type, Status Trigger Delta
Down, Status Trigger Delta Up, Status Min Interval, Fast Cadence Low, and Fast Cadence High fields
shall also be present; otherwise these fields shall not be present.
Table 4.21: Sensor Cadence Status message parameters
The Property ID field identifies a Sensor Property ID state of an element (see Section 4.1.1.1).
The Fast Cadence Period Divisor field identifies a Fast Cadence Period Divisor state of an element
(see Section 4.1.3.1).
The Status Trigger Type field identifies a Status Trigger Type state of an element (see
Section 4.1.3.2).
The Status Trigger Delta Down field identifies a Status Trigger Delta Down state of an element (see
Section 4.1.3.3).
The Status Trigger Delta Up field identifies a Status Trigger Delta Up state of an element (see Section
4.1.3.4).
The Status Min Interval field identifies a Status Min Interval state of an element (see Section 4.1.3.5).
The Fast Cadence Low field identifies a Fast Cadence Low state of an element (see Section 4.1.3.6).
The Fast Cadence High field identifies a Fast Cadence High state of an element (see
Section 4.1.3.7).
The response to the Sensor Settings Get message is a Sensor Settings Status message (see
Section 4.2.8).
Size
Field Notes
(octets)
Sensor Property ID 2 Property ID identifying a sensor.
Table 4.22: Sensor Settings Get message parameters
The Sensor Property ID field identifies a Sensor Property ID state of an element (see Section 4.1.1.1).
The message is sent as a response to the Sensor Settings Get message or is sent as an unsolicited
message.
Size
Field Notes
(octets)
Sensor Property ID 2 Property ID identifying a sensor.
A sequence of N Sensor Setting Property IDs identifying
Sensor Setting Property IDs 2*N settings within a sensor, where N is the number of property
IDs included in the message. (Optional)
Table 4.23: Sensor Setting Status message parameters
The Sensor Property ID field identifies a Sensor Property ID state of an element (see Section 4.1.1.1).
The Sensor Setting Property IDs field contains a sequence of all Sensor Setting Property ID states of
a sensor (see Section 4.1.2).
The response to the Sensor Setting Get message is a Sensor Setting Status message.
Size
Field Notes
(octets)
Sensor Property ID 2 Property ID identifying a sensor.
Sensor Setting Property ID 2 Setting Property ID identifying a setting within a sensor.
Table 4.24: Sensor Setting Get message parameters
The Sensor Property ID field identifies a Sensor Property ID state of an element (see Section 4.1.1.1).
The Sensor Setting Property ID field identifies a Sensor Setting Property ID state of a sensor (see
Section 4.1.2).
The response to the Sensor Setting Set message is a Sensor Setting Status message.
Size
Field Notes
(octets)
Sensor Property ID 2 Property ID identifying a sensor.
Sensor Setting Property ID 2 Setting ID identifying a setting within a sensor.
Sensor Setting Raw variable Raw value for the setting.
Table 4.25: Sensor Setting Set message parameters
The Sensor Property ID field identifies a Sensor Property ID state of an element (see Section 4.1.2.1).
The Sensor Setting Property ID field identifies a Sensor Setting Property ID state of a sensor (see
Section 4.1.2.2).
The Sensor Setting Raw field identifies a Sensor Setting Raw state of a sensor (see Section 4.1.2.4).
Size
Field Notes
(octets)
Sensor Property ID 2 Property ID identifying a sensor.
Sensor Setting Property ID 2 Setting ID identifying a setting within a sensor.
Sensor Setting Raw variable Raw value for the setting.
Table 4.26: Sensor Setting Set Unacknowledged message parameters
The Sensor Property ID field identifies a Sensor Property ID state of an element (see Section 4.1.2.1).
The Sensor Setting Property ID field identifies a Sensor Setting Property ID state of a sensor (see
Section 4.1.2.2).
The Sensor Setting Raw field identifies a Sensor Setting Raw state of a sensor (see Section 4.1.2).
The message is sent as a response to the Sensor Setting Get and Sensor Setting Set messages or
sent as an unsolicited message.
Size
Field Notes
(octets)
Sensor Property ID 2 Property ID identifying a sensor.
Sensor Setting Property ID 2 Setting ID identifying a setting within a sensor.
Sensor Setting Access 1 Read / Write access rights for the setting. (Optional)
Sensor Setting Raw variable Raw value for the setting. (C.1)
C.1: If the Sensor Setting Access field is present, the Sensor Setting Raw field shall also be present;
otherwise this field shall not be present.
Table 4.27: Sensor Setting Status message parameters
The Sensor Property ID field identifies a Sensor Property ID state of an element (see Section 4.1.2.1).
The Sensor Setting Property ID field identifies a Sensor Setting Property ID state of a sensor (see
Section 4.1.2.2).
The Sensor Setting Access field identifies a Sensor Setting Access state of a sensor (see
Section 4.1.2.3).
The Sensor Setting Raw field identifies a Sensor Setting Raw state of a sensor (see Section 4.1.2.4).
Size
Field Notes
(octets)
Property ID 2 Property for the sensor. (Optional)
Table 4.28: Sensor Get message parameters
If present, the Property ID field identifies a Sensor Property ID state of an element (see
Section 4.1.1.1).
The message contains a Sensor Data state, defined by the Sensor Descriptor state (see
Section 4.1.1).
Size
Field Notes
(octets)
Marshalled Sensor Data variable The Sensor Data state. (Optional)
Table 4.29: Sensor Status message parameters
The message shall be sent as a response to the Sensor Get message (see Section 4.2.13) or as an
unsolicited message.
The Marshalled Sensor Data field represents the marshalled Sensor Data state (see Section 4.1.4).
Special marshalling is used in order to facilitate forward compatibility and to optimize the payload of
the message, as illustrated by the figure below.
The format of the Marshalled Sensor Data field is shown in the table below.
Size
Field Notes
(octets)
MPID 1 2 or 3 TLV of the 1st device property of the sensor.
Raw Value field with a size and representation defined by the 1st device
Raw Value 1 variable
property.
MPID 2 2 or 3 TLV of the 2nd device property of a sensor.
Raw Value field with a size and representation defined by the 2 nd device
Raw Value 2 variable
property.
…
MPID n 2 or 3 TLV of the nth device property of the sensor.
Raw Value field with a size and representation defined by the n th device
Raw Value n variable
property.
Table 4.30: Marshalled Sensor Data field
The Format field is a 1-bit bit field that identifies the format of the Length and Property ID fields, as
defined by the following table:
Value Description
0b0 Format A
0b1 Format B
Table 4.31: Sensor Data Format values
Format A is defined as a 4-bit Length field and an 11-bit Property ID field, as defined in Table 4.32.
This format may be used for Property Values that are not longer than 16 octets and for Property IDs
less than 0x0800.
Size
Field Notes
(bits)
Format 1 Format A tag, 0b0
Length 4 Length of the Property Value
Property ID 11 Property identifying a sensor (Optional)
Table 4.32: Format A of the Marshalled Property ID (MPID) field
The Length field is a 1-based uint4 value (valid range 0x0–0xF, representing range of 1–16).
Format B is defined as a 7-bit Length field and a 16-bit Property ID field, as described in Table 4.33.
This format may be used for Property Values not longer than 128 octets and for any Property IDs.
Size
Field Notes
(bits)
Format 1 Format B tag, 0b1
Size
Field Notes
(bits)
Length 7 Length of the Property Value
Property ID 16 Property identifying a sensor (Optional)
Table 4.33: Format B of the Marshalled Property ID (MPID) field
The Length field is a 1-based uint7 value (valid range 0x0–0x7F, representing range of 1–128).
Property values longer than 128 octets are not supported by the Sensor Status message.
When the message is a response to a Sensor Get message that identifies a sensor property that does
not exist on the element, the Length field shall represent the value of zero and the Raw Value for that
property shall be omitted.
The response to the Sensor Column Get message is a Sensor Column Status message (see
Section 4.2.16).
Size
Field Notes
(octets)
Property ID 2 Property identifying a sensor
Raw Value X variable Raw value identifying a column
Table 4.34: Sensor Column Get message parameters
The Property ID field identifies a sensor within an element (see Section 4.1.5.1).
The Raw Value X field identifies a column of a sensor’s series within an element (see
Section 4.1.5.2).
Size
Field Notes
(octets)
Property ID 2 Property identifying a sensor and the Y axis.
Raw Value X variable Raw value representing the left corner of the column on the X axis.
Column Width variable Raw value representing the width of the column. (Optional)
Raw Value Y variable Raw value representing the height of the column on the Y axis. (C.1)
C.1: If the Column Width field is present, the Raw Value Y field shall also be present; otherwise this
field shall not be present.
Table 4.35: Sensor Column Status message parameters
The message shall be sent as a response to the Sensor Column Get message (see Section 4.2.15) or
as an unsolicited message.
The Property ID field shall contain the Sensor Property ID state (see Section 4.1.5.1).
The Raw Value X field shall contain the Sensor Raw Value X state (see Section 4.1.5.2).
The Column Width field shall contain the Sensor Column Width state (see Section 4.1.5.3).
The Raw Value Y field shall contain the Sensor Raw Value Y state (see Section 4.1.5.4).
The response to the Sensor Series Get message is a Sensor Series Status message (see
Section 4.2.18).
Size
Field Notes
(octets)
Property ID 2 Property identifying a sensor.
Raw Value X1 variable Raw value identifying a starting column. (Optional)
Raw Value X2 variable Raw value identifying an ending column. (C.1)
C.1: If the Raw Value X1 field is present, the Raw Value X2 field shall also be present; otherwise this
field shall not be present.
Table 4.36: Sensor Series Get message parameters
The Property ID field identifies a sensor within an element (see Section 4.1.5.1).
The Raw Value X1 field identifies a starting column of a sensor’s series within an element (see
Section 4.1.5.2).
The Raw Value X2 field identifies an ending column of a sensor’s series within an element (see
Section 4.1.5.2).
The structure of the message is defined in the following table. The Raw Value X [n], Column
Width [n], and Raw Value Y [n] fields are a triplet that may be repeated multiple times within the
message. The Raw Value X [n] field is followed by the Column Width [n] field, which is followed by
the Raw Value Y [n], which is followed by the Raw Value X [n+1], and so forth.
Size
Field Notes
(octets)
Property ID 2 Property identifying a sensor and the Y axis.
Raw Value X [n] variable Raw value representing the left corner of the nth column on the X axis.
Column Width [n] variable Raw value representing the width of the nth column.
Raw Value Y [n] variable Raw value representing the height of the nth column on the Y axis.
Table 4.37: Sensor Series Status message parameters
The message shall be sent as a response to the Sensor Series Get message (see Section 4.2.17) or
as an unsolicited message.
The Property ID field shall contain the Sensor Property ID state (see Section 4.1.5.1).
The Raw Value X [n] field shall contain the nth Sensor Raw Value X state (see Section 4.1.5.2).
The Column Width [n] field shall contain the nth Sensor Column Width state (see Section 4.1.5.3).
The Raw Value Y [n] field shall contain the nth Sensor Raw Value Y state (see Section 4.1.5.4).
4.3.1.1 Description
The Sensor Server model is a root model (it does not extend any other models). When this model is
present on an element, the corresponding Sensor Setup Server model (see Section 4.3.2) shall also
be present.
Table 4.39 shows the complete structure of elements, states, and messages used by the model.
Upon receiving a Sensor Descriptor Get message with the Property ID field omitted, the Sensor
Server shall respond with a Sensor Descriptor Status message (see Section 4.3.1.2.2) containing the
Sensor Descriptor states for all sensors within the Sensor Server.
When the message is sent as a response to the Sensor Descriptor Get message with an unknown
Property ID field, the Descriptor field shall be omitted.
The cadence of publishing unsolicited messages is controlled by the Publish Period state defined in
the Mesh Profile specification [2]. If the Fast Cadence High value (see Section 4.1.3.7) is equal to or
higher than the Fast Cadence Low value (see Section 4.1.3.6) and the measured value is within the
closed interval of [Fast Cadence Low, Fast Cadence High], the messages shall be published with a
Publish Period divided by the value represented by the Fast Cadence Period Divisor state (see
Section 4.1.3.1). If the Fast Cadence High value (see Section 4.1.3.7) is lower than the Fast Cadence
Low value (see Section 4.1.3.6) and the measured value either is lower than the Fast Cadence High
value or higher than the Fast Cadence Low value, the messages shall be published with a Publish
Period divided by the value represented by the Fast Cadence Period Divisor state (see
Section 4.1.3.1).
The message shall be published when the value of the measured quantity is lower than the previously
published value decremented by the value of the Status Trigger Delta Down state (see Section
4.1.3.3) or when it is higher than the previously published value incremented by the value of the
Status Trigger Delta Up state (see Section 4.1.3.4).
If the message is sent as a response to the Sensor Get message, and if the Property ID field of the
incoming message is omitted, the Marshalled Sensor Data field shall contain data for all device
properties within a sensor; otherwise, the Marshalled Sensor Data field shall contain data for the
requested device property only, or shall be omitted if the requested device property is not recognized
by the Sensor Server.
If there is no Sensor Raw Value Y state present that matches the Raw Value X state as defined by
the referenced device property, the Column Width field and the Raw Value Y field shall be omitted.
The message shall be sent as a response to a Sensor Column Get message (see Section 4.2.15) or
may be sent at any time as an unsolicited message.
4.3.2.1 Description
The Sensor Setup Server model extends the Sensor Server model (see Section 4.3.1).
The model defines the states listed in Table 4.40 and messages listed in Table 4.41 to the model it
extends.
SIG
Element States Messages Rx Tx
Model ID
Sensor Cadence Get M
Sensor Cadence Sensor Cadence Set M
(see Section
4.1.3) Sensor Cadence Set Unacknowledged M
Sensor Cadence Status M
Sensor Settings Get M
Main 0x1101
Sensor Settings Status M
Sensor Setting Sensor Setting Get M
(see Section
4.1.2) Sensor Setting Set M
Sensor Setting Set Unacknowledged M
Sensor Setting Status M
Table 4.41: Sensor Setup Server messages
Table 4.42 shows the complete structure of elements, states, and messages used by the model.
SIG
Element States Messages Rx Tx
Model ID
Sensor Descriptor Get M
Sensor Descriptor Sensor Descriptor Status M
(see Section Sensor Get M
0x1100 4.1.1) and Sensor
Data (see Section Sensor Status M
4.1.4) Sensor Column Get M
Sensor Column Status M
Sensor Cadence Get M
Sensor Cadence Sensor Cadence Set M
Main (see Section
4.1.3) Sensor Cadence Set Unacknowledged M
Sensor Cadence Status M
Sensor Settings Get M
0x1101
Sensor Settings Status M
Sensor Setting Sensor Setting Get M
(see Section
4.1.2) Sensor Setting Set M
Sensor Setting Set Unacknowledged M
Sensor Setting Status M
Table 4.42: Sensor Server elements, states, and messages
If the received message is a Sensor Cadence Set message, the Sensor Setup Server shall respond
with a Sensor Cadence Status message (see Section 4.2.6).
When the message is sent as a response to the Sensor Cadence Get message or a Sensor Cadence
Set message with an unknown Property ID field or the Sensor Server does not support the Sensor
Cadence state for the sensor referred by the Property ID, the following fields shall be omitted:
When the message is sent as a response to a Sensor Settings Get message with an unknown Sensor
Property IDs field, the Sensor Setting Property IDs field shall be omitted.
If the received message is a Sensor Setting Set message, the Sensor Setup Server shall respond
with a Sensor Setting Status message (see Section 4.3.2.3.5).
and the Sensor Setting Raw field to the value of the Sensor Setting Raw state for a setting identified
by the Sensor Setting Property ID field and for a sensor identified by the Sensor Property ID field.
If the message is sent as a response to the Sensor Setting Get message or a Sensor Setting Set
message with an unknown Sensor Property ID field or an unknown Sensor Setting Property ID field,
the Sensor Setting Access field and the Sensor Setting Raw field shall be omitted.
If the message is sent as a response to the Sensor Setting Set message with a Sensor Setting
Property ID field that identifies an existing Sensor Setting, and the value of the Sensor Setting Access
state is 0x01 (can be read), the Sensor Setting Property ID field shall be set to the value of the Sensor
Setting Property ID field of the incoming message, the Sensor Setting Access field shall be set to the
value of the Sensor Setting Access state field, and the Sensor Setting Raw field shall be omitted.
4.4.1.1 Description
The Sensor Client model is a root model (i.e., it does not extend any other models).
This model may be used to represent an element that can consume the state of an element of a peer
device that exposes a Sensor Server model (see Section 4.3.1) via Sensor messages (see
Section 4.2).
The following table illustrates the complete structure of elements, procedures, and messages used by
the model. At least one message listed in the table shall be supported by this model.
SIG
Element Procedure Messages Rx Tx
Model ID
Sensor Descriptor Get O
Sensor Descriptor Status C.1
Sensor Cadence Get O
Sensor Cadence Set O
Sensor Cadence Set
O
Unacknowledged
Sensor Cadence Status C.2
Sensor Settings Get O
Sensor Settings Status C.3
Sensor Setting Get O
Main 0x1102 Sensor
Sensor Setting Set O
Sensor Setting Set
O
Unacknowledged
Sensor Setting Status C.4
Sensor Get O
Sensor Status C.5
Sensor Column Get O
Sensor Column Status C.6
Sensor Series Get O
Sensor Series Status C.7
C.1: If the Sensor Descriptor Get message is supported, the Sensor Descriptor Status message shall
also be supported; otherwise support for the Sensor Descriptor Status message is optional.
C.2: If any of the messages: Sensor Cadence Get, Sensor Cadence Set are supported, the Sensor
Cadence Status message shall also be supported; otherwise support for the Sensor Cadence Status
message is optional.
C.3: If the Sensor Settings Get message is supported, the Sensor Settings Status message shall also
be supported; otherwise support for the Sensor Settings Status message is optional.
C.4: If any of the messages: Sensor Setting Get, Sensor Setting Set are supported, the Sensor
Setting Status message shall also be supported; otherwise support for the Sensor Setting Status
message is optional.
C.5: If the Sensor Get message is supported, the Sensor Status message shall also be supported;
otherwise support for the Sensor Status message is optional.
C.6: If the Sensor Column Get message is supported, the Sensor Column Status message shall also
be supported; otherwise support for the Sensor Column Status message is optional.
C.7: If the Sensor Series Get message is supported, the Sensor Series Status message shall also be
supported; otherwise support for the Sensor Series Status message is optional.
Table 4.43: Sensor Client elements and messages
To set the Sensor Cadence state of a Sensor Sever without acknowledgment, a Sensor Client shall
send a Sensor Cadence Set Unacknowledged message, setting the Property ID field to the value
identifying the sensor.
The choice to use a Sensor Cadence Set or a Sensor Cadence Set Unacknowledged message is an
implementation detail.
To set the Sensor Setting state of a Sensor Setting Sever without acknowledgment, a Sensor Client
shall send a Sensor Setting Set Unacknowledged message, setting the Sensor Property ID field to the
value identifying the sensor, the Sensor Setting Property ID field to the value identifying the setting,
and the Sensor Setting Raw field to the required value.
Setting a Sensor Setting state is possible only for Sensor Settings that have the value of the Sensor
Setting Access state equal to 0x03 (read/write).
The choice to use a Sensor Setting Set message or a Sensor Setting Set Unacknowledged message
is an implementation detail.
The following types of relations are illustrated: interactions via messages between client models
(represented by blue rectangles) and server models (represented by dark blue rectangles), hierarchy
of models extending other models, server models serving states (represented by red rounded
rectangles), and bindings between states.
Sensor Setting
Sensor
Setup Server
0x1101
Sensor Cadence
5.1.1 Time
Mesh defines times based on International Atomic Time (TAI). The base representation of times is the
number of seconds after 00:00:00 TAI on 2000-01-01 (that is, 1999-12-31T23:59:28 UTC). A fairly
simple formula is used to convert this representation to a human-readable form with dates, hours,
minutes, and seconds.
Note: For background information on TAI and UTC, see Appendix A.1. For a detailed analysis of
the differences between TAI and UTC, including the important concept of leap seconds,
see NIST Time Frequently Asked Questions (FAQ) [16], from the Physical Measurement
Laboratory of the National Institute of Standards and Technology of the U.S. Department
of Commerce.
To allow Mesh devices to refer to UTC or local times, devices need to be aware of the past, present,
and predicted changes to the TAI-UTC Delta (the number of seconds between TAI and UTC) and to
the local time zone offset (e.g., in Seattle, USA, the local time is exactly 7 hours behind UTC for part
of the year and 8 hours behind UTC for the rest of the year). Because these two values can change at
any time for physical or political reasons, they are not hard-coded into this specification. Instead, they
are communicated to all nodes in the mesh provided that at least one device has the information.
The Time state represents the present TAI time, the current TAI-UTC Delta and local time zone offset,
and the next change to each of the latter (e.g., because of a switch from winter to summer time or an
announced leap second). It consists of 10 fields with a total size of 183 bits. The values for the state
are defined in the following table.
Size Valid
Name Remarks
(bits) Range
Current TAI time in seconds since the
TAI Seconds 40 0–max
epoch.
Subsecond 8 0–255 The sub-second time in units of 1/256s.
Estimated uncertainty in 10-millisecond
Uncertainty 8 0–255
steps.
0 = No Time Authority. The element does
not have a trusted OOB source of time,
such as GPS or NTP.
Time Authority 1 0–1 1 = Time Authority. The element has a
trusted OOB source of time, such as
GPS or NTP or a battery-backed,
properly initialized RTC.
Time Zone Offset Current 8 -64 – +191 Current local time zone offset.
Time Zone Offset New 8 -64 – +191 Upcoming local time zone offset.
Absolute TAI time when the Time Zone
TAI of Zone Change 40 0–max
Offset will change from Current to New.
Size Valid
Name Remarks
(bits) Range
Current difference between TAI and UTC
TAI-UTC Delta Current 15 -255 – +32512
in seconds.
Upcoming difference between TAI and
TAI-UTC Delta New 15 -235 – +32512
UTC in seconds.
Absolute TAI time when the TAI-UTC
TAI of Delta Change 40 0–max
Delta will change from Current to New.
Table 5.1: Time state fields
Then the time of day is H:M:S and D is the number of days since 2000-01-01.
Note that F will only equal 1 at a positive leap second; if F = 1 and S is
not 60, the value of TAI of Delta Change is wrong.
Let B = D + 730119.
Let Q = B % 146097.
Let C = int (Q / 36524).
Let H = Q % 36524.
Let X = int ((H % 1461) / 365).
Then YEAR = int (B / 146097) * 400 + C * 100 + int (H / 1461) * 4 + X +
(!((C == 4) || (X == 4)) ? 1 : 0).
Let Z = YEAR - 1.
Let V = B - 365 * Z - int (Z / 4) + int (Z / 100) - int (Z / 400).
Let A be 1 if YEAR % 4 is zero and either YEAR % 100 is non-zero or YEAR %
400 is zero (that is, it is a leap year), and 2 otherwise.
Let J be 0 if V + A < 61, and be equal to A otherwise.
Then MONTH = int (((V + J) * 12 + 373) / 367).
Let K be 0 if MONTH <= 2 (i.e. January or February), and be equal to A
otherwise.
Let DAY = V + K + 1 - int ((367 * MONTH - 362) / 12) .
For example, the value 0x20E5369D represents the 2017-06-27T15:30:37 TAI (15:30:00 UTC).
When an element does not know the time, a special value of 0x0000000000 is used.
5.1.1.2 Subsecond
The Subsecond is a fractional part of the TAI time, in units of 1/256th seconds. An implementation may
increment this field by more than one unit (i.e. the mechanism it uses may have a larger granularity)
and/or by different amounts at each increment.
5.1.1.3 Uncertainty
The Uncertainty field represents the accumulated uncertainty of the Mesh Timestamp in 10-
millisecond steps. It includes the Uncertainty of the time source and the accumulated uncertainty
resulting from the local clock drift since the last update. Value 255 represents uncertainty of 2.55
seconds or more.
Note: Many time sources do not provide TAI directly, but it can be derived from UTC (if the
current TAI-UTC Delta is known) or from GPS time (which is always 19 seconds behind
TAI).
Note: The offset representation with a range -64 through +191 (-16 through +47.75 hours) is in
anticipation of proposals dealing with the leap seconds issue by replacing the leap
seconds with local zone changes, which means that by the year 5000 the UK will be in
zone +8 in the winter while New Zealand will be +21 in the summer with some places +22
or more.
The Time Zone Offset New field represents the new zone offset in 15-minute increments. The value is
the number of 15-minute increments from UTC. Positive numbers are eastwards.
The valid range is 0 to 0xFFFFFFFFFF. When an element does not know the TAI of Zone Change, a
special value of 0x0000000000 is used.
If the element does not know of any scheduled change but knows that there will be no change before
a certain time, the element should set this field to that time and set Time Zone Offset New to the
same value as Time Zone Offset Current.
If the element does not know of any scheduled change and does not know if there will be any change,
the element should set this field to 0x0000000000 and set Time Zone Offset New to the same value
as Time Zone Offset Current.
If the element does not know of any scheduled change, but it knows that there will be no change
before a certain time, the device should set this field to that time and set TAI-UTC Delta New to the
same value as TAI-UTC Delta Current.
If the element does not know of any scheduled change and does not know if there will be any change,
the element should set this field to 0x0000000000 and set TAI-UTC Delta New to the same value as
TAI-UTC Delta Current.
5.1.3 Scenes
Scenes serve as memory banks for storage of states (e.g., a power level or a light level/color). Values
of states of an element can be stored as a scene and can be recalled later from the scene memory. A
scene is represented by a Scene Number, which is a 16-bit non-zero, mesh-wide value. (There can
be a maximum of 65535 scenes in a mesh network.) The meaning of a scene, as well as the state
storage container associated with it, are determined by a model.
The Scenes state is a composite state that includes the Scene Register state, the Current Scene
state, and the Target Scene state.
The Scenes state change may start numerous parallel model transitions. In that case, each individual
model handles the transition internally. The scene transition is defined as a group of individual model
transitions started by a Scene Recall operation. The scene transition is in progress when at least one
transition from the group of individual model transitions is in progress.
Value Description
0x0000 Prohibited
0x0001–0xFFFF Scene Number value
Table 5.3: Scene Number values
A scene is referenced in memory by a Scene Number, which is stored in Scene Register state.
Values in the Scene Register state are compared with the Scene Number that is to be stored. If a
matching Scene Number is found, the container for the first scene with a matching Scene Number is
updated, and the operation completes with success. If no matching Scene Number is found, the first
Scene Register entry with an unset value is used and is assigned to the Scene Number of the stored
scene, and the operation completes with success. If there is no available entry in the Scene Register
to store the scene, the scene is not stored, and the operation completes with failure.
When the scene transition is in progress, the target state of the transition for each model is stored.
A scene is recalled from memory by referencing the Scene Number. Values in the Scene Register
state are compared with the Scene Number value that is to be recalled. If a matching Scene Number
is found, the first matching scene is recalled by starting the transition of all models present on an
element to the recalled states, and the operation completes with success. If there is no matching
Scene Number in the Scene Register state, the operation completes with failure.
When a scene is deleted when a scene transition to the deleted Scene Number is in progress, the
scene transition shall be terminated, but individual model transitions shall not be terminated.
When the Current Scene Number is deleted from a Scene Register state as a result of Scene Delete
operation, the Current Scene state shall be set to 0x0000.
When any of the element's state that is marked as “Stored with Scene” has changed not as a result of
a Scene Recall operation, the value of the Current Scene state shall be set to 0x0000.
When a scene transition is in progress, the value of the Current Scene state shall be set to 0x0000.
When the scene transition is not in progress, the value of the Target Scene state shall be set to
0x0000.
5.1.4 Scheduler
The scheduler is based on a register (see Section 5.1.4.2) that is capable of storing up to sixteen
scheduled entries, each containing a starting point in local time, that may include values that
represent multiple values, and an associated action to perform.
Size
Name Notes
(bits)
Year 7 Scheduled year for the action (see Table 5.5)
Month 12 Scheduled month for the action (see Table 5.6)
Day 5 Scheduled day of the month for the action (see Table 5.7)
Hour 5 Scheduled hour for the action (see Table 5.8)
Minute 6 Scheduled minute for the action (see Table 5.9)
Second 6 Scheduled second for the action (see Table 5.10)
DayOfWeek 7 Schedule days of the week for the action (see Table 5.11)
Action 4 Action to be performed at the scheduled time (see Table 5.12)
Transition Time 8 Transition time for this action (see Section 3.1.3)
Scene Number 16 Scene number to be used for some actions (see Table 5.13)
Table 5.4: Schedule Register fields
The Year, Month, Day, Hour, Minute, and Second fields represent local time (i.e., after the TAI-UTC
Delta and Time Zone Offset have been applied). The fields have the meaning defined in ISO 8601
[15] (which replicates the "Gregorian" calendar in common use). Some of these values can either
represent an exact value or a range of values when the scheduled action is performed.
The minute and second field values have an enumerated value that represents ‘at a random’ value.
This scheduled action shall be triggered once within the corresponding hour or minute.
The Year field represents 2 least significant digits of the year of the occurrence of the scheduled
event.
Value Description
0x00–0x63 2 least significant digits of the year
0x64 Any year
All other values Prohibited
Table 5.5: Year field values
The Month field represents the months of the occurrences of the scheduled event.
Bit Description
0 Scheduled in January
1 Scheduled in February
2 Scheduled in March
3 Scheduled in April
4 Scheduled in May
5 Scheduled in June
6 Scheduled in July
7 Scheduled in August
8 Scheduled in September
9 Scheduled in October
Bit Description
10 Scheduled in November
11 Scheduled in December
Table 5.6: Month field values
The Day field represents the day the month of the occurrence of the scheduled event. If the day of the
month has a number that is larger than the number of days in the month, then the event occurs in the
last day of the month. For example, in February if the day field holds the value 29, the action is
triggered on February 28th in a non-leap year or February 29th in a leap year.
Value Description
0x00 Any day
0x01–0x1F Day of the month
Table 5.7: Day field values
The Hour field represents the hour of the occurrence of the scheduled event.
Value Description
0x00–0x17 Hour of the day (00 to 23 hours)
0x18 Any hour of the day
0x19 Once a day (at a random hour)
All other values Prohibited
Table 5.8: Hour field values
The Minute field represents the minute of the occurrence of the scheduled event.
Value Description
0x00–0x3B Minute of the hour (00 to 59)
0x3C Any minute of the hour
0x3D Every 15 minutes (minute modulo 15 is 0) (0, 15, 30, 45)
0x3E Every 20 minutes (minute modulo 20 is 0) (0, 20, 40)
0x3F Once an hour (at a random minute)
Table 5.9: Minute field values
The Second field represents the second of the occurrence of the scheduled event.
Value Description
0x00–0x3B Second of the minute (00 to 59)
0x3C Any second of the minute
0x3D Every 15 seconds (minute modulo 15 is 0) (0, 15, 30, 45)
0x3E Every 20 seconds (minute modulo 20 is 0) (0, 20, 40)
0x3F Once an minute (at a random second)
Table 5.10: Second field values
The DayOfWeek field represents the days of the week that the scheduled event will trigger.
When a bit is set to 1, the scheduled event is executed on that day.
Bit Description
0 Scheduled on Mondays
1 Scheduled on Tuesdays
2 Scheduled on Wednesdays
3 Scheduled on Thursdays
4 Scheduled on Fridays
5 Scheduled on Saturdays
6 Scheduled on Sundays
Table 5.11: DayOfWeek field values
The Action field represents an action to be executed for a scheduled event as defined in the
table below.
Value Description
0x0 Turn Off
0x1 Turn On
0x2 Scene Recall
0xF No action
All other values Reserved for Future Use
Table 5.12: Action field values
When the Action field value is 0x0, this means an action that is an equivalent of receiving by the
element a Generic OnOff Set Unacknowledged message (see Section 3.2.1.3) with the OnOff field set
to 0x00 and the Transition Time field set to the value of the Transition Time field of the Schedule
Register.
When the Action field value is 0x1, this means an action that is an equivalent of receiving by the
element a Generic OnOff Set Unacknowledged message (see Section 3.2.1.3) with the OnOff field set
to 0x01 and the Transition Time field set to the value of the Transition Time field of the Schedule
Register.
When the Action field value is 0x2, this means an action that is an equivalent of receiving by the
element a Scene Recall Unacknowledged message (see Section 5.2.2.4) with the Scene Number
field set to the value of the Scene Number field of the Schedule Register and the Transition Time field
set to the value of the Transition Time field of the Schedule Register.
When the Action field value is 0xF, this means no action is performed.
The Transition Time field represents a Transition Time to be used when an action triggered by the
scheduler is executed. The format is defined in Section 3.1.3.
Value Description
0x0000 No scene
All other values Scene number
Table 5.13: Scene Number field values
DayOfWeek
Notes
Second
Minute
Action
Month
Hour
Year
Day
Note: A recommended implementation of the Scheduler should calculate the value of the TAI
Seconds (see Section 5.1.1.1) of the next scheduled event and put it in a queue of
scheduled events sorted by time. Every second, the first event in the queue is compared
with the value of the Time state (see Section 5.1.1). The first event is executed if it is less
than or equal to the Time state and then removed from the queue. After execution, the
Repeat Flag shall be checked, and the next occurrence of the scheduled event is
calculated and put in the queue.
Size
Field Notes
(bits)
TAI Seconds 40 The current TAI time in seconds
Subsecond 8 The sub-second time in units of 1/256th second
Uncertainty 8 The estimated uncertainty in 10 millisecond steps
Time Authority 1 0 = No Time Authority, 1 = Time Authority
TAI-UTC Delta 15 Current difference between TAI and UTC in seconds
Time Zone Offset 8 The local time zone offset in 15-minute increments
Table 5.15: Time Set message parameters
The TAI Seconds field identifies the TAI Seconds state (see Section 5.1.1.1).
The Subsecond field identifies the Subsecond state (see Section 5.1.1.2).
The Uncertainty field identifies the Time Uncertainty state (see Section 5.1.1.3).
The Time Authority field identifies the Time Authority state (see Section 5.1.1.4).
The TAI-UTC Delta field identifies the TAI-UTC Delta Current state (see Section 5.1.1.8).
The Time Zone Offset field shall be set to the Time Zone Offset Current state (see Section 5.1.1.5).
Size
Field Notes
(bits)
TAI Seconds 40 The current TAI time in seconds
Subsecond 8 The sub-second time in units of 1/256th second (C.1)
Uncertainty 8 The estimated uncertainty in 10-millisecond steps (C.1)
Time Authority 1 0 = No Time Authority, 1 = Time Authority (C.1)
TAI-UTC Delta 15 Current difference between TAI and UTC in seconds (C.1)
Time Zone Offset 8 The local time zone offset in 15-minute increments (C.1)
C.1: If the TAI Seconds field is 0x0000000000 the Subsecond, Uncertainty, Time Authority, TAI-UTC
Delta and Time Zone Offset fields shall be omitted; otherwise these fields shall be present.
Table 5.16: Time Status message parameters
The TAI Seconds field identifies the TAI Seconds state (see Section 5.1.1.1).
The Subsecond field identifies the Subsecond state (see Section 5.1.1.2).
The Uncertainty field identifies the Time Uncertainty state (see Section 5.1.1.3).
The Time Authority field identifies the Time Authority state (see Section 5.1.1.4).
The TAI-UTC Delta field identifies the TAI-UTC Delta Current state (see Section 5.1.1.8).
The Time Zone Offset field shall be set to the Time Zone Offset Current state (see Section 5.1.1.5).
The response to the Time Zone Get message is a Time Zone Status message.
Size
Field Notes
(octets)
Time Zone Offset New 1 Upcoming local time zone offset
TAI of Zone Change 5 TAI Seconds time of the upcoming Time Zone Offset change
Table 5.17: Time Zone Set message parameters
The Time Zone Offset New field identifies the Time Zone Offset New state (see Section 5.1.1.6).
The TAI of Zone Change field identifies the TAI of Zone Change state (see Section 5.1.1.7).
Size
Field Notes
(octets)
Time Zone Offset Current 1 Current local time zone offset
Time Zone Offset New 1 Upcoming local time zone offset
TAI Seconds time of the upcoming Time Zone Offset
TAI of Zone Change 5
change
Table 5.18: Time Zone Status message parameters
The Time Zone Offset Current field identifies the Time Zone Offset Current state (see
Section 5.1.1.5).
The Time Zone Offset New field identifies the Time Zone Offset New state (see Section 5.1.1.6).
The TAI of Zone Change field identifies the TAI of Zone Change state (see Section 5.1.1.7).
The response to the TAI-UTC Delta Get message is a TAI-UTC Delta Status message.
Size
Field Notes
(bits)
TAI-UTC Delta New 15 Upcoming difference between TAI and UTC in seconds
Padding 1 Always 0b0. Other values are Prohibited.
TAI of Delta Change 40 TAI Seconds time of the upcoming TAI-UTC Delta change
Table 5.19: TAI-UTC Delta Set message parameters
The TAI-UTC Delta New field identifies the TAI-UTC Delta New state (see Section 5.1.1.9).
The TAI of Delta Change field identifies the TAI of Delta Change state (see Section 5.1.1.10).
Size
Field Notes
(bits)
TAI-UTC Delta Current 15 Current difference between TAI and UTC in seconds
Padding 1 1 Always 0b0. Other values are Prohibited.
TAI-UTC Delta New 15 Upcoming difference between TAI and UTC in seconds
Padding 2 1 Always 0b0. Other values are Prohibited.
TAI of Delta Change 40 TAI Seconds time of the upcoming TAI-UTC Delta change
Table 5.20: TAI-UTC Delta Status message parameters
The TAI-UTC Delta Current field identifies the TAI-UTC Delta Current state (see Section 5.1.1.8).
The TAI-UTC Delta New field identifies the TAI-UTC Delta New state (see Section 5.1.1.9).
The TAI Of Delta Change field identifies the TAI of Delta Change state (see Section 5.1.1.10).
The response to the Time Role Get message is a Time Role Status message.
The response to the Time Role Set message is a Time Role Status message.
Size
Field Notes
(octets)
Time Role 1 The Time Role for the element
Table 5.21: Time Role Set message parameters
The Time Role field identifies the Time Role state (see Section 5.1.2).
Size
Field Notes
(octets)
Time Role 1 The Time Role for the element
Table 5.22: Time Role Status message parameters
The Time Role field identifies the Time Role state (see Section 5.1.2).
The response to the Scene Store message is a Scene Register Status message.
Size
Field Notes
(octets)
Scene Number 2 The number of the scene to be stored.
Table 5.23: Scene Store message parameters
The Scene Number field identifies the intended scene. The value 0x0000 is Prohibited.
Size
Field Notes
(octets)
Scene Number 2 The number of the scene to be stored.
Table 5.24: Scene Store Unacknowledged message parameters
The Scene Number field identifies the intended scene. The value 0x0000 is Prohibited.
Size
Field Notes
(octets)
Scene Number 2 The number of the scene to be recalled.
TID 1 Transaction Identifier.
Transition Time 1 Format as defined in Section 3.1.3. (Optional)
Message execution delay in 5 millisecond steps.
Delay 1
(C.1)
C.1: If the Transition Time field is present, the Delay field shall also be present; otherwise this field
shall not be present.
Table 5.25: Scene Recall message parameters
The Scene Number field identifies the intended Scene. The value 0x0000 is Prohibited.
The TID field is a transaction identifier indicating whether the message is a new message or a
retransmission of a previously sent message, as described in Section 5.4.2.2.5.
If present, the Transition Time field identifies the time that an element will take to transition from the
present states to the target states defined by the recalled Scene. The format of the Transition Time
field matches the format of the Generic Default Transition Time state as defined in Section 3.1.3. Only
values of 0x00 through 0x3E shall be used to specify the Transition Number of Steps.
The Delay field shall be present when the Transition Time field is present. It identifies the message
execution delay, which represents a time interval between receiving the message by a model and
executing the associated model behaviors.
Size
Field Notes
(octets)
Scene Number 2 The number of the scene to be recalled.
TID 1 Transaction Identifier.
Transition Time 1 Format as defined in Section 3.1.3. (Optional)
Delay 1 Message execution delay in 5 millisecond steps. (C.1)
C.1: If the Transition Time field is present, the Delay field shall also be present; otherwise this field
shall not be present.
Table 5.26: Scene Recall Unacknowledged message parameters
The Scene Number field identifies the intended Scene. The value 0x0000 is Prohibited.
The TID field is a transaction identifier indicating whether the message is a new message or a
retransmission of a previously sent message, as described in Section 5.4.2.2.5.
If present, the Transition Time field identifies the time an element will take to transition from the
present states to the target states defined by the recalled Scene. The format of the Transition Time
field matches the format of the Generic Default Transition Time state as defined in Section 3.1.3. Only
values of 0x00 to 0x3E shall be used to specify the Transition Number of Steps.
The Delay field shall be present when the Transition Time field is present. It identifies the message
execution delay, representing a time interval between receiving the message by a model and
executing the associated model behaviors.
Size
Field Notes
(octets)
Status Code 1 Defined in 5.2.2.11
Current Scene 2 Scene Number of a current scene.
Target Scene 2 Scene Number of a target scene. (Optional)
Remaining Time 1 Format as defined in Section 3.1.3. (C.1)
C.1: If the Target Scene field is present, the Remaining Time field shall also be present; otherwise the
fields shall not be present.
Table 5.27: Scene Status message parameters
The Status Code field identifies the status code for the last operation. The allowed values for status
codes and their meanings are documented in Section 5.2.2.11.
The Current Scene field identifies the Scene Number of the current Scene. If no scene is active, the
Current Scene field value is 0.
When an element is in the process of changing the Scene state, the Target Scene field identifies the
target Scene Number of the target Scene state the element is to reach.
When an element is not in the process of changing the Scene state, the Target Scene field shall be omitted.
If present, the Remaining Time field indicates the time it will take the element to complete the
transition to the target Scene state of the element.
The response to the Scene Register Get message is a Scene Register Status message.
Size
Field Notes
(octets)
Status Code 1 Defined in Section 5.2.2.11.
Current Scene 2 Scene Number of a current scene
Scenes variable A list of scenes stored within an element
Table 5.28: Scene Register Status message parameters
The Status Code field identifies the status code for the previous operation. The allowed values for
status codes and their meanings are documented in Section 5.2.2.11.
The Current Scene field identifies the Scene Number of the current scene.
The Scenes field identifies the Scene Register state (see Section 5.1.3.1) of an element.
The response to the Scene Delete message is a Scene Register Status message.
Size
Field Notes
(octets)
Scene Number 2 The number of the scene to be deleted.
Table 5.29: Scene Delete message parameter
Size
Field Notes
(octets)
Scene Number 2 The number of the scene to be deleted.
Table 5.30: Scene Delete Unacknowledged message parameters
Value Description
0x00 Success
0x01 Scene Register Full
Value Description
0x02 Scene Not Found
0x03–0xFF Reserved for Future Use
Table 5.31: Status code values
Size
Field Notes
(octets)
Schedules 2 Bit field indicating defined Actions in the Schedule Register
Table 5.32: Scheduler Status message parameters
The message shall be sent as a response to the Scheduler Get message (see Section 5.2.3.1).
Each bit of the Schedules field set to 1 identifies a corresponding entry of the Schedule Register.
The response to the Scheduler Action Get message is a Scheduler Action Status message.
Size
Field Notes
(octets)
Index 1 Index of the Schedule Register entry to get
Table 5.33: Scheduler Action Get message parameters
The Index field identifies a single corresponding entry of the Schedule Register. The valid values for
the Index field are 0x00–0x0F. Values 0x10–0xFF are Prohibited.
The response to the Scheduler Action Set message is a Scheduler Action Status message.
Size
Field Notes
(bits)
Index 4 Index of the Schedule Register entry to set
Bit field defining an entry in the Schedule Register (see
Schedule Register 76
Section 5.1.4.2)
Table 5.34: Scheduler Action Set message parameters
The Index field identifies a single corresponding entry of the Schedule Register. The valid values for
the Index field are 0x0-0xF.
The Schedule Register bit field identifies the value of the entry of the Schedule Register that is
indicated by the Index field.
Size
Field Notes
(bits)
Index 4 Index of the Schedule Register entry to set
Bit field defining an entry in the Schedule Register (see
Schedule Register 76
Section 5.1.4.2)
Table 5.35: Scheduler Action Set Unacknowledged message parameters
The Index field identifies a single corresponding entry of the Schedule Register. The valid values for
the Index field are 0x0-0xF.
The Schedule Register bit field identifies the value of the entry of the Schedule Register that is
indicated by the Index field.
Size
Field Notes
(bits)
Index 4 Enumerates (selects) a Schedule Register entry
Bit field defining an entry in the Schedule Register (see
Schedule Register 76
Section 5.1.4.2)
Table 5.36: Scheduler Action Status message parameters
The Index field identifies a single corresponding entry of the Schedule Register. The valid values for
the Index field are 0x0-0xF.
The Schedule Register bit field shall be set to the value of the entry of the Schedule Register that is
indicated by the Index field.
5.3.1.1 Description
The Time Server model is a root model (i.e., it does not extend any other models). When this model is
present on an Element, the corresponding Time Setup Server model (see Section 5.3.2) shall also be
present.
Table 5.38 illustrates the complete structure of elements, states, and messages used by the model.
SIG
Element States Messages Rx Tx
Model ID
Time Get M
Time Status M M
Time Time Zone Get M
Main 0x1200 (see Section
3.1.3) Time Zone Status M
TAI-UTC Delta Get M
TAI-UTC Delta Status M
Table 5.38: Time Server elements, states, and messages
The message may be sent as an unsolicited message at any time if the value of the Time Role state
(see Section 5.1.2) is 0x01 (Time Authority) or 0x02 (Time Relay) and the value of the TAI Seconds
state is greater than 0x0000000000.
When sending a Time Status message the Time Server shall set the TAI Seconds field to the value of
the TAI Seconds state, the Subsecond field to the value of the Subsecond state, the Time Zone Offset
Current field to the value of the Time Zone Offset Current state, the TAI-UTC Delta Current field to the
value of the TAI-UTC Delta Current state and the Uncertainty field to a value that is a sum of the
value of the Uncertainty state and an estimated time it will take the message to be processed before
being sent on the radio interface.
If sent as an unsolicited message, the Time Status message shall be sent with TTL=0 to avoid
building up cumulative time errors resulting from delays in processing the messages by relays.
It is recommended to transmit a Time Status message when the TAI Seconds, the Subsecond or the
Time Zone Offset Current fields of the Time state of the Time Server (see Section 5.1.1) have been
updated as a result of processing a Time Set message (see Section 5.2.1.2), a Time Status message
(see Section 5.2.1.3) and the value of the Time Role state (see Section 5.1.2) is 0x01 (Time Authority)
or 0x02 (Time Relay) or obtains a new Time state (see Section 5.1.1) from a trusted OOB source
(such as a GPS or a mobile phone synchronized with a cellular network).
Upon receiving a Time Status message a Time Server can determine the TAI Seconds, the
Subsecond, the Uncertainty and the Time Zone Offset Current fields of a peer Time Server.
If the value of the Time Role state (see Section 5.1.2) of the element is 0x00 (None) or 0x01 (Time
Authority), the message shall be ignored.
If the value of the Time Role state (see Section 5.1.2) of the element is 0x02 (Time Relay) or 0x03
(Time Client), the Time Server should synchronize the Time state (see Section 5.1.1) by setting the
TAI Seconds state to the value of the TAI Seconds field and the Subsecond state to the value of the
Subsecond field and the Uncertainty state to the value of the Uncertainty field and the Time Zone
Offset Current state to the value of the Time Zone Offset field and the TAI-UTC Delta Current state to
the value of the TAI-UTC Delta field of the message and shall publish a Time Status message using
TTL=0 (see Section 5.3.1.2.2) if the value of the Time Role state is 0x02 (Time Relay) and the Publish
Address for the Time Server model is not set to unassigned address [2].
A Time Server shall send the Time Zone Status message as a response to a Time Change Get
message (see Section 5.2.1.4) or a Time Zone Set message (see Section 5.2.1.5) or as an
unsolicited message.
A Time Server shall send the TAI-UTC Delta Status message as a response to a TAI-UTC Delta Get
message (see Section 5.2.1.7) or a TAI-UTC Delta Set message (see Section 5.2.1.8) or as an
unsolicited message.
5.3.2.1 Description
The Time Setup Server model extends the Time Server model (see Section 5.3.1). The access layer
security on the model is using device keys established during provisioning.
The model adds the messages listed in Table 5.39 to the models it extends.
SIG
Element States Messages Rx Tx
Model ID
Time Set M
Time (see
Time Zone Set M
Section 5.1.1)
TAI-UTC Delta Set M
Main 0x1201
Time Role Get M
Time Role (see
Time Role Set M
Section 5.1.2)
Time Role Status M
Table 5.39: Time Setup Server messages
5.3.2.3.2 Receiving a Time Role Set / Time Role Set Unacknowledged message
When a Time Setup Server receives a Time Role Set message or a Time Role Set Unacknowledged
message, it shall set the Time Role state to the value of the Time Role field.
If the message is the Time Role Set message, the Time Setup Server shall respond with a Time Role
Status message (see Section 5.3.2.3.3).
It is recommended to transmit a Time Status message when the value of the Time Role state (see
Section 5.1.2) has been changed to 0x01 (Time Authority).
5.3.3.1 Description
The Scene Server model is a root model. When this model is present on an Element, the
corresponding Scene Setup Server model (see Section 5.3.4) shall also be present.
The model defines the state instances listed in Table 5.40 and messages listed in Table 5.41. The
model may be present only on the Primary element of a node.
SIG
Element States Messages Rx Tx
Model ID
Scene Get M
Scene Status M
Scene Register Scene Register Get M
Main 0x1203
(see Section 5.1.3.1) Scene Register Status M
Scene Recall M
Scene Recall Unacknowledged M
Table 5.41: Scene Server messages
When a Scene Server receives a Scene Recall message with a Scene Number value that does not
match a Scene Number stored within the Scene Register state, it shall respond with the Scene Status
message (see Section 5.3.3.2.3), setting the Status Code field to Scene Not Found).
When a Scene Server receives a Scene Recall Unacknowledged message with a Scene Number
value that matches a Scene Number stored within the Scene Register state, it shall perform a Scene
Recall operation (see Section 5.1.3.1.2) for a scene memory referred to by the Scene Number.
If present, the Transition Time field value shall be used as the time for transition to the target state. If
the Transition Time field is not present and the Generic Default Transition Time state (see Section
3.1.3) is supported, the Generic Default Transition Time state shall be used. Otherwise the transition
shall be instantaneous.
If the Delay field is included in the Scene Recall message or in the Scene Recall Unacknowledged
message, and the field contains a non-zero value, the server shall wait for the indicated delay period
(5-millisecond steps) before executing any state-changing behavior.
If the target state is equal to the current state, the transition shall not be started and is considered
complete.
It is recommended that the Scene Status message is sent whenever a Scene is recalled as a result of
an action other than receiving the Scene Recall message (e.g., a predefined Scheduler action). See
Section 5.1.4.
If the message is sent as a reply to the Scene Recall message, the Status Code field identifies the
result of the related operation; otherwise, the Status Code field shall be set to Success.
If the message is sent as a reply to a Scene Store message, the Status Code field identifies the result
of the related operation; otherwise, the Status Code field shall be set to Success.
5.3.4.1 Description
The Scene Setup Server model extends the Scene Server model (see Section 5.3.1) and the Generic
Default Transition Time Server model (see Section 3.1.3).
The model adds the state instances listed in Table 5.42 and messages listed in Table 5.43 to the
models it extends. The model may be present only on the Primary element of a node.
SIG
Element States Messages Rx Tx
Model ID
Scene Store M
Scene Register Scene Store Unacknowledged M
Main 0x1204 (see Section
5.1.3.1) Scene Delete M
Scene Delete Unacknowledged M
Table 5.43: Scene Register messages
Table 5.44 illustrates the complete structure of elements, states, and messages used by the model.
When a Scene Setup Server receives a Scene Store Unacknowledged message, it shall perform a
Scene Store operation (see Section 5.1.3.1.1) for the scene referred to by the Scene Number.
When a Scene Server receives a Scene Delete Unacknowledged message with the Scene Number
value that matches a Scene Number stored within the Scene Register state, it shall perform a Scene
Delete operation (see Section 5.1.3.1.3) for a scene memory referred to by the Scene Number.
When a Scene Server receives a Scene Delete message with the Scene Number value that does not
match a Scene Number stored within the Scene Register state, it shall respond with the Scene
Register Status message (see Section 5.3.3.2.5), setting the Status Code field to Success.
5.3.5.1 Description
The Scheduler Server model extends the Scene Server model (see Section 3.5). When this model is
present on an Element, the corresponding Scheduler Setup Server model (see Section 5.3.6) shall
also be present.
The model adds the state instances listed in Table 5.45 and messages listed in Table 5.46 to the
model it extends. The model may be present only on the Primary element of a node. The model
requires the Time Server model shall be present on the element.
Table 5.47 illustrates the complete structure of elements, states, and messages used by the model.
The Schedule Register bit field shall be set to the value of the entry of the Schedule Register state
(see Section 5.1.4.2) indicated by the Index field of the received message.
5.3.6.1 Description
The Scheduler Setup Server model extends the Scheduler Server (see Section 5.3.5) and the Scene
Setup Server (see Section 5.3.4) models.
The model adds messages listed in Table 5.48 to the model it extends. The model may be present
only on the Primary element of a node.
SIG
Element States Messages Rx Tx
Model ID
Schedule Register Scheduler Action Set M
Main 0x1207 (see Section Scheduler Action Set
5.1.4.2) M
Unacknowledged
Table 5.48: Scheduler Setup Server messages
Table 5.49 illustrates the complete structure of elements, states, and messages used by the model.
SIG
Element States Messages Rx Tx
Model ID
Scene Get M
Scene Status M
Scene Register Scene Register Get M
0x1203 (see Section
5.1.3.1) Scene Register Status M
Scene Recall M
Scene Recall Unacknowledged M
Main Scheduler Get M
Schedule Register Scheduler Status M
0x1206 (see Section
5.1.4.2) Scheduler Action Get M
Scheduler Action Status M
Scene Register Scene Store M
0x1204 (see Section
5.1.3.1) Scene Store Unacknowledged M
0x1207 Scheduler Action Set M
SIG
Element States Messages Rx Tx
Model ID
Schedule Register
Scheduler Action Set
(see Section M
Unacknowledged
5.1.4.2)
Generic Default Transition Time Get M
Generic Default Transition Time Set M
Generic Default
0x1004 Transition Time Generic Default Transition Time Set
M
(see Section 3.1.3) Unacknowledged
Generic Default Transition Time
M
Status
Generic Generic OnPowerUp Get M
0x1006 OnPowerUp
(see Section 3.1.4) Generic OnPowerUp Status M
If the received message is the Scheduler Action Set message, the Scheduler Server shall respond
with a Scheduler Action Status message (see Section 5.3.5.2.4).
5.4.1.1 Description
The Time Client model is a root model (i.e., it does not extend any other models).
This model may be used to synchronize an element’s Time state (see Section 3.1.3) with a Time state
of an element of a peer device that exposes a Time Server model (see Section 3.3.5) via Time
Messages (see Section 5.2.1).
The following table illustrates the complete structure of elements, procedures, and messages used by
the model. At least one message listed in the table shall be supported by this model.
SIG
Element Procedure Messages Rx Tx
Model ID
Time Get O
Time Set O
Main 0x1202 Time
Time Status C.1
Time Zone Get O
SIG
Element Procedure Messages Rx Tx
Model ID
Time Zone Set O
Time Zone Status C.2
TAI-UTC Delta Get O
TAI-UTC Delta Set O
TAI-UTC Delta Status C.3
Time Role Get O
Time Role Time Role Set O
Time Role Status C.4
C.1: If any of the messages: Time Get, Time Set are supported, the Time Status message shall also
be supported; otherwise support for the Time Status message is optional.
C.2: If any of the messages: Time Status, Time Change Get, Time Zone Set are supported, the Time
Zone Status message shall also be supported; otherwise support for the Time Zone Status message
is optional.
C.3: If any of the messages: Time Status, TAI-UTC Delta Get, TAI-UTC Delta Set are supported, the
TAI-UTC Delta Status message shall also be supported; otherwise support for the TAI-UTC Delta
Status message is optional.
C.4: If any of the messages: Time Role Get, Time Role Set are supported, the Time Role Status
message shall also be supported; otherwise support for the Time Role Status message is optional.
Table 5.50: Time Client elements and messages
5.4.2.1 Description
The Scene Client model is a root model (i.e., it does not extend any other models).
This model may be used to represent an element that can control an element of a peer device that
exposes a Scene Server model (see Section 5.3.1) via Scene Register messages (see Section 5.2.1).
The following table illustrates the complete structure of elements, procedures, and messages used by
the model. At least one message listed in the table shall be supported by this model.
SIG
Element Procedures Messages Rx Tx
Model ID
Scene Get O
Scene Status C.1
Scene Register Get O
Scene Register Status C.2
Main 0x1205 Scene Register Scene Store O
Scene Store Unacknowledged O
Scene Delete O
Scene Delete Unacknowledged O
Scene Recall O
SIG
Element Procedures Messages Rx Tx
Model ID
Scene Recall Unacknowledged O
C.1: If any of the messages: Scene Get, Scene Recall are supported, the Scene Status message
shall also be supported; otherwise support for the Scene Status message is optional.
C.2: If any of the messages: Scene Register Get, Scene Store, Scene Delete are supported, the
Scene Register Status message shall also be supported; otherwise support for the Scene Register
Status message is optional.
Table 5.51: Scene Client elements and messages
To store the present state of an element as a memorized scene referenced by a Scene Number
without acknowledgment, a Scene Client shall send a Scene Store Unacknowledged message,
setting the Scene Number field to the selected Scene Number.
The choice to use a Scene Store or a Scene Store Unacknowledged message is an implementation
detail.
To recall the state of an element from a memorized scene that is referenced by a Scene Number
without acknowledgment, a Scene Client shall send a Scene Recall Unacknowledged message,
setting the Scene Number field to the selected Scene Number and the TID field to the least recently
used value.
A Scene Recall message or a Scene Recall Unacknowledged message may optionally include a
Transition Time field, indicating the transition time to the target state. If present, the Transition Time
field value shall be used as the time for transition to the target state. If the Transition Time field is not
present and the Generic Default Transition Time state (see Section 3.1.3) is supported, the Generic
Default Transition Time state shall be used. Otherwise the transition shall be instantaneous.
If a Transition Time is included, a Delay field shall be included indicating the message execution
delay, which represents the time interval between receiving the message by a model and executing
the associated model behaviors.
To retransmit the message, a Scene Client shall use the same value for the TID field as in the
previously sent message, within 6 seconds from sending that message.
The choice to use a Scene Recall or a Scene Recall Unacknowledged message is an implementation
detail.
To recall the state of an element from a memorized scene referenced by a Scene Number without
acknowledgment, a Scene Client shall send a Scene Delete Unacknowledged message, setting the
Scene Register Status field to the selected Scene Number.
5.4.3.1 Description
The Scheduler Client model extends the Scene Client model (see Section 5.4.1).
This model may be used to represent an element that can control an element of a peer device that
exposes a Scheduler Server model (see Section 5.3.5) via Scheduler messages (see Section 5.2.3).
The following table illustrates the complete structure of elements, procedures, and messages used by
the model. At least one message listed in the table shall be supported by this model.
SIG
Element Procedure Messages Rx Tx
Model ID
Scheduler Get O
Scheduler Status C.1
Scheduler Action Get O
Main 0x1208 Scheduler
Scheduler Action Set O
Scheduler Action Set Unacknowledged O
Scheduler Action Status C.2
C.1: If the Scheduler Get message is supported, the Scheduler Status message shall also be
supported; otherwise support for the Scheduler Status message is optional.
C.2: If any of the messages: Scheduler Action Get, Scheduler Action Set are supported, the
Scheduler Action Status message shall also be supported; otherwise support for the Scheduler Action
Status message is optional.
Table 5.52: Scheduler Client elements and messages
To set a Scheduler Action for a particular Index without acknowledgment, a Scheduler Client shall
send a Scheduler Action Set Unacknowledged message, setting the Index field to the selected value
and the Schedule Register field to the bit field representing a Schedule Register entry.
The choice to use a Scheduler Action Set or a Scheduler Action Set Unacknowledged message is an
implementation detail.
The following types of relations are illustrated: interactions via messages between client models
(represented by blue rectangles) and server models (represented by dark blue rectangles), hierarchy
of models extending other models, server models serving states (represented by red rounded
rectangles), and bindings between states.
Power OnOff
Server OnPowerUp
0x1006
Power OnOff
Client
0x1008
Power OnOff
Setup Server
0x1007
Time Time
Client Server Time
0x1202 0x1200
Scene
Scene Server
Client Scene Register
0x1203
0x1205
Scene
Setup Server
0x1204
Scheduler Scheduler
Client Server Schedule Register
0x1208 0x1206
Scheduler
Setup Server
0x1207
6 Lighting
This section of the specification defines a set functionalities related to lighting control. This includes
dimmable lights as well as tunable and color changing lights. It also includes a light control model that
allows specific behaviors triggered by sensors, such as turning lights on based on occupancy or
balancing a light level based on ambient light conditions, dimming lights after a period of inactivity and
eventually turning lights off.
The simplest way of controlling a light is turning it on or off. This is done by controlling the Generic
OnOff state (see Section 3.1.1).
A more advanced method of controlling a light is changing the lightness. This is done by controlling
the Light Lightness Actual state (see Section 6.1.2.1). For an informative discussion of lightness, see
Section A.2.
If a light is a tunable white, meaning it is possible to control its color temperature, this is done by
controlling the Light CTL state (see Section 6.1.3) along with the DUV (Delta UV). The color
temperature corresponds to a particular locus (curve) on the color chart and is equivalent to “black
body” radiation at different temperatures (expressed in Kelvin). Higher color temperatures are more
bluish or cool and lower color temperatures are reddish or warm. Incandescent light is typically 2700K
to 3000K, while daylight or fluorescent light is typically 5000K. DUV (Delta UV) is the distance from
the Black Body curve. It is a range of -1.0 to 1.0 with a 16-bit resolution. The Color Temperatures all
fall on the black body locus (curve) and some applications want to slightly deviate from the black body
curve (e.g., to accentuate pinks/reds).
If a light is a color changing light, meaning it is possible to control all three dimensions (Hue,
Saturation, and Lightness or HSL), this is done by controlling each state independently:
• Lightness is controlled by the Light Lightness Actual state (see Section 6.1.2.1).
• Hue is controlled by the Light HSL Hue state (see Section 6.1.4.1).
• Saturation is controlled by the Light HSL Saturation state (see Section 6.1.4.2).
The HSL model [4] is considered to be the default model for controlling color light in a mesh network.
The RGB model used in computer monitors and printers has several flaws. For example, it depends
on having a good source of primary colors. In today’s light sources, different primary colors other than
RGB are used and often more than three are used; and three variables are required to mix to result in
a final color. On the other hand, the HSL model makes it easy to implement in a variety of controllers
(smart phone apps and physical color light controllers using so-called color wheels for Hue /
Saturation selection and a linear slider for Lightness). It also fits in nicely with the concept of models
extending other models. The HS extends L, forming a combined HSL color light control model.
Note: The HSL color space can be converted to other color spaces. For example, the following
code may be used when converting HSL to RGB:
H = Light HSL Hue / 65535
S = Light HSL Saturation / 65535
L = Light Lightness / 65535
if ( S == 0 )
{
R = L
G = L
B = L
}
else
{
if ( L < 0.5 ) var_2 = L * ( 1 + S )
else var_2 = ( L + S ) - ( S * L )
var_1 = 2 * L - var_2
Professional color light control applications use a CIE1931 [4] color chart system, created by the
Commission on Illumination in 1931. It is the first mathematically defined color chart and can be used
as an alternative to the HSL model. It defines human perceptible colors with x, y, and Y coordinates,
where x and y are coordinates of the color on the chart, and Y represents luminance.
In a mesh network, the color light control model for professional applications is the xyL model, where
x and y have the same meaning of chromaticity coordinates as in the xyY model. L is the perceived
lightness, represented by the Light Lightness Actual state (see Section 6.1.2.1). The x and y are
represented by the Light xyL x (see Section 6.1.5.1) and Light xyL y (see Section 6.1.5.2) states,
extending the L by xy to form a combined Light xyL Server model.
It should be noted that the Light HSL Hue, Light HSL Saturation, and the Light xyL x and Light xyL y
states are related. Changing one of them results in the others being changed.
Since modern light sources and controllers allow for very precise light control, all the light control
states have 16-bit precision.
Value Description
0x0000 Light is not emitted by the element.
0x0001–0xFFFE The lightness of a light emitted by the element.
0xFFFF The highest lightness of a light emitted by the element.
Table 6.1: Light Lightness Linear states
The linear lightness of a light is equal to the measured light intensity (Y), from 0 to 65535.
result of an action other than the change of the bound Light Lightness Actual state (see Section
6.1.2.2.1), the following calculation shall be performed:
Value Description
0x0000 Light is not emitted by the element.
0x0001–0xFFFE The perceived lightness of a light emitted by the element.
0xFFFF The highest perceived lightness of a light emitted by the element.
Table 6.2: Light Lightness Actual states
The perceived lightness of a light (L) is the square root of the measured light intensity (Y):
𝑌
𝐿 = 65535√
65535
Where L is the perceived lightness and Y is the measured light intensity (from 0 to 65535).
Note: The scientific community’s understanding of the exact relationship between the L and Y
variables has changed over time. Appendix A.2 summarizes these changes. For a detailed
history, see “The Basis of Physical Photometry” [17] from the International Commmission
of Illumination (CIE). The CIE works with the International Organization for Standardization
(ISO) to define global standards for various types of illumination. The organization’s
published illumination standards and research publications are available on the CIE
website.
A reverse binding is also defined, meaning that whenever the Light Lightness Actual state of an
element changes, the following calculation shall be performed:
The Light Lightness Actual state shall not wrap around when reaching the maximum or minimum values.
for value of the Generic OnOff state equal to 0x01, when value of the Light Lightness
Default state is equal to 0x0000, or
for value of the Generic OnOff state equal to 0x01, when value of the Light Lightness
Default state is not equal to 0x0000.
A reverse binding is also defined, meaning that whenever the Light Lightness Actual state of an
element changes, the following calculations shall be performed:
for value of the Generic OnPowerUp state equal to 0x01 and Light Lightness Default not
equal to zero, or
for value of the Generic OnPowerUp state equal to 0x01 and Light Lightness Default equal to
zero, or
Light Lightness Actual = last known value (before powered down) of the Light Lightness Actual
for non-zero values of the Light Lightness Actual state that are less than the value of the Light
Lightness Range Min state
for non-zero values of the Light Lightness Actual state that are greater than the value of the
Light Lightness Range Max state
The purpose of the Light Lightness Last state is to store the last known non-zero value of the Light
Lightness Actual state, which is a result of a completed transactional change of the state. This allows
restoring the value of the Light Lightness Actual state to its previous non-zero value when the bound
Generic OnOff state is set back to 1. Depending on the value of the Generic OnPowerUp state (see
Section 3.1.4), It may also be used as a default value when an element is powered up.
Whenever the Light Lightness Actual state is changed with a non-transactional message or a
completed sequence of transactional messages to a non-zero value, the value of the Light Lightness
Last shall be set to the value of the Light Lightness Actual.
The default value for the Light Lightness Last is 0xFFFF. The values for the state are defined in the
following table.
Value Description
0x0000 Prohibited
0x0001–0xFFFE The perceived lightness of a light emitted by the element
0xFFFF The highest perceived lightness of a light emitted by the element
Table 6.3: Light Lightness Last states
Value Description
0x0000 Use the Light Lightness Last value (see Section 6.1.2.3)
0x0001–0xFFFE The perceived lightness of a light emitted by the element
0xFFFF The highest perceived lightness of a light emitted by the element
Table 6.4: Light Lightness Default states
The default value for the Light Lightness Default state is 0x0000.
The Light Lightness Range Min state determines the minimum non-zero lightness an element is
configured to emit. The Light Lightness Range Max state determines the maximum lightness an
element is configured to emit. The values for the state are defined in the following table.
Value Description
0x0000 Prohibited
0x0001–0xFFFF The lightness of an element
Table 6.5: Light Lightness Min and Light Lightness Max states
The default values for the Light Lightness Range Min and Light Lightness Range Max are product
specific and are decided by a vendor. The value of the Light Lightness Range Max state shall be
greater than or equal to the value of the Light Lightness Range Min state.
Value Description
0x0320–0x4E20 The color temperature of white light in Kelvin
All other values Prohibited
Table 6.6: Light CTL Temperature states
Light CTL Temperature = T_MIN + (Generic Level + 32768) * (T_MAX - T_MIN) / 65535
A reverse binding is also defined, meaning that whenever the Light CTL Temperature state of an
element changes, the following calculation shall be performed:
Generic Level = (Light CTL Temperature - T _MIN) * 65535 / (T_MAX - T_MIN) - 32768
In the above formulas, T_MIN and T_MAX are values representing the Light CTL Temperature Range
Min and Light CTL Temperature Range Max states (see Section 6.1.3.3).
The Light CTL Temperature state shall not wrap around when reaching the maximum or minimum
values.
for values of the Generic OnPowerUp state equal to 0x00, or equal to 0x01, or
Light CTL Temperature = last known value (before powered down) for the Light CTL Temperature
for values of the Light CTL Temperature state that are less than the value of the Light CTL
Temperature Range Min state
for values of the Light CTL Temperature state that are greater than the value of the Light CTL
Temperature Range Max state
Value Description
The color temperature of white light in Kelvin (0x0320 = 800 Kelvin, 0x4E20 =
0x0320–0x4E20
20000 Kelvin)
All other values Prohibited
Table 6.7: Light CTL Temperature Default states
The Light CTL Temperature Range Min state determines the minimum color temperature of tunable
white light an element is capable of emitting. The Light CTL Temperature Range Max state
determines the maximum color temperature of tunable white light an element is capable of emitting.
The values for the state are defined in the following table.
Value Description
The color temperature of white light in Kelvin (0x0320 = 800 Kelvin, 0x4E20 =
0x0320–0x4E20
20000 Kelvin)
0xFFFF The color temperature of white light is unknown
All other values Prohibited
Table 6.8: Light CTL Temperature Range Min and Light CTL Temperature Range Max states
Value Description
The 16-bit signed value representing the Delta UV of a tunable white light.
0x8000–0x7FFF
A value of 0x0000 represents the Delta UV = 0 of a tunable white light.
Table 6.9: Light CTL Delta UV states
for values of the Generic OnPowerUp state equal to 0x00, or equal to 0x01, or
Light CTL Delta UV = last known value (before powered down) for the Light CTL Delta UV
Value Description
The 16-bit signed value representing the Delta UV of a tunable white light.
0x8000–0x7FFF
A value of 0x0000 represents the Delta UV = 0 of a tunable white light.
Table 6.10: Light CTL Delta UV Default states
Value Description
0x0000 Light is not emitted by the element
0x0001–0xFFFE The perceived lightness of a light emitted by the element
0xFFFF The highest perceived lightness of a light emitted by the element
Table 6.11: Light CTL Lightness states
The perceived lightness of a light (L) is approximately the square root of the measured light
intensity (Y)
𝑌
𝐿 = 65535√
65535
Where L is the perceived lightness and Y is the measured light intensity (from 0 to 65535).
Note: The scientific community’s understanding of the exact relationship between the L and Y
variables has changed over time. Appendix A.2 summarizes these changes. For a detailed
history, see “The Basis of Physical Photometry” [17] from the International Commmission
of Illumination (CIE). The CIE works with the International Organization for Standardization
(ISO) to define global standards for various types of illumination. The organization’s
published illumination standards and research publications are available on the CIE
website.
A reverse binding is also defined, meaning that whenever the Light CTL Lightness state of an element
changes, the following calculation shall be performed:
where H is the hue of a color light in degrees, as represented by the HSL (Hue / Saturation-Lightness)
model. The values for the state are defined in the following table.
Value Description
0x0000–0xFFFF The 16-bit value representing the hue
Table 6.12: Light HSL Hue states
A reverse binding is also defined, meaning that whenever the Light HSL Hue state of an element
changes, the following calculation shall be performed:
The Light HSL Hue state shall wrap around when reaching the maximum or minimum values.
for values of the Generic OnPowerUp state equal to 0x00, or equal to 0x01, or
Light HSL Hue = last known value (before powered down) for the Light HSL Hue
for values of the Light HSL Hue state that are less than the value of the Light HSL Hue Range
Min state
for values of the Light HSL Hue state that are greater than the value of the Light HSL Hue
Range Max state
Value Description
0x0000–0xFFFF The 16-bit value representing the hue
Table 6.13: Light HSL Hue Default states
The Light HSL Hue Range Min state determines the minimum value of a hue an element is configured
to emit. The Light HSL Hue Range Max state determines the maximum value of a hue an element is
configured to emit. The values for the state are defined in the following table.
Value Description
0x0000–0xFFFF The hue of an element
Table 6.14: Light HSL Hue Min and Light HSL Hue Max states
Value Description
0x0000 The lowest perceived saturation of a color light
0x0001–0xFFFE The 16-bit value representing the saturation of a color light
0xFFFF The highest perceived saturation of a color light
Table 6.15: Light HSL Saturation states
A reverse binding is also defined, meaning that whenever the Light HSL Saturation state of an
element changes, the following calculation shall be performed:
The Light HSL Saturation state shall not wrap around when reaching the maximum or minimum
values.
for values of the Generic OnPowerUp state equal to 0x00, or equal to 0x01, or
Light HSL Saturation = last known value (before powered down) for the Light HSL Saturation
for values of the Light HSL Saturation state that are less than the value of the Light HSL
Saturation Range Min state
for values of the Light HSL Saturation state that are greater than the value of the Light HSL
Saturation Range Max state
Value Description
0x0000–0xFFFF The 16-bit value representing the saturation
Table 6.16: Light HSL Saturation Default states
The Light HSL Saturation Range Min state determines the minimum value of a saturation an element
is configured to emit. The Light HSL Saturation Range Max state determines the maximum value of a
saturation an element is configured to emit.
Value Description
0x0000–0xFFFF The saturation of an element
Table 6.17: Light HSL Saturation Min and Light HSL Saturation Max states
Value Description
0x0000 Light is not emitted by the element
0x0001–0xFFFE The perceived lightness of a light emitted by the element
0xFFFF The highest perceived lightness of a light emitted by the element
Table 6.18: Light HSL Lightness states
The perceived lightness of a light (L) is approximately the square root of the measured light
intensity (Y):
𝑌
𝐿 = 65535√
65535
Where 𝐿 is the perceived lightness and 𝑌 is the measured light intensity (from 0 to 65535).
Note: The scientific community’s understanding of the exact relationship between the L and Y variables
has changed over time. Appendix A.2 summarizes these changes. For a detailed history, see
“The Basis of Physical Photometry” [17] from the International Commmission of Illumination
(CIE). The CIE works with the International Organization for Standardization (ISO) to define
global standards for various types of illumination. The organization’s published illumination
standards and research publications are available on the CIE website.
A reverse binding is also defined, meaning that whenever the Light HSL Lightness state of an element
changes, the following calculation shall be performed:
where CIE1931_x is the x coordinate on the CIE1931 color space chart of a color light, as
represented by the CIE1931 (xy) model. The values for the state are defined in the following table.
Value Description
0x0000 The value of 0 representing the x coordinate of a CIE1931 color light
0x0001–0xFFFE The 16-bit value representing the x coordinate of a CIE1931 color light
0xFFFF The value of 1 representing the x coordinate of a CIE1931 color light
Table 6.19: Light xyL x states
for values of the Generic OnPowerUp state equal to 0x00, or equal to 0x01, or
Light xyL x = last known value (before powered down) for the Light xyL x
for values of the Light xyL x state that are less than the value of the Light xyL x Range Min state
for values of the Light xyL x state that are greater than the value of the Light xyL x Range Max state
Value Description
0x0000–0xFFFF The 16-bit value representing the x
Table 6.20: Light xyL x Default states
The Light xyL x Range Min state determines the minimum value of a Light xyL x state an element is
configured to. The Light xyL x Range Max state determines the maximum value of a Light xyL x an
element is configured to. The values for the state are defined in the following table.
Value Description
0x0000–0xFFFF The value of a Light xyL x state of an element
Table 6.21: Light xyL x Min and Light xyL x Max states
where CIE1931_y is the y coordinate on the CIE1931 color space chart of a color light, as
represented by the CIE1931 (xy) model. The values for the state are defined in the following table.
Value Description
0x0000 The value of 0 representing the y coordinate of a CIE1931 color light
0x0001–0xFFFE The 16-bit value representing the y coordinate of a CIE1931 color light
0xFFFF The value of 1 representing the y coordinate of a CIE1931 color light
Table 6.22: Light xyL y states
for values of the Generic OnPowerUp state equal to 0x00, or equal to 0x01, or
Light xyL y = last known value (before powered down) for the Light xyL y
for values of the Light xyL y state that are less than the value of the Light xyL y Range
Min state
for values of the Light xyL y state that are greater than the value of the Light xyL y Range
Max state
Value Description
0x0000–0xFFFF The 16-bit value representing the y
Table 6.23: Light xyL y Default states
The Light xyL y Range Min state determines the minimum value of a Light xyL y state an element is
configured to. The Light xyL y Range Max state determines the maximum value of a Light xyL y an
element is configured to. The values for the state are defined in the following table.
Value Description
0x0000–0xFFFF The value of a Light xyL y state of an element
Table 6.24: Light xyL y Min and Light xyL y Max states
Value Description
0x0000 Light is not emitted by the element
0x0001–0xFFFE The perceived lightness of a light emitted by the element
0xFFFF The highest perceived lightness of a light emitted by the element.
Table 6.25: Light xyL Lightness states
The perceived lightness of a light (L) is approximately the square root of the measured light intensity (Y)
𝑌
𝐿 = 65535√
65535
Where 𝐿 is the perceived lightness and 𝑌 is the measured light intensity (from 0 to 65535).
Note: The scientific community’s understanding of the exact relationship between the L and Y
variables has changed over time. Appendix A.2 summarizes these changes. For a detailed
history, see “The Basis of Physical Photometry” [17] from the International Commmission
of Illumination (CIE). The CIE works with the International Organization for Standardization
(ISO) to define global standards for various types of illumination. The organization’s
published illumination standards and research publications are available on the CIE
website.
When the Light xyL state is bound to an instance of a Light HSL state the following binding rules shall
be implemented:
Whenever the Light xyL state of an element changes, the following calculation shall be performed:
Whenever the Light HSL state of an element changes, the following calculation shall be performed:
The Light xyL x state and Light xyL y state pair and Light HSL Hue state and Light HSL Saturation
state pair shall be bound. This specification does not define binding formulas since the calculations
depend on the actual implementation of a device (especially the spectral power distribution of a light
source).
Light controllers have inputs for collecting data from sensors, usually by receiving sensor messages
(see Section 4.2).
Light controllers also have settings that are represented as Light Control Setting states exposed via
Lighting Control models (see Section 6.5).
Outputs from light controllers are represented as states that are bound to other states within an
element. For example, a controller that controls light level has its output state bound with the Light
Lightness Linear state (see Section 6.1.2.1).
1. Off – the controller is turned off and does not control lighting
2. Standby – the controller is turned on and awaits an event from an occupancy sensor or a
manual switch
3. Fade On – the controller has been triggered and gradually transitions to the Run phase,
gradually dimming the lights up.
4. Run – the lights are on and the timer counts down (but may be retriggered by a sensor or a
switch event)
5. Fade – the Run timer has expired and the controller gradually transitions to the Prolong phase
6. Prolong – the lights are at a lower level and the timer counts down (but may be retriggered by
a sensor or a switch event)
During the Standby, Run, and Prolong phases, the light level maybe a preset level or a level stabilized
with an ambient light level sensor.
The controller has 5 inputs to the Light LC state machine (see Section 6.2.5): Mode, Timer,
Occupancy Mode, Occupancy and Light OnOff, and one input to the Light LC PI Feedback Regulator:
Ambient LuxLevel Level.
The Mode input is represented by the Light LC Mode state (see Section 6.2.3.1). The state is
controlled by Light LC Mode messages (see Section 6.3.5.1). The state is bound to the Light
Lightness Linear state and changes when there is an unsolicited change of the bound Light Lightness
Linear state.
The Timer is managed by the state machine. It is set to a starting value (time in seconds) and counts
down to zero.
The Occupancy Mode input is represented by the Light LC Occupancy Mode state (see Section
6.2.3.2). The state is controlled by Light LC Occupancy Mode messages (see Section 6.3.5.2).
The Occupancy Input is represented by the Light LC Occupancy state (see Section 6.2.3.4) and
accepts data reported by one or more sensors reporting the Occupancy Property [13] with Sensor
Status messages (see Section 4.2.14).
The Light OnOff input is represented by the Light LC Light OnOff state (see Section 6.2.3.3). The
state is controlled by Light LC Light OnOff messages (see Section 6.3.5.3) and can also be changed
by the Light LC state machine (see Section 6.2.5).
The Ambient LuxLevel Input is represented by the Light LC Ambient LuxLevel state (see Section
6.2.3.4) and accepts data reported by zero or more sensors reporting the Ambient LuxLevel Property
[13] with Sensor Status messages (see Section 4.2.14).
The Output from the Light LC controller is the Light LC Linear Output state (see Section 6.2.3.6) that
is conditionally bound to the Light Lightness Linear state of an element (see Section 6.1.2.1).
Value Description
0b0 The controller is turned off. The binding with the Light Lightness state is disabled.
0b1 The controller is turned on. The binding with the Light Lightness state is enabled.
Table 6.26: Light LC Mode states
Value 0b0 represents the controller is turned off and the binding between the Light LC Linear Output
state (see Section 6.2.3.6) and the Light Lightness Linear state (see Section 6.1.2.1) shall be
disabled.
Value 0b1 represents the controller is turned on and the binding between the Light LC Linear Output
state (see Section 6.2.3.6) and the Light Lightness Linear state (see Section 6.1.2.1) shall be
enabled.
The Light LC Mode state is bound to an instance of the Light Lightness Linear state (see Section
6.1.2.1). Upon an unsolicited change of the Light Lightness Linear state (i.e., a change that is not a
result of a change of the bound Light LC Linear Output state, see Section 6.2.3.6), the following
operation shall be performed, disabling the binding between the Light LC Linear Output and the Light
Lightness Linear state:
Value Description
0b0 The controller does not transition from a standby state when occupancy is reported.
0b1 The controller may transition from a standby state when occupancy is reported.
Table 6.27: Light LC Occupancy Mode states
Value 0b0 represents the controller shall not transition from the standby state when an occupancy
sensor reports occupancy.
Value 0b1 represents the controller may transition from the standby state when an occupancy sensor
reports occupancy.
Value Description
0b0 Off or Standby
0b1 Occupancy or Run or Prolong
Table 6.28: Light LC Light OnOff states
A reverse binding is also defined, meaning that whenever the Light LC Light OnOff state of an
element changes, the following calculations shall be performed:
Value Description
0b0 There is no occupancy reported by occupancy sensors.
0b1 There has been occupancy reported by occupancy sensors.
Table 6.29: Light LC Occupancy states
This state has a concept of time elapsing, meaning it notifies the Light LC state machine (see Section
6.2.5) on every change, including a change to the same value.
Value Description
0x000000–0xFFFFFF Illuminance from 0.00 to 167772.16 lux
Table 6.30: Light LC Ambient LuxLevel states
This state has a concept of time elapsing, meaning it notifies the Light LC state machine (see Section
6.2.5) on every change, including a change to the same value.
Value Description
0x0000 Light is not emitted by the element.
0x0001–0xFFFE The lightness of a light emitted by the element.
0xFFFF The highest lightness of a light emitted by the element.
Table 6.31: Light LC Linear Output states
The linear lightness of a light is equal to the measured light intensity (Y), from 0 to 65535.
If the Light LC Mode state (see Section 6.2.3.1) is set to 0b1, the binding is enabled and upon a
change of the Light LC Linear Output state, the following operation shall be performed:
If the Light LC Mode state (see Section 6.2.3.1) is set to 0b0, the binding is disabled (i.e., upon a
change of the Light LC Linear Output state, no operation on the Light Lightness Linear state is
performed).
the Light Lightness Prolong state (see Section 6.2.4.9). The state is represented by the Light Control
Time Fade Property [13].
The values for the state are defined in the following table.
Value Description
0x0000–0xFFFF Illuminance from 0 to 65535 lux
Table 6.32: Light LC Ambient LuxLevel On states
The state is represented by the Light Control Ambient LuxLevel On Property [13].
The values for the state are defined in the following table.
Value Description
0x0000–0xFFFF Illuminance from 0 to 65535 lux
Table 6.33: Light LC Ambient LuxLevel Prolong states
The state is represented by the Light Control Ambient LuxLevel Prolong Property [13].
The values for the state are defined in the following table.
Value Description
0x0000–0xFFFF Illuminance from 0 to 65535 lux
Table 6.34: Light LC Ambient LuxLevel Standby states
The state is represented by the Light Control Ambient LuxLevel Standby Property [13].
The values for the state are defined in the following table. The default value is 250.0.
Value Description
0.0–1000.0 Integral coefficient when increasing output
All other values Prohibited
Table 6.35: Light LC Regulator Kiu states
The state is represented by the Light Control Regulator Kiu Property [13].
Note: With the default value of 100.0 and 400 lux value on the regulator input the output will
reach the value of 40000 (2/3 of the range) within approximately 1s.
The values for the state are defined in the following table. The default value is 25.0.
Value Description
0.0–1000.0 Integral coefficient when decreasing output
All other values Prohibited
Table 6.36: Light LC Regulator Kid states
The state is represented by the Light Control Regulator Kid Property [13].
The values for the state are defined in the following table. The default value is 80.0.
Value Description
0.0–1000.0 Proportional coefficient when increasing output
All other values Prohibited
Table 6.37: Light LC Regulator Kpu states
The state is represented by the Light Control Regulator Kpu Property [13].
The values for the state are defined in the following table. The default value is 80.0.
Value Description
0.0–1000.0 Proportional coefficient when decreasing output
All other values Prohibited
Table 6.38: Light LC Regulator Kpd states
The state is represented by the Light Control Regulator Kpd Property [13].
The values for the state are defined in the following table. The default value is 2.0.
Value Description
0.0–100.0 Regulator accuracy (percentage)
All other values Prohibited
Table 6.39: Light LC Regulator Accuracy states
The state is represented by the Light Control Regulator Accuracy Property [13].
Figure 6.6 and Figure 6.7 illustrate the possible states and transitions of the state machine.
• Standby: no occupancy is detected; the lights are set to the level defined by the Light
Lightness Standby state (see Section 6.2.4.10).
• Fade On: occupancy has been detected; the lights are transitioning to the level defined by the
Light Lightness On state (see Section 6.2.4.8).
• Run: occupancy is not detected; the lights stay at the level defined by the Light Lightness On
state (see Section 6.2.4.8).
• Fade: occupancy is not detected; the lights are transitioning to the level defined by the Light
Lightness Prolong state (see Section 6.2.4.9).
• Prolong: occupancy is not detected; the lights stay at the level defined by the Light Lightness
Prolong state (see Section 6.2.4.9).
• Fade Standby Auto: occupancy is not detected; the lights are transitioning to the level
defined by the Light Lightness Standby state (see Section 6.2.4.10) using the Light LC Time
Fade Standby Auto time setting.
• Fade Standby Manual: an external event (such as receiving a Light LC Light OnOff Set
message) has been received; the lights are transitioning to the level defined by the Light
Lightness Standby state (see Section 6.2.4.10) using the Light LC Time Fade Standby
Manual time setting.
• Mode On: the value of the Light LC Mode state has changed from 0b0 (Off) to 0b1 (On).
• Mode Off: the value of the Light LC Mode state has changed from 0b1 (On) to 0b0 (Off).
• Occupancy On: the value of the Light LC Occupancy state has been set to 0b1 (Occupancy)
• Light On: the value of the Light LC Light OnOff state has been set to 0b1 (On).
• Light Off: the value of the Light LC Light OnOff state has been set to 0b0 (Off).
• Timer Off: the value of the countdown Time Counter has reached 0
• Auto Occupancy: The value of the Light LC Occupancy Mode state is 0b1 and the value of
the Light LC Ambient LuxLevel state is less than the value of the Light LC Ambient LuxLevel
On state.
• No Auto Occupancy: The value of the Light LC Occupancy Mode state is equal to 0b0 or the
value of the Light LC Ambient LuxLevel state is greater or equal to the value of the Light LC
Ambient LuxLevel On state.
• Set Light LC Light OnOff to 0b0 or 0b1: sets the Light LC Light OnOff state. If the Next State
is Fade On, Fade, Fade Standby Auto, Fade Standby Manual, the value provided is the target
value of the Light LC OnOff state.
• Set Timer to Tn: Starts an internal countdown timer. The initial value Tn is in seconds. The
timer runs down to 0 and can be restarted at any time. After reaching 0, the timer generates a
Timer Off event.
Tn Value
T1 Light LC Time_Fade_On
T2 Light LC Time_Run_On
T3 Light LC Time_Fade
T4 Light LC Time_Prolong
T5 Light LC Time_Fade_Standby_Auto
T6 Light LC Time_Fade_Standby_Manual
Table 6.40: Tn values for Set Timer
If the transition is started as a result of receiving the Light LC Light OnOff Set or Light LC Light Set
Unacknowledged message (see Section 6.5.1.5.2), and the Transition Time field is present in this
message, it shall be used as the Transition Time. Otherwise the Transition Time for each transition is
defined in the table below:
The Initial Lightness is the initial value of the Lightness Out state when the transition to the target
state starts.
The Initial LuxLevel is the initial value of the LuxLevel Out state when the transition to the target state
starts.
E adjustment error
U regulator input
L regulator output
I Internal sum
D Accuracy
The values T and I are within the ranges defined in the following table:
Variable Values
I 0–65535
T 0.01–0.1 s
Table 6.52: PI Feedback Regulator variables
The response to the Light Lightness Get message is a Light Lightness Status message.
The response to the Light Lightness Set message is a Light Lightness Status message.
Size
Field Notes
(octets)
Lightness 2 The target value of the Light Lightness Actual state.
TID 1 Transaction Identifier
Transition Time 1 Format as defined in Section 3.1.3. (Optional)
Message execution delay in 5 millisecond steps.
Delay 1
(C.1)
C.1: If the Transition Time field is present, the Delay field shall also be present; otherwise these fields
shall not be present.
Table 6.53: Light Lightness Set message parameters
The Lightness field identifies the Light Lightness Actual state of the element (see Section 6.1.2.1).
The TID field is a transaction identifier indicating whether the message is a new message or a
retransmission of a previously sent message, as described in Section 6.6.1.2.2.
If present, the Transition Time field identifies the time an element will take to transition to the target
state from the present state (see Section 1.4.1.1). The format of the Transition Time field matches the
format of the Generic Default Transition Time state, as defined in Section 3.1.3. Only values of 0x00
to 0x3E shall be used to specify the Transition Number of Steps.
The Delay field shall be present when the Transition Time field is present. It identifies the message
execution delay, representing a time interval between receiving the message by a model and
executing the associated model behaviors.
Size
Field Notes
(octets)
Lightness 2 The target value of the Light Lightness Actual state.
TID 1 Transaction Identifier
Transition Time 1 Format as defined in Section 3.1.3. (Optional)
Message execution delay in 5 millisecond steps.
Delay 1
(C.1)
C.1: If the Transition Time field is present, the Delay field shall also be present; otherwise these fields
shall not be present.
Table 6.54: Light Lightness Set Unacknowledged message parameters
The Lightness field identifies the Light Lightness Actual state of the element (see Section 6.1.2.1).
The TID field is a transaction identifier indicating whether the message is a new message or a
retransmission of a previously sent message, as described in Section 6.6.1.2.2.
If present, the Transition Time field identifies the time an element will take to transition to the target
state from the present state (see Section 1.4.1.1). The format of the Transition Time field matches the
format of the Generic Default Transition Time state, as defined in Section 3.1.3. Only values of 0x00
to 0x3E shall be used to specify the Transition Number of Steps.
The Delay field shall be present when the Transition Time field is present. It identifies the message
execution delay, representing a time interval between receiving the message by a model and
executing the associated model behaviors.
Size
Field Notes
(octets)
Present Lightness 2 The present value of the Light Lightness Actual state.
Target Lightness 2 The target value of the Light Lightness Actual state. (Optional)
Remaining Time 1 Format as defined in Section 3.1.3. (C.1)
C.1: If the Target Lightness field is present, the Remaining Time field shall also be present; otherwise
these fields shall not be present.
Table 6.55: Light Lightness Status message parameters
The Present Lightness field identifies the present Light Lightness Actual state of the element (see
Section 6.1.2.1).
When an element is in the process of changing the Light Lightness Actual state, the Target Lightness
field identifies the target Light Lightness Actual state that the element is to reach (see Section
6.1.2.1).
When an element is not in the process of changing the Light Lightness Actual state, the Target
Lightness field shall be omitted.
If present, the Remaining Time field identifies the time it will take the element to complete the
transition to the target Light Lightness Actual state of the element (see Section 1.4.1.1 and Section
6.1.2.1).
The response to the Light Lightness Linear Get message is a Light Lightness Linear Status message.
The response to the Light Lightness Linear Set message is a Light Lightness Linear Status message.
Size
Field Notes
(octets)
Lightness 2 The target value of the Light Lightness Linear state.
TID 1 Transaction Identifier
Transition Time 1 Format as defined in Section 3.1.3. (Optional)
Message execution delay in 5 millisecond steps.
Delay 1
(C.1)
C.1: If the Transition Time field is present, the Delay field shall also be present; otherwise these fields
shall not be present.
Table 6.56: Light Lightness Linear Set message parameters
The Lightness field identifies the Light Lightness Linear state of the element (see Section 6.1.2.1).
The TID field is a transaction identifier indicating whether the message is a new message or a
retransmission of a previously sent message, as described in Section 6.4.1.2.5.
If present, the Transition Time field identifies the time an element will take to transition to the target
state from the present state (see Section 1.4.1.1). The format of the Transition Time field matches the
format of the Generic Default Transition Time state, as defined in Section 3.1.3. Only values of 0x00
to 0x3E shall be used to specify the Transition Number of Steps.
The Delay field shall be present when the Transition Time field is present. It identifies the message
execution delay, representing a time interval between receiving the message by a model and
executing the associated model behaviors.
Size
Field Notes
(octets)
Lightness 2 The target value of the Light Lightness Linear state.
TID 1 Transaction Identifier
Transition Time 1 Format as defined in Section 3.1.3. (Optional)
Message execution delay in 5 millisecond steps.
Delay 1
(C.1)
C.1: If the Transition Time field is present, the Delay field shall also be present; otherwise these fields
shall not be present.
Table 6.57: Light Lightness Linear Set Unacknowledged message parameters
The Lightness field identifies the Light Lightness Linear state of the element (see Section 6.1.2.1).
The TID field is a transaction identifier indicating whether the message is a new message or a
retransmission of a previously sent message, as described in Section 6.4.1.2.5.
If present, the Transition Time field identifies the time an element will take to transition to the target
state from the present state (see Section 1.4.1.1). The format of the Transition Time field matches the
format of the Generic Default Transition Time state, as defined in Section 3.1.3. Only values of 0x00
to 0x3E shall be used to specify the Transition Number of Steps.
The Delay field shall be present when the Transition Time field is present. It identifies the message
execution delay, representing a time interval between receiving the message by a model and
executing the associated model behaviors.
Size
Field Notes
(octets)
Present Lightness 2 The present value of the Light Lightness Linear state
Target Lightness 2 The target value of the Light Lightness Linear state (Optional)
Remaining Time 1 Format as defined in Section 3.1.3 (C.1)
C.1: If the Target Lightness field is present, the Remaining Time field shall also be present; otherwise
these fields shall not be present.
Table 6.58: Light Lightness Linear Status message parameters
The Present Lightness field identifies the present Light Lightness Linear state of the element (see
Section 6.1.2.1).
When an element is in the process of changing the Light Lightness Linear state, the Target Lightness
field identifies the target Light Lightness Linear state that the element is to reach (see Section
6.1.2.1).
When an element is not in the process of changing the Light Lightness Linear state, the Target
Lightness field shall be omitted.
If present, the Remaining Time field identifies the time it will take the element to complete the
transition to the target Light Lightness Linear state of the element (see Section 1.4.1.1 and Section
6.1.2.1).
The response to the Light Lightness Last Get message is a Light Lightness Last Status message.
Size
Field Notes
(octets)
Lightness 2 The value of the Light Lightness Last
Table 6.59: Light Lightness Last Status message parameters
The Lightness field identifies the Light Lightness Last state of the element (see Section 6.1.2.1).
The response to the Light Lightness Default Get message is a Light Lightness Default Status
message.
The response to the Light Lightness Default Set message is a Light Lightness Default Status
message.
Size
Field Notes
(octets)
Lightness 2 The value of the Light Lightness Default state
Table 6.60: Light Lightness Default Set message parameters
The Lightness field identifies the Light Lightness Default state of the element (see Section 6.1.2.4).
Size
Field Notes
(octets)
Lightness 2 The value of the Light Lightness Default state
Table 6.61: Light Lightness Default Set Unacknowledged message parameters
The Lightness field identifies the Light Lightness Default state of the element (see Section 6.1.2.4).
Size
Field Notes
(octets)
Lightness 2 The value of the Light Lightness Default state
Table 6.62: Light Lightness Default Status message parameters
The Lightness field identifies the Light Lightness Default state of the element (see Section 6.1.2.4).
The response to the Light Lightness Range Get message is a Light Lightness Range Status
message.
The response to the Light Lightness Range Get message is a Light Lightness Range Status
message.
Size
Field Notes
(octets)
The value of the Lightness Range Min field of the Light Lightness
Range Min 2
Range state
The value of the Lightness Range Max field of the Light Lightness
Range Max 2
Range state
Table 6.63: Light Lightness Range Set message parameters
The Range Min field identifies the Lightness Range Min field of the Light Lightness Range state of the
element (see Section 6.1.2.5).
The Range Max field identifies the Lightness Range Max field of the Light Lightness Range state of
the element (see Section 6.1.2.5).
The value of the Range Max field shall be greater or equal to the value of the Range Min field.
Size
Field Notes
(octets)
The value of the Lightness Range Min field of the Light Lightness
Range Min 2
Range state
The value of the Lightness Range Max field of the Light Lightness
Range Max 2
Range state
Table 6.64: Light Lightness Range Set Unacknowledged message parameters
The Range Min field identifies the Lightness Range Min field of the Light Lightness Range state of the
element (see Section 6.1.2.5).
The Range Max field identifies the Lightness Range Max field of the Light Lightness Range state of
the element (see Section 6.1.2.5).
The value of the Range Max field shall be greater or equal to the value of the Range Min field.
Size
Field Notes
(octets)
Status Code 1 Status Code for the requesting message.
The value of the Lightness Range Min field of the Light Lightness
Range Min 2
Range state
The value of the Lightness Range Max field of the Light Lightness
Range Max 2
Range state
Table 6.65: Light Lightness Range Status message parameters
The Status Code field identifies the Status Code for the last operation on the Light Lightness Range
state. The allowed values for status codes and their meanings are documented in Section 7.2.
The Range Min field identifies the Lightness Range Min field of the Light Lightness Range state of the
element (see Section 6.1.2.5).
The Range Max field identifies the Lightness Range Max field of the Light Lightness Range state of
the element (see Section 6.1.2.5).
The response to the Light CTL Get message is a Light CTL Status message.
The response to the Light CTL Set message is a Light CTL Status message.
Size
Field Notes
(octets)
CTL Lightness 2 The target value of the Light CTL Lightness state.
CTL Temperature 2 The target value of the Light CTL Temperature state.
CTL Delta UV 2 The target value of the Light CTL Delta UV state.
TID 1 Transaction Identifier
Transition Time 1 Format as defined in Section 3.1.3. (Optional)
Delay 1 Message execution delay in 5 millisecond steps. (C.1)
C.1: If the Transition Time field is present, the Delay field shall also be present; otherwise these fields
shall not be present.
Table 6.66: Light CTL Set message parameters
The CTL Lightness field identifies the Light CTL Lightness state of the element.
The CTL Temperature field identifies the Light CTL Temperature state of the element.
The CTL Delta UV field identifies the Light CTL Delta UV state of the element.
The TID field is a transaction identifier indicating whether the message is a new message or a
retransmission of a previously sent message, as described in Section 6.6.2.2.2.
If present, the Transition Time field identifies the time an element will take to transition to the target
state from the present state (see Section 1.4.1.1). The format of the Transition Time field matches the
format of the Generic Default Transition Time state, as defined in Section 3.1.3. Only values of 0x00
to 0x3E shall be used to specify the Transition Number of Steps.
The Delay field shall be present when the Transition Time field is present. It identifies the message
execution delay, representing a time interval between receiving the message by a model and
executing the associated model behaviors.
Size
Field Notes
(octets)
CTL Lightness 2 The target value of the Light CTL Lightness state.
CTL Temperature 2 The target value of the Light CTL Temperature state.
CTL Delta UV 2 The target value of the Light CTL Delta UV state.
TID 1 Transaction Identifier
Transition Time 1 Format as defined in Section 3.1.3. (Optional)
Delay 1 Message execution delay in 5 millisecond steps. (C.1)
C.1: If the Transition Time field is present, the Delay field shall also be present; otherwise these fields
shall not be present.
Table 6.67: Light CTL Set Unacknowledged message parameters
The CTL Lightness field identifies the Light CTL Lightness state of the element.
The CTL Temperature field identifies the Light CTL Temperature state of the element.
The CTL Delta UV field identifies the Light CTL Delta UV state of the element.
The TID field is a transaction identifier indicating whether the message is a new message or a
retransmission of a previously sent message, as described in Section 6.6.2.2.2.
If present, the Transition Time field identifies the time an element will take to transition to the target
state from the present state (see Section 1.4.1.1). The format of the Transition Time field matches the
format of the Generic Default Transition Time state, as defined in Section 3.1.3. Only values of 0x00
to 0x3E shall be used to specify the Transition Number of Steps.
The Delay field shall be present when the Transition Time field is present. It identifies the message
execution delay, representing a time interval between receiving the message by a model and
executing the associated model behaviors.
Size
Field Notes
(octets)
Present CTL Lightness 2 The present value of the Light CTL Lightness state
Present CTL Temperature 2 The present value of the Light CTL Temperature state
Target CTL Lightness 2 The target value of the Light CTL Lightness state (Optional)
Target CTL Temperature 2 The target value of the Light CTL Temperature state (C.1)
Remaining Time 1 Format as defined in Section 3.1.3 (C.1)
C.1: If the Target CTL Lightness field is present, the Target CTL Temperature and the Remaining
Time fields shall also be present; otherwise these fields shall not be present.
Table 6.68: Light CTL Status message parameters
The Present CTL Lightness field identifies the present Light CTL Lightness state of the element (see
Section 6.1.3.4).
The Present CTL Temperature field identifies the present Light CTL Temperature state of the node
(see Section 6.1.3.1).
If present, the Target CTL Lightness field identifies the target Light CTL Lightness state that the node
is to reach (see Section 6.1.3.4).
If present, the Target CTL Temperature field identifies the target Light CTL Temperature state that the
element is to reach (see Section 6.1.3.1).
If present, the Remaining Time field identifies the time it will take the element to complete the
transition to the target Light CTL state of the element (see Section 1.4.1.1 and Section 6.1.3).
The response to the Light CTL Temperature Get message is a Light CTL Temperature Status
message.
The response to the Light CTL Temperature Set message is a Light CTL Temperature Status
message.
Size
Field Notes
(octets)
CTL Temperature 2 The target value of the Light CTL Temperature state.
CTL Delta UV 2 The target value of the Light CTL Delta UV state.
TID 1 Transaction Identifier
Size
Field Notes
(octets)
Transition Time 1 Format as defined in Section 3.1.3. (Optional)
Delay 1 Message execution delay in 5 millisecond steps. (C.1)
C.1: If the Transition Time field is present, the Delay field shall also be present; otherwise these fields
shall not be present.
Table 6.69: Light CTL Temperature Set message parameters
The CTL Temperature field identifies the Light CTL Temperature state of the element.
The CTL Delta UV field identifies the Light CTL Delta UV state of the element.
The TID field is a transaction identifier indicating whether the message is a new message or a
retransmission of a previously sent message, as described in Section 6.6.2.4.2.
If present, the Transition Time field identifies the time an element will take to transition to the target
state from the present state (see Section 1.4.1.1). The format of the Transition Time field matches the
format of the Generic Default Transition Time state as defined in Section 3.1.3. Only values of 0x00 to
0x3E shall be used to specify the Transition Number of Steps.
The Delay field shall be present when the Transition Time field is present. It identifies the message
execution delay, representing a time interval between receiving the message by a model and
executing the associated model behaviors.
Size
Field Notes
(octets)
CTL Temperature 2 The target value of the Light CTL Temperature state.
CTL Delta UV 2 The target value of the Light CTL Delta UV state.
TID 1 Transaction Identifier
Transition Time 1 Format as defined in Section 3.1.3. (Optional)
Delay 1 Message execution delay in 5 millisecond steps. (C.1)
C.1: If the Transition Time field is present, the Delay field shall also be present; otherwise these fields
shall not be present.
Table 6.70: Light CTL Temperature Set Unacknowledged message parameters
The CTL Temperature field identifies the Light CTL Temperature state of the element.
The CTL Delta UV field identifies the Light CTL Delta UV state of the element.
The TID field is a transaction identifier indicating whether the message is a new message or a
retransmission of a previously sent message, as described in Section 6.6.2.4.2.
If present, the Transition Time field identifies the time an element will take to transition to the target
state from the present state (see Section 1.4.1.1). The format of the Transition Time field matches the
format of the Generic Default Transition Time state, as defined in Section 3.1.3. Only values of 0x00
to 0x3E shall be used to specify the Transition Number of Steps.
The Delay field shall be present when the Transition Time field is present. It identifies the message
execution delay, representing a time interval between receiving the message by a model and
executing the associated model behaviors.
Size
Field Notes
(octets)
Present CTL
2 The present value of the Light CTL Temperature state
Temperature
Present CTL Delta UV 2 The present value of the Light CTL Delta UV state
The target value of the Light CTL Temperature state
Target CTL Temperature 2
(Optional)
Target CTL Delta UV 2 The target value of the Light CTL Delta UV state (C.1)
Remaining Time 1 Format as defined in Section 3.1.3 (C.1)
C.1: If the Target CTL Temperature field is present, the Target CTL Delta UV field and the Remaining
Time field shall also be present; otherwise these fields shall not be present.
Table 6.71: Light CTL Temperature Status message parameters
The Present CTL Temperature field identifies the present Light CTL Temperature state of the element
(see Section 6.1.3.1).
The Present CTL Delta UV field identifies the present Light CTL Delta UV state of the element (see
Section 6.1.3.4).
If present, the Target CTL Temperature field identifies the target Light CTL Temperature state that the
element is to reach (see Section 6.1.3.1).
If present, the Target CTL Delta UV field identifies the target Light CTL Delta UV state that the
element is to reach (see Section 6.1.3.4).
If present, the Remaining Time field identifies the time it will take the element to complete the
transition to the target state of the element (see Section 1.4.1.1 and Section 6.1.3).
The response to the Light CTL Temperature Range Get message is a Light CTL Temperature Range
Status message.
The response to the Light CTL Temperature Range Get message is a Light CTL Temperature Range
Status message.
Size
Field Notes
(octets)
The value of the Temperature Range Min field of the Light CTL
Range Min 2
Temperature Range state
The value of the Temperature Range Max field of the Light CTL
Range Max 2
Temperature Range state
Table 6.72: Light CTL Temperature Range Set message parameters
The Range Min field identifies the Temperature Range Min field of the Light CTL Temperature Range
state of the element (see Section 6.1.3.3).
The Range Max field identifies the Temperature Range Max field of the Light CTL Temperature
Range state of the element (see Section 6.1.3.3).
The value of the Range Max field shall be greater or equal to the value of the Range Min field.
Size
Field Notes
(octets)
The value of the Temperature Range Min field of the Light CTL
Range Min 2
Temperature Range state
The value of the Temperature Range Max field of the Light CTL
Range Max 2
Temperature Range state
Table 6.73: Light CTL Temperature Range Set Unacknowledged message parameters
The Range Min field identifies the Temperature Range Min field of the Light CTL Temperature Range
state of the element (see Section 6.1.3.3).
The Range Max field identifies the Temperature Range Max field of the Light CTL Temperature
Range state of the element (see Section 6.1.3.3).
The value of the Range Max field shall be greater or equal to the value of the Range Min field.
Size
Field Notes
(octets)
Status Code 1 Status Code for the requesting message.
The value of the Temperature Range Min field of the Light CTL
Range Min 2
Temperature Range state
The value of the Temperature Range Max field of the Light CTL
Range Max 2
Temperature Range state
Table 6.74: Light CTL Temperature Range Status message parameters
The Status Code field identifies the Status Code for the last operation on the Light CTL Temperature
Range state. The allowed values for status codes and their meanings are documented in Section 7.2.
The Range Min field identifies the Temperature Range Min field of the Light CTL Temperature Range
state of the element (see Section 6.1.3.3).
The Range Max field identifies the Temperature Range Max field of the Light CTL Temperature
Range state of the element (see Section 6.1.3.3).
The response to the Light CTL Default Get message is a Light CTL Default Status message.
The response to the Light CTL Set message is a Light CTL Status message.
Size
Field Notes
(octets)
Lightness 2 The value of the Light Lightness Default state
Temperature 2 The value of the Light CTL Temperature Default state
Delta UV 2 The value of the Light CTL Delta UV Default state
Table 6.75: Light CTL Default Set message parameters
The Lightness field identifies the Light Lightness Default state of the element.
The Temperature field identifies the Light CTL Temperature Default state of the element.
The Delta UV field identifies the Light CTL Delta UV Default state of the element.
Size
Field Notes
(octets)
Lightness 2 The value of the Light Lightness Default state
Temperature 2 The value of the Light CTL Temperature Default state
Delta UV 2 The value of the Light CTL Delta UV Default state
Table 6.76: Light CTL Default Set Unacknowledged message parameters
The Lightness field identifies the Light Lightness Default state of the element.
The Temperature field identifies the Light CTL Temperature Default state of the element.
The Delta UV field identifies the Light CTL Delta UV Default state of the element.
Size
Field Notes
(octets)
Lightness 2 The value of the Light Lightness Default state
Temperature 2 The value of the Light CTL Temperature Default state
Delta UV 2 The value of the Light CTL Delta UV Default state
Table 6.77: Light CTL Default Status message parameters
The Lightness field identifies the Light Lightness Default state of the element.
The Temperature field identifies the Light CTL Temperature Default state of the element.
The Delta UV field identifies the Light CTL Delta UV Default state of the element.
The response to the Light HSL Get message is a Light HSL Status message.
The response to the Light HSL Set message is a Light HSL Status message.
Size
Field Notes
(octets)
HSL Lightness 2 The target value of the Light HSL Lightness state
HSL Hue 2 The target value of the Light HSL Hue state
HSL Saturation 2 The target value of the Light HSL Saturation state
TID 1 Transaction Identifier
Transition Time 1 Format as defined in Section 3.1.3. (Optional)
Delay 1 Message execution delay in 5 millisecond steps (C.1)
C.1: If the Transition Time field is present, the Delay field shall also be present; otherwise these fields
shall not be present.
Table 6.78: Light HSL Set message parameters
The HSL Lightness field identifies the Light HSL Lightness state of the element.
The HSL Hue field identifies the Light HSL Hue state of the element.
The HSL Saturation field identifies the Light HSL Saturation state of the element.
The TID field is a transaction identifier indicating whether the message is a new message or a
retransmission of a previously sent message, as described in Section 6.6.3.2.2.
If present, the Transition Time field identifies the time an element will take to transition to the target
state from the present state (see Section 1.4.1.1). The format of the Transition Time field matches the
format of the Generic Default Transition Time state, as defined in Section 3.1.3. Only values of 0x00
to 0x3E shall be used to specify the Transition Number of Steps.
The Delay field shall be present when the Transition Time field is present. It identifies the message
execution delay, representing a time interval between receiving the message by a model and
executing the associated model behaviors.
Size
Field Notes
(octets)
HSL Lightness 2 The target value of the Light HSL Lightness state
HSL Hue 2 The target value of the Light HSL Hue state
HSL Saturation 2 The target Light HSL Saturation state
TID 1 Transaction Identifier
Transition Time 1 Format as defined in Section 3.1.3. (Optional)
Delay 1 Message execution delay in 5 millisecond steps (C.1)
C.1: If the Transition Time field is present, the Delay field shall also be present; otherwise these fields
shall not be present.
Table 6.79: Light HSL Set Unacknowledged message parameters
The HSL Lightness field identifies the Light HSL Lightness state of the element.
The HSL Hue field identifies the Light HSL Hue state of the element.
The HSL Saturation field identifies the Light HSL Saturation state of the element.
The TID field is a transaction identifier indicating whether the message is a new message or a
retransmission of a previously sent message, as described in Section 6.6.3.2.2.
If present, the Transition Time field identifies the time an element will take to transition to the target
state from the present state (see Section 1.4.1.1). The format of the Transition Time field matches the
format of the Generic Default Transition Time state, as defined in Section 3.1.3. Only values of 0x00
to 0x3E shall be used to specify the Transition Number of Steps.
The Delay field shall be present when the Transition Time field is present. It identifies the message
execution delay, representing a time interval between receiving the message by a model and
executing the associated model behaviors.
Size
Field Notes
(octets)
HSL Lightness 2 The present value of the Light HSL Lightness state
HSL Hue 2 The present value of the Light HSL Hue state
HSL Saturation 2 The present value of the Light HSL Saturation state
Remaining Time 1 Format as defined in Section 3.1.3. (Optional)
Table 6.80: Light HSL Status message parameters
The HSL Lightness field identifies the present Light HSL Lightness state of the element (see
Section 6.1.4.5).
The HSL Hue field identifies the present Light HSL Hue state of the element (see Section 6.1.4.1).
The HSL Saturation field identifies the present Light HSL Saturation state of the element (see
Section 6.1.4.2).
If present, the Remaining Time field identifies the time it will take the element to complete the
transition to the target state of the element (see Section 1.4.1.1).
For example, it may be used when an element reports it is in transition to target Light HSL Lightness
(see Section 6.1.4.5), Light HSL Hue (see Section 6.1.4.1), or Light HSL Saturation (see Section
6.1.4.2) states by including a positive Remaining Time field in the Light HSL Status message (see
Section 6.3.3.4), the Light Lightness Status message (see Section 6.3.1.4), or the Light xyL Status
message (see Section 6.3.4.4).
The response to the Light HSL Target Get message is a Light HSL Target Status message.
Size
Field Notes
(octets)
HSL Lightness Target 2 The target value of the Light HSL Lightness state
HSL Hue Target 2 The target value of the Light HSL Hue state
HSL Saturation Target 2 The target Light HSL Saturation state
Remaining Time 1 Format as defined in Section 3.1.3. (Optional)
Table 6.81: Light HSL Target Status message parameters
The HSL Lightness Target field identifies the target Light HSL Lightness state of the element (see
Section 6.1.4.5).
The HSL Hue Target field identifies the target Light HSL Hue state of the element (see
Section 6.1.4.1).
The HSL Saturation Target field identifies the target Light HSL Saturation state of the element (see
Section 6.1.4.2).
If present, the Remaining Time field identifies the time it will take the element to complete the
transition to the target state of the element.
The response to the Light HSL Hue Get message is a Light HSL Hue Status message.
The response to the Light HSL Hue Set message is a Light HSL Hue Status message.
Size
Field Notes
(octets)
Hue 2 The target value of the Light HSL Hue state.
TID 1 Transaction Identifier
Transition Time 1 Format as defined in Section 3.1.3. (Optional)
Delay 1 Message execution delay in 5 millisecond steps. (C.1)
C.1: If the Transition Time field is present, the Delay field shall also be present; otherwise these fields
shall not be present.
Table 6.82: Light HSL Hue Set message parameters
The Hue field identifies the Light HSL Hue of the element (see Section 6.1.4.1).
The TID field is a transaction identifier indicating whether the message is a new message or a
retransmission of a previously sent message, as described in Section 6.6.3.5.2.
If present, the Transition Time field identifies the time an element will take to transition to the target
state from the present state (see Section 1.4.1.1). The format of the Transition Time field matches the
format of the Generic Default Transition Time state, as defined in Section 3.1.3. Only values of 0x00
to 0x3E shall be used to specify the Transition Number of Steps.
The Delay field shall be present when the Transition Time field is present. It identifies the message
execution delay, representing a time interval between receiving the message by a model and
executing the associated model behaviors.
Size
Field Notes
(octets)
Hue 2 The target value of the Light HSL Hue state.
TID 1 Transaction Identifier
Transition Time 1 Format as defined in Section 3.1.3. (Optional)
Delay 1 Message execution delay in 5 millisecond steps. (C.1)
C.1: If the Transition Time field is present, the Delay field shall also be present; otherwise these fields
shall not be present.
Table 6.83: Light HSL Hue Set Unacknowledged message parameters
The Hue field identifies the Light HSL Hue of the element (see Section 6.1.4.1).
The TID field is a transaction identifier indicating whether the message is a new message or a
retransmission of a previously sent message, as described in Section 6.6.3.5.2.
If present, the Transition Time field identifies the time an element will take to transition to the target
state from the present state (see Section 1.4.1.1). The format of the Transition Time field matches the
format of the Generic Default Transition Time state, as defined in Section 3.1.3. Only values of 0x00
to 0x3E shall be used to specify the Transition Number of Steps.
The Delay field shall be present when the Transition Time field is present. It identifies the message
execution delay, representing a time interval between receiving the message by a model and
executing the associated model behaviors.
Size
Field Notes
(octets)
Present Hue 2 The present value of the Light HSL Hue state
Target Hue 2 The target value of the Light HSL Hue state (Optional)
Remaining Time 1 Format as defined in Section 3.1.3 (C.1)
C.1: If the Target Hue field is present, the Remaining Time field shall also be present; otherwise these
fields shall not be present.
Table 6.84: Light HSL Hue Status message parameters
The Present Hue field identifies the present Light HSL Hue state of the element (see Section 6.1.4.1).
If present, the Target Hue field identifies the target Light HSL Hue state that the element is to reach
(see Section 6.1.4.1).
If present, the Remaining Time field identifies the time it will take the element to complete the
transition to the target Light HSL Hue state of the element (see Section 1.4.1.1 and Section 6.1.2).
The response to the Light HSL Saturation Get message is a Light HSL Saturation Status message.
The response to the Light HSL Saturation Set message is a Light HSL Saturation Status message.
Size
Field Notes
(octets)
Saturation 2 The target value of the Light HSL Saturation state.
TID 1 Transaction Identifier
Transition Time 1 Format as defined in Section 3.1.3. (Optional)
Delay 1 Message execution delay in 5 millisecond steps. (C.1)
C.1: If the Transition Time field is present, the Delay field shall also be present; otherwise these fields
shall not be present.
Table 6.85: Light HSL Saturation Set message parameters
The Saturation field identifies the Light HSL Saturation the element (see Section 6.1.4.2).
The TID field is a transaction identifier indicating whether the message is a new message or a
retransmission of a previously sent message, as described in Section 6.6.3.6.2.
If present, the Transition Time field identifies the time an element will take to transition to the target
state from the present state (see Section 1.4.1.1). The format of the Transition Time field matches the
format of the Generic Default Transition Time state, as defined in Section 3.1.3. Only values of 0x00
to 0x3E shall be used to specify the Transition Number of Steps.
The Delay field shall be present when the Transition Time field is present. It identifies the message
execution delay, representing a time interval between receiving the message by a model and
executing the associated model behaviors.
Size
Field Notes
(octets)
Saturation 2 The target value of the Light HSL Saturation state.
TID 1 Transaction Identifier
Transition Time 1 Format as defined in Section 3.1.3. (Optional)
Delay 1 Message execution delay in 5 millisecond steps. (C.1)
C.1: If the Transition Time field is present, the Delay field shall also be present; otherwise these fields
shall not be present.
Table 6.86: Light HSL Saturation Set Unacknowledged message parameters
The Saturation field identifies the Light HSL Saturation of the element (see Section 6.1.4.2).
The TID field is a transaction identifier indicating whether the message is a new message or a
retransmission of a previously sent message, as described in Section 6.6.3.6.2.
If present, the Transition Time field identifies the time an element will take to transition to the target
state from the present state (see Section 1.4.1.1). The format of the Transition Time field matches the
format of the Generic Default Transition Time state, as defined in Section 3.1.3. Only values of 0x00
to 0x3E shall be used to specify the Transition Number of Steps.
The Delay field shall be present when the Transition Time field is present. It identifies the message
execution delay, representing a time interval between receiving the message by a model and
executing the associated model behaviors.
Size
Field Notes
(octets)
Present Saturation 2 The present value of the Light HSL Saturation state.
Target Saturation 2 The target value of the Light HSL Saturation state. (Optional)
Remaining Time 1 Format as defined in Section 3.1.3. (C.1)
C.1: If the Target Saturation field is present, the Remaining Time field shall also be present; otherwise
these fields shall not be present.
Table 6.87: Light HSL Saturation Status message parameters
The Present Saturation field identifies the present Light HSL Saturation state of the element (see
Section 6.1.4.2).
If present, the Target Saturation field identifies the target Light HSL Saturation state that the element
is to reach (see Section 6.1.4.2).
If present, the Remaining Time field identifies the time it will take the element to complete the
transition to the target Light HSL Saturation state of the element (see Section 1.4.1.1 and
Section 6.1.2).
The response to the Light HSL Default Get message is a Light HSL Default Status message.
The response to the Light HSL Default Set message is a Light HSL Default Status message.
Size
Field Notes
(octets)
Lightness 2 The value of the Light Lightness Default state
Hue 2 The value of the Light HSL Hue Default state
Saturation 2 The value of the Light HSL Saturation Default state
Table 6.88: Light HSL Default Set message parameters
The Lightness field identifies the Light Lightness Default state of the element.
The Hue field identifies the Light HSL Hue Default state of the element.
The Saturation field identifies the Light HSL Saturation Default state of the element.
Size
Field Notes
(octets)
Lightness 2 The value of the Light Lightness Default state
Hue 2 The value of the Light HSL Hue Default state
Saturation 2 The value of the Light HSL Saturation Default state
Table 6.89: Light HSL Default Set Unacknowledged message parameters
The Lightness field identifies the Light Lightness Default state of the element.
The Hue field identifies the Light HSL Hue Default state of the element.
The Saturation field identifies the Light HSL Saturation Default state of the element.
Size
Field Notes
(octets)
Lightness 2 The value of the Light Lightness Default state
Hue 2 The value of the Light HSL Hue Default state
Saturation 2 The value of the Light HSL Saturation Default state
Table 6.90: Light HSL Default Status message parameters
The Lightness field identifies the Light Lightness Default state of the element.
The Hue field identifies the Light HSL Hue Default state of the element.
The Saturation field identifies the Light HSL Saturation Default state of the element.
The response to the Light HSL Range Get message is a Light HSL Range Status message.
The response to the Light HSL Range Set message is a Light HSL Range Status message.
Size
Field Notes
(octets)
The value of the Hue Range Min field of the Light HSL Hue
Hue Range Min 2
Range state
The value of the Hue Range Max field of the Light HSL Hue
Hue Range Max 2
Range state
The value of the Saturation Range Min field of the Light HSL
Saturation Range Min 2
Saturation Range state
The value of the Saturation Range Max field of the Light
Saturation Range Max 2
HSL Saturation Range state
Table 6.91: Light HSL Range Set message parameters
The Hue Range Min field identifies the Light HSL Hue Range Min field of the Light HSL Hue Range
state of the element (see Section 6.1.4.3).
The Hue Range Max field identifies the Light HSL Hue Range Max field of the Light HSL Hue Range
state of the element (see Section 6.1.4.3).
The value of the Hue Range Max field shall be greater or equal to the value of the Hue Range Min
field.
The Saturation Range Min field identifies the Light HSL Saturation Range Min field of the Light HSL
Saturation Range state of the element (see Section 6.1.4.6).
The Saturation Range Max field identifies the Light HSL Saturation Range Max field of the Light HSL
Saturation state of the element (see Section 6.1.4.6).
The value of the Saturation Range Max field shall be greater or equal to the value of the Saturation
Range Min field.
Size
Field Notes
(octets)
The value of the Hue Range Min field of the Light HSL Hue
Hue Range Min 2
Range state
Size
Field Notes
(octets)
The value of the Hue Range Max field of the Light HSL
Hue Range Max 2
Hue Range state
The value of the Saturation Range Min field of the Light
Saturation Range Min 2
HSL Saturation Range state
The value of the Saturation Range Max field of the Light
Saturation Range Max 2
HSL Saturation Range state
Table 6.92: Light HSL Range Set Unacknowledged message parameters
The Hue Range Min field identifies the Light HSL Hue Range Min field of the Light HSL Hue Range
state of the element (see Section 6.1.4.3).
The Hue Range Max field identifies the Light HSL Hue Range Max field of the Light HSL Hue Range
state of the element (see Section 6.1.4.3).
The value of the Hue Range Max field shall be greater or equal to the value of the Hue Range Min field.
The Saturation Range Min field identifies the Light HSL Saturation Range Min field of the Light HSL
Saturation Range state of the element (see Section 6.1.4.6).
The Saturation Range Max field identifies the Light HSL Saturation Range Max field of the Light HSL
Saturation state of the element (see Section 6.1.4.6).
The value of the Saturation Range Max field shall be greater or equal to the value of the Saturation
Range Min field.
Size
Field Notes
(octets)
Status Code 1 Status Code for the requesting message.
The value of the Hue Range Min field of the Light HSL Hue
Hue Range Min 2
Range state
The value of the Hue Range Max field of the Light HSL
Hue Range Max 2
Hue Range state
The value of the Saturation Range Min field of the Light
Saturation Range Min 2
HSL Saturation Range state
The value of the Saturation Range Max field of the Light
Saturation Range Max 2
HSL Saturation Range state
Table 6.93: Light HSL Range Status message parameters
The Status Code field identifies the Status Code for the last operation on the Light HSL Hue Range
and Light HSL Saturation Range states. The allowed values for status codes and their meanings are
documented in Section 7.2.
The Hue Range Min field identifies the Light HSL Hue Range Min field of the Light HSL Hue Range
state of the element (see Section 6.1.4.3).
The Hue Range Max field identifies the Light HSL Hue Range Max field of the Light HSL Hue Range
state of the element (see Section 6.1.4.3).
The Saturation Range Min field identifies the Light HSL Saturation Range Min field of the Light HSL
Saturation Range state of the element (see Section 6.1.4.6).
The Saturation Range Max field identifies the Light HSL Saturation Range Max field of the Light HSL
Saturation state of the element (see Section 6.1.4.6).
Upon receiving a Light xyL Get message, the element shall respond with a Light xyL Status message.
The response to the Light xyL Get message is a Light xyL Status message.
The response to the Light xyL Set message is a Light xyL Status message.
Size
Field Notes
(octets)
xyL Lightness 2 The target value of the Light xyL Lightness state
xyL x 2 The target value of the Light xyL x state
xyL y 2 The target value of the Light xyL y state
TID 1 Transaction Identifier
Transition Time 1 Format as defined in Section 3.1.3. (Optional)
Delay 1 Message execution delay in 5 millisecond steps (C.1)
C.1: If the Transition Time field is present, the Delay field shall also be present; otherwise these fields
shall not be present.
Table 6.94: Light xyL Set message parameters
The xyL Lightness field identifies the Light xyL Lightness state of the element.
The xyL x field identifies the Light xyL x state of the element.
The xyL y field identifies the Light xyL y state of the element.
If present, the Transition Time field identifies the time an element will take to transition to the target
state from the present state (see Section 1.4.1.1). The format of the Transition Time field matches the
format of the Generic Default Transition Time state, as defined in Section 3.1.3. Only values of 0x00
to 0x3E shall be used to specify the Transition Number of Steps.
The Delay field shall be present when the Transition Time field is present. It identifies the message
execution delay, representing a time interval between receiving the message by a model and
executing the associated model behaviors.
Size
Field Notes
(octets)
xyL Lightness 2 The target value of the Light xyL Lightness state
xyL x 2 The target value of the Light xyL x state
xyL y 2 The target value of the Light xyL y state
TID 1 Transaction Identifier
Transition Time 1 Format as defined in Section 3.1.3. (Optional)
Delay 1 Message execution delay in 5 millisecond steps (C.1)
C.1: If the Transition Time field is present, the Delay field shall also be present; otherwise these fields
shall not be present.
Table 6.95: Light xyL Set Unacknowledged message parameters
The xyL Lightness field identifies the Light xyL Lightness state of the element.
The xyL x field identifies the Light xyL x state of the element.
The xyL y field identifies the Light xyL y state of the element.
The TID field is a transaction identifier indicating whether the message is a new message or a
retransmission of a previously sent message, as described in Section 6.6.4.2.2.
If present, the Transition Time field identifies the time an element will take to transition to the target
state from the present state (see Section 1.4.1.1). The format of the Transition Time field matches the
format of the Generic Default Transition Time state, as defined in Section 3.1.3. Only values of 0x00
to 0x3E shall be used to specify the Transition Number of Steps.
The Delay field shall be present when the Transition Time field is present. It identifies the message
execution delay, representing a time interval between receiving the message by a model and
executing the associated model behaviors.
Size
Field Notes
(octets)
xyL Lightness 2 The present value of the Light xyL Lightness state
xyL x 2 The present value of the Light xyL x state
xyL y 2 The present value of the Light xyL y state
Remaining Time 1 Format as defined in Section 3.1.3. (Optional)
Table 6.96: Light xyL Status Unacknowledged message parameters
The xyL Lightness field identifies the present Light xyL Lightness state of the element (see
Section 6.1.5.5).
The xyL x field identifies the present Light xyL x state of the element (see Section 6.1.5.1).
The xyL y field identifies the present Light xyL y state of the element (see Section 6.1.5.2).
The TID field is a transaction identifier indicating whether the message is a new message or a
retransmission of a previously sent message, as described in Section 6.6.4.2.2.
If present, the Remaining Time field identifies the time it will take the element to complete the
transition to the target state of the element (see Section 1.4.1.1).
For example, it may be used when an element reports it is in transition to new Light xyL Lightness
(see Section 6.1.5.5), Light xyL x (see Section 6.1.5.1), or Light xyL y (see Section 6.1.5.2) states by
including a positive Remaining Time field in the Light xyL Status message (see Section 6.3.4.4), Light
Lightness Status message (see Section 6.3.1.4), or the Light HSL Status message (see Section
6.3.3.4).
The response to the Light xyL Target Get message is a Light xyL Target Status message.
Size
Field Notes
(octets)
Target xyL Lightness 2 The target value of the Light xyL Lightness state
Target xyL x 2 The target value of the Light xyL x state
Target xyL y 2 The target value of the Light xyL y state
Remaining Time 1 Format as defined in Section 3.1.3. (Optional)
Table 6.97: Light xyL Target Status Unacknowledged message parameters
The Target xyL Lightness field identifies the target Light xyL Lightness state of the element (see
Section 6.1.5.5).
The Target xyL x field identifies the target Light xyL x state of the element (see Section 6.1.5.1).
The Target xyL y field identifies the target Light xyL y state of the element (see Section 6.1.5.2).
The Remaining Time field identifies the time it will take the element to complete the transition to the
target state of the element.
The response to the Light xyL Default Get message is a Light xyL Default Status message.
The response to the Light xyL Default Set message is a Light xyL Default Status message.
Size
Field Notes
(octets)
Lightness 2 The value of the Light Lightness Default state
xyL x 2 The value of the Light xyL x Default state
xyL y 2 The value of the Light xyL y Default state
Table 6.98: Light HSL Default Set message parameters
The Lightness field identifies the Light Lightness Default state of the element.
The xyL x field identifies the Light xyL x Default state of the element.
The xyL y field identifies the Light xyL y Default state of the element.
Size
Field Notes
(octets)
Lightness 2 The value of the Light Lightness Default state
xyL x 2 The value of the Light xyL x Default state
xyL y 2 The value of the Light xyL y Default state
Table 6.99: Light xyL Default Set Unacknowledged message parameters
The Lightness field identifies the Light Lightness Default state of the element.
The xyL x field identifies the Light xyL x Default state of the element.
The xyL y field identifies the Light xyL y Default state of the element.
Size
Field Notes
(octets)
Lightness 2 The value of the Light Lightness Default state
xyL x 2 The value of the Light xyL x Default state
xyL y 2 The value of the Light xyL y Default state
Table 6.100: Light xyL Default Status message parameters
The Lightness field identifies the Light Lightness Default state of the element.
The xyL x field identifies the Light xyL x Default state of the element.
The xyL y field identifies the Light xyL y Default state of the element.
The response to the Light xyL Range Get message is a Light xyL Range Status message.
The response to the Light xyL Range Set message is a Light xyL Range Status message.
Size
Field Notes
(octets)
The value of the xyL x Range Min field of the Light xyL x Range
xyL x Range Min 2
state
The value of the xyL x Range Max field of the Light xyL x Range
xyL x Range Max 2
state
The value of the xyL y Range Min field of the Light xyL y Range
xyL y Range Min 2
state
The value of the xyL y Range Max field of the Light xyL y Range
xyL y Range Max 2
state
Table 6.101: Light xyL Range Set message parameters
The xyL x Range Min field identifies the Light xyL x Range Min field of the Light xyL x Range state of
the element (see Section 6.1.5.3).
The xyL x Range Max field identifies the Light xyL x Range Max field of the Light xyL x Range state of
the element (see Section 6.1.5.3).
The value of the xyL x Range Max field shall be greater or equal to the value of the xyL x Range Min field.
The xyL y Range Min field identifies the Light xyL y Range Min field of the Light xyL y Range state of
the element (see Section 6.1.5.6).
The xyL y Range Max field identifies the Light xyL y Range Max field of the Light xyL y Range state of
the element (see Section 6.1.4.6).
The value of the xyL y Range Max field shall be greater or equal to the value of the xyL y Range Min field.
Size
Field Notes
(octets)
The value of the xyL x Range Min field of the Light xyL x Range
xyL x Range Min 2
state
The value of the xyL x Range Max field of the Light xyL x Range
xyL x Range Max 2
state
The value of the xyL y Range Min field of the Light xyL y Range
xyL y Range Min 2
state
The value of the xyL y Range Max field of the Light xyL y Range
xyL y Range Max 2
state
Table 6.102: Light xyL Range Set Unacknowledged message parameters
The xyL x Range Min field identifies the Light xyL x Range Min field of the Light xyL x Range state of
the element (see Section 6.1.5.3).
The xyL x Range Max field identifies the Light xyL x Range Max field of the Light xyL x Range state of
the element (see Section 6.1.5.3).
The value of the xyL x Range Max field shall be greater or equal to the value of the xyL x Range Min field.
The xyL y Range Min field identifies the Light xyL y Range Min field of the Light xyL y Range state of
the element (see Section 6.1.5.6).
The xyL y Range Max field identifies the Light xyL y Range Max field of the Light xyL y Range state of
the element (see Section 6.1.4.6).
The value of the xyL y Range Max field shall be greater or equal to the value of the xyL y Range Min field.
Size
Field Notes
(octets)
Status Code 1 Status Code for the requesting message.
The value of the xyL x Range Min field of the Light xyL x
xyL x Range Min 2
Range state
The value of the xyL x Range Max field of the Light xyL x
xyL x Range Max 2
Range state
The value of the xyL y Range Min field of the Light xyL y
xyL y Range Min 2
Range state
The value of the xyL y Range Max field of the Light xyL y
xyL y Range Max 2
Range state
Table 6.103: Light xyL Range Status message parameters
The Status Code field identifies the Status Code for the last operation on the Light xyL x Range and Light
xyL y Range states. The allowed values for status codes and their meanings are documented in Section 7.2.
The xyL x Range Min field identifies the Light xyL x Range Min field of the Light xyL x Range state of
the element (see Section 6.1.5.3).
The xyL x Range Max field identifies the Light xyL x Range Max field of the Light xyL x Range state of
the element (see Section 6.1.5.3).
The xyL y Range Min field identifies the Light xyL y Range Min field of the Light xyL y Range state of
the element (see Section 6.1.5.6).
The xyL y Range Max field identifies the Light xyL y Range Max field of the Light xyL y Range state of
the element (see Section 6.1.4.6).
The response to the Light LC Mode Get message is a Light LC Mode Status message.
The response to the Light LC Mode Set message is a Light LC Mode Status message.
Size
Field Notes
(octets)
Mode 1 The target value of the Light LC Mode state
Table 6.104: Light LC Mode Set message parameters
The Mode field identifies the Light LC Mode state of the element (see Section 6.2.3.1).
Size
Field Notes
(octets)
Mode 1 The target value of the Light LC Mode state
Table 6.105: Light LC Mode Set Unacknowledged message parameters
The Mode field identifies the Light LC Mode state of the element (see Section 6.2.3.1).
Size
Field Notes
(octets)
Mode 1 The present value of the Light LC Mode state
Table 6.106: Light LC Mode Status message parameters
The Mode field identifies the present Light LC Mode state of the element (see Section 6.2.3.1).
Size
Field Notes
(octets)
Mode 1 The target value of the Light LC Occupancy Mode state
Table 6.107: Light LC OM Set message parameters
The Mode field identifies the Light LC Occupancy Mode state of the element (see Section 6.2.3.2).
Size
Field Notes
(octets)
Mode 1 The target value of the Light LC Occupancy Mode state
Table 6.108: Light LC OM Set Unacknowledged message parameters
The Mode field identifies the Light LC Occupancy Mode state of the element (see Section 6.2.3.2).
Size
Field Notes
(octets)
Mode 1 The present value of the Light LC Occupancy Mode state
Table 6.109: Light LC OM Status message parameters
The Mode field identifies the present Light LC Occupancy Mode state of the element (see
Section 6.2.3.2).
The response to the Light LC Light OnOff Get message is a Light LC Light OnOff Status message.
The response to the Light LC Light OnOff Set message is a Light LC Light OnOff Status message.
Size
Field Notes
(octets)
Light OnOff 1 The target value of the Light LC Light OnOff state
TID 1 Transaction Identifier
Transition Time 1 Format as defined in Section 3.1.3. (Optional)
Delay 1 Message execution delay in 5 millisecond steps (C.1)
C.1: If the Transition Time field is present, the Delay field shall also be present; otherwise these fields
shall not be present.
Table 6.110: Light LC Light OnOff Set message parameters
The Light OnOff field identifies the Light LC Light OnOff state of the element (see Section 6.2.3.3).
The TID field is a transaction identifier indicating whether the message is a new message or a
retransmission of a previously sent message, as described in Section 6.6.5.4.2.
If present, the Transition Time field identifies the time an element will take to transition to the target
state from the present state (see Section 1.4.1.1). The format of the Transition Time field matches the
format of the Generic Default Transition Time state as defined in Section 3.1.3. Only values of 0x00 to
0x3E shall be used to specify the Transition Number of Steps.
The Delay field shall be present when the Transition Time field is present. It identifies the message
execution delay, representing a time interval between receiving the message by a model and
executing the associated model behaviors.
Size
Field Notes
(octets)
Light OnOff 1 The target value of the Light LC Light OnOff state
TID 1 Transaction Identifier
Size
Field Notes
(octets)
Transition Time 1 Format as defined in Section 3.1.3. (Optional)
Delay 1 Message execution delay in 5 millisecond steps (C.1)
C.1: If the Transition Time field is present, the Delay field shall also be present; otherwise these fields
shall not be present.
6.111: Light LC Light OnOff Set Unacknowledged message parameters
The Light OnOff field identifies the Light LC Light OnOff state of the element (see Section 6.2.3.3).
The TID field is a transaction identifier indicating whether the message is a new message or a
retransmission of a previously sent message, as described in Section 6.6.5.4.2.
If present, the Transition Time field identifies the time an element will take to transition to the target
state from the present state (see Section 1.4.1.1). The format of the Transition Time field matches the
format of the Generic Default Transition Time state as defined in Section 3.1.3. Only values of 0x00 to
0x3E shall be used to specify the Transition Number of Steps.
The Delay field shall be present when the Transition Time field is present. It identifies the message
execution delay, representing a time interval between receiving the message by a model and
executing the associated model behaviors.
Size
Field Notes
(octets)
Present Light OnOff 1 The present value of the Light LC Light OnOff state
Target Light OnOff 1 The target value of the Light LC Light OnOff state (Optional)
Remaining Time 1 Format as defined in Section 3.1.3. (C.1)
C.1: If the Target Light OnOff field is present, the Remaining Time field shall also be present;
otherwise these fields shall not be present.
Table 6.112: Light LC Light OnOff Status message parameters
The Present Light OnOff field identifies the present Light LC Light OnOff state of the element (see
Section 6.2.3.3).
If present, the Target Light OnOff field identifies the target Light LC Light OnOff state that the element
is to reach (see Section 6.2.3.3).
If present, the Remaining Time field identifies the time it will take the element to complete the
transition to the target Light LC Light OnOff state of the node (see Section 1.4.1.1 and Section
6.2.3.3).
The response to the Light LC Property Get message is a Light LC Property Status message.
Size
Field Notes
(octets)
Light LC Property ID 2 Property ID identifying a Light LC Property.
Table 6.113: Light LC Property Get message parameters
The Light LC Property ID field identifies a Light LC Property ID state of an element (see Section 6.2).
The response to the Light LC Property Set message is a Light LC Property Status message.
Size
Field Notes
(octets)
Light LC Property ID 2 Property ID identifying a Light LC Property.
Light LC Property Value variable Raw value for the Light LC Property
Table 6.114: Light LC Property Set message parameters
The Light LC Property ID field identifies a Light LC Property ID state of an element (see Section 6.2).
The Light LC Property Value field identifies a Light LC Property Value state of an element (see
Section 6.2).
Size
Field Notes
(octets)
Light LC Property ID 2 Property ID identifying a Light LC Property.
Light LC Property Value variable Raw value for the Light LC Property
Table 6.115: Light LC Property Set Unacknowledged message parameters
The Light LC Property ID field identifies a Light LC Property ID state of an element (see Section 6.2).
The Light LC Property Value field identifies a Light LC Property Value state of an element (see
Section 6.2).
The message is sent as a response to the Light LC Property Get and Light LC Property Set
messages or may be sent as an unsolicited message.
Size
Field Notes
(octets)
Light LC Property ID 2 Property ID identifying a Light LC Property.
Light LC Property Value variable Raw value for the Light LC Property
Table 6.116: Light LC Property Status message parameters
The Light LC Property ID field identifies a Light LC Property ID state of an element (see Section 6.2).
The Light LC Property Value field identifies a Light LC Property Value state of an element (see
Section 6.2).
6.4.1.1 Description
The Light Lightness Server model extends the Generic Power OnOff Server model (see Section
3.3.3) and the Generic Level Server model (see Section 3.3.2). When this model is present on an
Element, the corresponding Light Lightness Setup Server model (see Section 6.4.2) shall also be
present.
The model adds the state instances listed in Table 6.117 and messages listed in Table 6.118 to the
model it extends:
SIG
Element States Messages Rx Tx
Model ID
Light Lightness Get M
Light Lightness
Actual Light Lightness Set M
(see Section Light Lightness Set Unacknowledged M
6.1.2.1)
Light Lightness Status M
Light Lightness Linear Get M
Light Lightness Light Lightness Linear Set M
Linear
(see Section Light Lightness Linear Set
M
6.1.2.1) Unacknowledged
Main 0x1300 Light Lightness Linear Status M
Light Lightness Light Lightness Last Get M
Last (see
Section 6.1.2.3) Light Lightness Last Status M
Light Lightness Light Lightness Default Get M
Default (see
Section 6.1.2.4) Light Lightness Default Status M
Light Lightness Light Lightness Range Get M
Range (see
Section 6.1.2.5) Light Lightness Range Status M
Table 6.119 illustrates the complete structure of elements, states, and messages used by the model.
SIG
Element States Messages Rx Tx
Model ID
Generic OnOff Get M
Generic OnOff Generic OnOff Set M
0x1000 (see Section
6.1.2.2.3) Generic OnOff Set Unacknowledged M
Generic OnOff Status M
Generic Generic OnPowerUp Get M
OnPowerUp
0x1006
(see Section Generic OnPowerUp Status M
3.1.4)
Generic Level Get M
Generic Level Set M
Generic Level Set Unacknowledged M
Main
Generic Level Generic Delta Set M
0x1002 (see Section
6.1.2.2.2) Generic Delta Set Unacknowledged M
Generic Move Set M
Generic Move Set Unacknowledged M
Generic Level Status M
Light Lightness Get M
Light Lightness
Actual Light Lightness Set M
0x1300 (see Section Light Lightness Set Unacknowledged M
6.1.2.1)
Light Lightness Status M
Light Lightness Linear Get M
SIG
Element States Messages Rx Tx
Model ID
Main Element
message, unless the message has the same values for the SRC, DST, and TID fields as the previous
message received within the last 6 seconds.
Both messages may optionally include a Transition Time field, indicating the transition time to the
target state. If present, the Transition Time field value shall be used as the time for transition to the
target state. If the Transition Time field is not present and the Generic Default Transition Time state
(see Section 3.1.3) is supported, the Generic Default Transition Time state shall be used. Otherwise
the transition shall be instantaneous.
If the Transition Time field is included, the Delay field is included and indicates a delay in 5-
millisecond steps the server shall wait before executing any state changing behavior for this message.
If the target state is equal to the current state, the transition shall not be started and is considered
complete.
If the received message is a Light Lightness Set message, the Light Lightness Server shall respond
with a Light Lightness Status message (see Section 6.4.1.2.3).
When sending a Light Lightness Status message, the Light Lightness Server shall set the Present
Lightness field to the present Light Lightness Actual state.
If the Light Lightness Server is in the process of changing the Light Lightness Actual state, it shall set
the Target Lightness field to the target Light Lightness Actual state and the Remaining Time field to
the time it will take to complete the transition. Otherwise, the Target Level and Remaining Time fields
shall be omitted.
When a Light Lightness Actual state change is completed as a result of processing an acknowledged
message or a transaction of messages other than a Light Lightness Set message, a corresponding
status message shall be sent to the originator to indicate the status change, and a separate Light
Lightness Status message shall be published. It is recommended to transmit a Light Lightness Status
message when the element has been physically turned on or off locally (as opposed to via the mesh
network).
6.4.1.2.5 Receiving Light Lightness Linear Set / Light Lightness Linear Set
Unacknowledged messages
When a Light Lightness Server receives a Light Lightness Linear Set message or a Light Lightness
Linear Set Unacknowledged message, it shall set the Light Lightness Linear state to the Lightness
field of the message, unless the message has the same values for the SRC, DST, and TID fields as
the previous message received within the last 6 seconds.
Both messages may optionally include a Transition Time field, indicating the transition time to the
target state. If present, the Transition Time field value shall be used as the time for transition to the
target state. If the Transition Time field is not present and the Generic Default Transition Time state
(see Section 3.1.3) is supported, the Generic Default Transition Time state shall be used. Otherwise
the transition shall be instantaneous.
If the received message is a Light Lightness Linear Set message, the Light Lightness Server shall
respond with a Light Lightness Linear Status message (see Section 6.4.1.2.6).
When sending a Light Lightness Linear Status message, the Light Lightness Server shall set the
Present Lightness field to the present Light Lightness Linear state.
If the Light Lightness Server is in the process of changing the Light Lightness Linear state, it shall set
the Target Lightness field to the target Light Lightness Linear state and the Remaining Time field to
the time it will take to complete the transition. Otherwise, the Target Level and Remaining Time fields
shall be omitted.
When sending a Light Lightness Last Status message, the Light Lightness Server shall set the
Lightness field to the Light Lightness Last state.
When sending a Light Lightness Default Status message, the Light Lightness Server shall set the
Lightness field to the Light Lightness Default state.
When sending a Light Lightness Range Status message, the Light Lightness Server shall set the
Range Min field to the Light Lightness Range Min state, the Range Max field to the Light Lightness
Range Max state, and the Status Code field to the status of the last operation on the Light Lightness
Range state.
6.4.2.1 Description
The Light Lightness Setup Server model extends the Light Lightness Server model (see Section
6.4.1) and the Generic Power OnOff Setup Server model (see Section 3.3.5).
The model adds the messages listed in Table 6.120 to the models it extends:
SIG
Element States Messages Rx Tx
Model ID
Light Lightness Light Lightness Default Set M
Default (see Light Lightness Default Set
Section 6.1.2.4) M
Unacknowledged
Main 0x1301
Light Lightness Light Lightness Range Set M
Range (see Light Lightness Range Set
Section 6.1.2.5) M
Unacknowledged
Table 6.120: Light Lightness Setup Server messages
Table 6.121 illustrates the complete structure of elements, states, and messages used by the model.
SIG
Element States Messages Rx Tx
Model ID
Generic OnOff Get M
Generic OnOff Generic OnOff Set M
0x1000 (see Section
6.1.2.2.3) Generic OnOff Set Unacknowledged M
Generic OnOff Status M
Generic Default Transition Time Get M
Generic Default Generic Default Transition Time Set M
Transition Time Generic Default Transition Time Set
0x1004 M
(see Section Unacknowledged
3.1.3)
Generic Default Transition Time
M
Status
Generic OnPowerUp Get M
Generic Generic OnPowerUp Set M
OnPowerUp
0x1007 Generic OnPowerUp Set
(see Section M
3.1.4) Unacknowledged
Generic OnPowerUp Status M
Main Generic Level Get M
Generic Level Set M
Generic Level Set Unacknowledged M
Generic Level Generic Delta Set M
0x1002 (see Section
6.1.2.2.2) Generic Delta Set Unacknowledged M
Generic Move Set M
Generic Move Set Unacknowledged M
Generic Level Status M
Light Lightness Get M
Light Lightness
Actual Light Lightness Set M
(see Section Light Lightness Set Unacknowledged M
6.1.2.1)
0x1300 Light Lightness Status M
Light Lightness Light Lightness Last Get M
Last (see
Section 6.1.2.3) Light Lightness Last Status M
Light Lightness Default Get M
SIG
Element States Messages Rx Tx
Model ID
Light Lightness
Default (see Light Lightness Default Status M
Section 6.1.2.4)
Light Lightness Light Lightness Range Get M
Range (see
Section 6.1.2.5) Light Lightness Range Status M
6.4.2.2.1 Receiving Light Lightness Default Set / Light Lightness Default Set
Unacknowledged messages
When a Light Lightness Setup Server receives a Light Lightness Default Set message or a Light
Lightness Default Set Unacknowledged message, it shall set the Light Lightness Default state to the
Lightness field of the message.
If the received message is a Light Lightness Default Set message, the Light Lightness Server shall
respond with a Light Lightness Default Status message (see Section 6.4.1.2.10).
6.4.2.3.1 Receiving Light Lightness Range Set / Light Lightness Range Set
Unacknowledged messages
When a Light Lightness Setup Server receives a Light Lightness Range Set message or a Light
Lightness Range Set Unacknowledged message with values that can be accepted, it shall set the
Light Lightness Range state fields to the corresponding fields of the message and the status of the
operation to 0x00 (Success).
When a Light Lightness Setup Server receives a Light Lightness Range Set message or a Light
Lightness Range Set Unacknowledged message with values that cannot be accepted, it shall set the
status of the operation to a value representing the reason why the values cannot be accepted, as
defined in Table 7.2.
If the received message is a Light Lightness Range Set message, the Light Lightness Setup Server
shall respond with a Light Lightness Range Status message (see Section 6.4.1.2.12).
6.4.3.1 Description
The Light CTL Server model extends the Light Lightness Server model (see Section 6.4.1). When this
model is present on an Element, the corresponding Light CTL Setup Server model (see Section 6.4.5)
shall also be present.
The model adds the state instances listed in Table 6.122 and messages listed in Table 6.123 to the
model it extends. The model requires two elements: the main element and the Temperature element.
The Temperature element contains the associated Light CTL Temperature Server model (see
Section 6.4.4) and an instance of a Generic Level state bound to the Light CTL Temperature state on
the Temperature element. The Light CTL Temperature state on the Temperature element is bound to
the Light CTL state on the main element.
SIG
Element Model States Rx Tx
ID
Light CTL Get M
Light CTL Light CTL Set M
(see Section 6.1.3) Light CTL Set Unacknowledged M
Light CTL Status M
Light CTL Light CTL Temperature Range Get M
Temperature Range Light CTL Temperature Range
Main 0x1303 M
(see Section 6.1.3.1) Status
Light CTL Light CTL Default Get M
Temperature Default
(see Section 6.1.3.2)
Light CTL Delta UV Light CTL Default Status M
Default (see Section
6.1.3.5)
Generic Level Get M
Temperature 0x1002
Generic Level Set M
SIG
Element Model States Rx Tx
ID
Generic Level Set
M
Unacknowledged
Generic Delta Set M
Generic Level Generic Delta Set
M
(see Section Unacknowledged
6.1.3.1.1) Generic Move Set M
Generic Move Set
M
Unacknowledged
Generic Level Status M
Light CTL Temperature Get M
Light CTL Light CTL Temperature Set M
0x1306 Temperature Light CTL Temperature Set
(see Section 6.1.3.1) M
Unacknowledged
Light CTL Temperature Status M
Table 6.123: Light CTL Server messages
Table 6.124 illustrates the complete structure of elements, states, and messages used by the model,
including the models it extends.
SIG
Element Model States Rx Tx
ID
Generic OnOff Get M
Generic OnOff Set M
Generic OnOff
0x1000 Generic OnOff Set
(see Section 3.1.1) M
Unacknowledged
Generic OnOff Status M
Generic OnPowerUp Generic OnPowerUp Get M
0x1006
(see Section 3.1.4) Generic OnPowerUp Status M
Generic Level Get M
Generic Level Set M
Generic Level Set
M
Unacknowledged
Main
Generic Level Generic Delta Set M
0x1002 (see Section Generic Delta Set
6.1.2.2.2) M
Unacknowledged
Generic Move Set M
Generic Move Set
M
Unacknowledged
Generic Level Status M
Light Lightness Get M
Light Lightness
Light Lightness Set M
0x1300 Actual
(see Section 6.1.2.1) Light Lightness Set
M
Unacknowledged
SIG
Element Model States Rx Tx
ID
Light Lightness Status M
Light Lightness Linear Get M
Light Lightness Light Lightness Linear Set M
Linear Light Lightness Linear Set
(see Section 6.1.2.1) M
Unacknowledged
Light Lightness Linear Status M
Light Lightness Last Light Lightness Last Get M
(see Section 6.1.2.3) Light Lightness Last Status M
Light Lightness Light Lightness Default Get M
Default (see Section
6.1.2.4) Light Lightness Default Status M
Light Lightness Light Lightness Range Get M
Range (see Section
6.1.2.5) Light Lightness Range Status M
Light CTL Get M
Light CTL Light CTL Set M
(see Section 6.1.3) Light CTL Set Unacknowledged M
Light CTL Status M
Light CTL Light CTL Temperature Range Get M
Temperature Range Light CTL Temperature Range
0x1303 M
(see Section 6.1.3.3) Status
Light CTL Light CTL Default Get M
Temperature Default
(see Section 6.1.3.2)
Light CTL Delta UV Light CTL Default Status M
Default (see Section
6.1.3.5)
Generic Level Get M
Generic Level Set M
Generic Level Set
M
Unacknowledged
Generic Level Generic Delta Set M
0x1002 (see Section Generic Delta Set
6.1.3.1.1) M
Unacknowledged
Generic Move Set M
Temperature
Generic Move Set
M
Unacknowledged
Generic Level Status M
Light CTL Temperature Get M
Light CTL Light CTL Temperature Set M
0x1306 Temperature Light CTL Temperature Set
(see Section 6.1.3.1) M
Unacknowledged
Light CTL Temperature Status M
Table 6.124: Light CTL Server elements, states, and messages
6.4.3.2.2 Receiving Light CTL Set / Light CTL Set Unacknowledged messages
When a Light CTL Server receives a Light CTL Set message or a Light CTL Set Unacknowledged
message, it shall set the Light CTL Lightness state to the CTL Lightness field of the message, the
Light CTL Temperature state to the CTL Temperature field of the message, and the Light CTL Delta
UV state to the CTL Delta UV field of the message, unless the message has the same values for the
SRC, DST, and TID fields as the previous message received within the last 6 seconds.
Both messages may optionally include a Transition Time field, indicating the transition time to the
target state. If present, the Transition Time field value shall be used as the time for transition to the
target state. If the Transition Time field is not present and the Generic Default Transition Time state
(see Section 3.1.3) is supported, the Generic Default Transition Time state shall be used. Otherwise
the transition shall be instantaneous.
If the Transition Time field is included, the Delay field is included and indicates a delay in 5-
millisecond steps the server shall wait before executing any state changing behavior for this message.
If the target state is equal to the current state, the transition shall not be started and is considered
complete.
If the received message is a Light CTL Set message, the Light CTL Server shall respond with a Light
CTL Status message (see Section 6.4.3.2.3).
When sending a Light CTL Status message, the Light CTL Server shall set the Present CTL
Lightness field to the present Light CTL Lightness state and the Present CTL Temperature field to the
present Light CTL Temperature state.
If the Light CTL Server is in the process of changing the Light CTL state, it shall set the Target CTL
Lightness field to the target Light CTL Lightness state, the Target CTL Temperature to the target Light
CTL Temperature state, and the Remaining Time field to the time it will take to complete the
transition. Otherwise, the Target CTL Lightness, the Target CTL Temperature, and the Remaining
Time fields shall be omitted. When a Light CTL state change is completed as a result of processing
an acknowledged message or a transaction of messages other than a Light CTL Set message, a
corresponding status acknowledge message shall be sent to the originator and a separate Light CTL
Status message shall be published.
It is recommended to transmit a Light CTL Status message when the element has been physically
turned on or off locally (as opposed to via the mesh network).
When sending a Light CTL Default Status message, the Light CTL Server shall set the Lightness field
to the bound Light Lightness Default state, the Temperature field to the Light CTL Temperature
Default state, and the Delta UV field to the Light CTL Delta UV Default state.
When sending a Light CTL Temperature Range Status message, the Light CTL Server shall set the
Range Min field to the Light CTL Temperature Range Min state, the Range Max field to the Light CTL
Temperature Range Max state and the Status Code field to the status of the last operation on the
Light CTL Temperature Range state.
6.4.4.1 Description
The Light CTL Temperature Server model extends the Generic Level Server model (see
Section 3.3.2).
The model adds the state instances listed in Table 6.125 and messages listed in Table 6.126 to the
model it extends.
SIG
Element Model States Rx Tx
ID
Generic Level Get M
Generic Level Set M
Generic Level Generic Level Set
M
Temperature 0x1002 (see Section Unacknowledged
6.1.3.1.1) Generic Delta Set M
Generic Delta Set
M
Unacknowledged
SIG
Element Model States Rx Tx
ID
Generic Move Set M
Generic Move Set
M
Unacknowledged
Generic Level Status M
Light CTL Temperature Get M
Light CTL
Temperature Light CTL Temperature Set M
0x1306 (see Section 6.1.3.1) Light CTL Temperature Set
Light CTL Delta UV M
Unacknowledged
(see Section 6.1.3.4)
Light CTL Temperature Status M
Table 6.126: Light CTL Temperature Server messages
6.4.4.2.2 Receiving Light CTL Temperature Set / Light CTL Temperature Set
Unacknowledged messages
When a Light CTL Temperature Server receives a Light CTL Temperature Set message or a Light
CTL Temperature Set Unacknowledged message, it shall set the Light CTL Temperature state to the
CTL Temperature field of the message and the Light CTL Delta UV state to the CTL Delta UV field of
the message, unless the message has the same values for the SRC, DST, and TID fields as the
previous message received within the last 6 seconds.
Both messages may optionally include a Transition Time field, indicating the transition time to the
target state. If present, the Transition Time field value shall be used as the time for transition to the
target state. If the Transition Time field is not present and the Generic Default Transition Time state
(see Section 3.1.3) is supported on the main element, the Generic Default Transition Time state shall
be used. Otherwise the transition shall be instantaneous.
If the Transition Time field is included, the Delay field is included and indicates a delay 5-millisecond
steps the server shall wait before executing any state changing behavior for this message.
If the target state is equal to the current state, the transition shall not be started and is considered
complete.
If the received message is a Light CTL Temperature Set message, the Light CTL Server shall
respond with a Light CTL Temperature Status message (see Section 6.4.4.2.3).
When sending a Light CTL Temperature Status message, the Light CTL Temperature Server shall set
the Present CTL Temperature field to the present Light CTL Temperature state and the Present CTL
Delta UV field to the present Light CTL Delta UV state.
If the Light CTL Temperature Server is in the process of changing the Light CTL Temperature state, it
shall set the Target CTL Temperature field to the target Light CTL Temperature state, the Target CTL
Delta UV to the target Light CTL Delta UV state, and the Remaining Time field to the time it will take
to complete the transition. Otherwise, the Target CTL Temperature, the Target CTL Delta UV, and the
Remaining Time fields shall be omitted.
The model adds the messages listed in Table 6.127 to the model it extends.
SIG
Element Model States Rx Tx
ID
Light CTL Light CTL Default Set M
Temperature Default Light CTL Default Set
(see Section 6.1.3.2) M
Unacknowledged
Main 0x1304
Light CTL Light CTL Temperature Range Set M
Temperature Range Light CTL Temperature Range Set
(see Section 6.1.3.1) M
Unacknowledged
Table 6.127: Light CTL Setup Server messages
Table 6.128 illustrates the complete structure of elements, states, and messages used by the model,
including the models it extends.
SIG
Element Model States Rx Tx
ID
Generic OnOff Get M
Generic OnOff Set M
Generic OnOff
0x1000 Generic OnOff Set
(see Section 3.1.1) M
Unacknowledged
Generic OnOff Status M
Generic Default Transition Time Get M
Generic Default Transition Time Set M
Generic Default
0x1004 Transition Time Generic Default Transition Time Set
M
(see Section 3.1.3) Unacknowledged
Generic Default Transition Time
M
Main Status
Generic OnPowerUp Get M
Generic OnPowerUp Set M
Generic OnPowerUp
0x1007 Generic OnPowerUp Set
(see Section 3.1.4) M
Unacknowledged
Generic OnPowerUp Status M
Generic Level Get M
SIG
Element Model States Rx Tx
ID
Generic Move Set M
Generic Move Set Unacknowledged M
Generic Level Status M
Light Lightness Get M
Light Lightness Light Lightness Set M
Actual Light Lightness Set
(see Section 6.1.2.1) M
Unacknowledged
Light Lightness Status M
Light Lightness Last Light Lightness Last Get M
0x1300 (see Section 6.1.2.3) Light Lightness Last Status M
Light Lightness Light Lightness Default Get M
Default (see Section
6.1.2.4) Light Lightness Default Status M
Light Lightness Light Lightness Range Get M
Range (see Section
6.1.2.5) Light Lightness Range Status M
SIG
Element Model States Rx Tx
ID
Generic Level Set M
Generic Level Set Unacknowledged M
6.4.5.1.1 Receiving Light CTL Default Set / Light CTL Default Set Unacknowledged
messages
When a Light CTL Server receives a Light CTL Default Set message or a Light CTL Default Set
Unacknowledged message, it shall set the bound Light Lightness Default state to the Lightness state,
the Light CTL Temperature Default state to the Temperature field of the message, and the Light CTL
Delta UV Default state to the Delta UV field of the message.
If the received message is a Light CTL Default Set message, the Light CTL Server shall respond with
a Light CTL Default Status message (see Section 6.4.3.2.5).
6.4.5.2.1 Receiving Light CTL Temperature Range Set / Light CTL Temperature
Range Set Unacknowledged messages
When a Light CTL Temperature Setup Server receives a Light CTL Temperature Range Set message
or a Light CTL Temperature Range Set Unacknowledged message with values that can be accepted,
it shall set the Light CTL Temperature Range state fields to the corresponding fields of the message
and set the status of the operation to 0x00 (Success).
When a Light CTL Temperature Setup Server receives a Light CTL Temperature Range Set message
or a Light CTL Temperature Range Set Unacknowledged message with values that cannot be
accepted, it shall set the status of the operation to a value representing the reason why the values
cannot be accepted, as defined in Table 7.2.
If the received message is a Light CTL Temperature Range Set message, the Light CTL Temperature
Setup Server shall respond with a Light CTL Temperature Range Status message (see Section
6.4.3.3.2).
6.4.6.1 Description
The Light HSL Server model extends the Light Lightness Server model (see Section 6.4.1). When this
model is present on an Element, the corresponding Light HSL Setup Server model (see Section 6.4.9)
shall also be present.
The model adds the state instances listed in Table 6.129 and messages listed in Table 6.130 to the
model it extends. The model requires three elements: the main element and the Hue element and the
Saturation element. The Hue element contains the associated Light HSL Hue Server model (see
Section 6.4.7) and an instance of a Generic Level state bound to the Light HSL Hue state on the Hue
element. The Saturation element contains the associated Light HSL Saturation Server model (see
Section 6.4.8) and an instance of a Generic Level state bound to the Light HSL Saturation state on
the Saturation element. The Light HSL Hue state on the Hue element is bound to the Light HSL state
on the main element and the Light HSL Saturation state on the Saturation element is bound to the
Light HSL state on the main element.
Light
Lightness Light Lightness Actual Main
Server
Light HSL
Saturation Light HSL Saturation Saturation
Server
Main
Light HSL Hue Light HSL
No Light HSL Main
Range Server
Light HSL Hue
No - - -
Default
Light HSL Light HSL
No Light HSL Main
Saturation Range Server
Light HSL
No - - -
Saturation Default
Light HSL
Light HSL Main
Server
Light HSL Hue Yes
Hue Light HSL Hue
Generic Level Hue
Server
Light HSL Hue
Generic Level Yes Light HSL Hue Hue
Server
Light HSL
Light HSL Main
Server
Light HSL
Saturation Yes Light HSL
Saturation
Saturation Generic Level Saturation
Server
SIG
Element Model States Messages Rx Tx
ID
Light HSL Get M
Light HSL Set M
Light HSL Light HSL Set Unacknowledged M
(see Section 6.1.4) Light HSL Status M
Light HSL Target Get M
Main 0x1307 Light HSL Target Status M
Light HSL Hue Light HSL Default Get M
Default (see Section
6.1.4.2) and Light
HSL Saturation Light HSL Default Status M
Default (see Section
6.1.4.5)
Generic Level Get M
Generic Level Set M
Generic Level Set Unacknowledged M
Generic Level Generic Delta Set M
0x1002 (see Section
6.1.4.1.1) Generic Delta Set Unacknowledged M
Generic Move Set M
Hue
Generic Move Set Unacknowledged M
Generic Level Status M
Light HSL Hue Get M
Light HSL Hue Light HSL Hue Set M
0x130A
(see Section 6.1.4.1) Light HSL Hue Set Unacknowledged M
Light HSL Hue Status M
Generic Level Get M
Generic Level Set M
Generic Level Set Unacknowledged M
Generic Level Generic Delta Set M
0x1002 (see Section
6.1.4.4.1) Generic Delta Set Unacknowledged M
Saturation
Generic Move Set M
Generic Move Set Unacknowledged M
Generic Level Status M
Light HSL Saturation Light HSL Saturation Get M
0x130B
(see Section 6.1.4.2) Light HSL Saturation Set M
SIG
Element Model States Messages Rx Tx
ID
Light HSL Saturation Set
M
Unacknowledged
Light HSL Saturation Status M
Table 6.130: Light HSL Server messages
Table 6.131 illustrates the complete structure of elements, states, and messages used by the model,
including the models it extends.
SIG
Element Model States Messages Rx Tx
ID
Generic OnOff Get M
Generic OnOff Generic OnOff Set M
0x1000
(see Section 3.1.1) Generic OnOff Set Unacknowledged M
Generic OnOff Status M
Generic OnPowerUp Generic OnPowerUp Get M
0x1006
(see Section 3.1.4) Generic OnPowerUp Status M
Generic Level Get M
Generic Level Set M
Generic Level Set Unacknowledged M
Generic Level Generic Delta Set M
0x1002 (see Section
6.1.2.2.2) Generic Delta Set Unacknowledged M
Generic Move Set M
Generic Move Set Unacknowledged M
Generic Level Status M
Light Lightness Get M
Main Light Lightness Light Lightness Set M
Actual
(see Section 6.1.2.1) Light Lightness Set Unacknowledged M
Light Lightness Status M
Light Lightness Linear Get M
Light Lightness Light Lightness Linear Set M
Linear Light Lightness Linear Set
(see Section 6.1.2.1) M
Unacknowledged
0x1300
Light Lightness Linear Status M
Light Lightness Last Light Lightness Last Get M
(see Section 6.1.2.3) Light Lightness Last Status M
Light Lightness Light Lightness Default Get M
Default (see Section
6.1.2.4) Light Lightness Default Status M
Light Lightness Light Lightness Range Get M
Range (see Section
6.1.2.5) Light Lightness Range Status M
0x1307 Light HSL Get M
SIG
Element Model States Messages Rx Tx
ID
Light HSL Set M
Light HSL Set Unacknowledged M
Light HSL
Light HSL Status M
(see Section 6.1.4)
Light HSL Target Get M
Light HSL Target Status M
Light HSL Hue Light HSL Default Get M
Default (see Section
6.1.4.2) and Light
HSL Saturation Light HSL Default Status M
Default (see Section
6.1.4.5)
Light HSL Hue Range Light HSL Range Get M
(see Section 6.1.4.3)
and Light HSL
Saturation Range Light HSL Range Status M
(see Section 6.1.4.6)
Generic Level Get M
Generic Level Set M
Generic Level Set Unacknowledged M
Generic Level Generic Delta Set M
0x1002 (see Section
6.1.4.1.1) Generic Delta Set Unacknowledged M
Generic Move Set M
Hue
Generic Move Set Unacknowledged M
Generic Level Status M
Light HSL Hue Get M
Light HSL Hue Light HSL Hue Set M
0x130A
(see Section 6.1.4.1) Light HSL Hue Set Unacknowledged M
Light HSL Hue Status M
Generic Level Get M
Generic Level Set M
Generic Level Set Unacknowledged M
Generic Level Generic Delta Set M
0x1002 (see Section
6.1.4.4.1) Generic Delta Set Unacknowledged M
Generic Move Set M
Saturation Generic Move Set Unacknowledged M
Generic Level Status M
Light HSL Saturation Get M
Light HSL Saturation Set M
Light HSL Saturation
0x130B Light HSL Saturation Set
(see Section 6.1.4.2) M
Unacknowledged
Light HSL Saturation Status M
Table 6.131: Light HSL Server elements, states, and messages
Lightness Last
Light Lightness Last Status
Lightness Default Light HSL Default Get Generic Level Generic Delta Set
Hue Default
Saturation Default Light HSL Default Status Generic Move Set
Figure 6.9: Element-model structure of Light HSL Server model (including the associated Light HSL
Hue Server model and the Light HSL Saturation Server model)
6.4.6.2.2 Receiving Light HSL Set / Light HSL Set Unacknowledged messages
When a Light HSL Server receives a Light HSL Set message or a Light HSL Set Unacknowledged
message, it shall set the Light HSL Lightness state to the HSL Lightness field of the message, the
Light HSL Hue state to the HSL Hue field of the message, and the Light HSL Saturation state to the
HSL Saturation field of the message, unless the message has the same values for the SRC, DST,
and TID fields as the previous message received within the last 6 seconds.
Both messages may optionally include a Transition Time field, indicating the transition time to the
target state. If present, the Transition Time field value shall be used as the time for transition to the
target state. If the Transition Time field is not present and the Generic Default Transition Time state
(see Section 3.1.3) is supported, the Generic Default Transition Time state shall be used. Otherwise
the transition shall be instantaneous.
If the Transition Time field is included, the Delay field is included and indicates a delay in 5-
millisecond steps the server shall wait before executing any state changing behavior for this message.
If the target state is equal to the current state, the transition shall not be started and is considered
complete.
If the received message is a Light HSL Set message, the Light HSL Server shall respond with a Light
HSL Status message (see Section 6.4.6.2.3).
When sending a Light HSL Status message, the Light HSL Server shall set the HSL Lightness field to
the present Light HSL Lightness state, the HSL Hue field to the present Light HSL Hue state, and the
HSL Saturation field to the present Light HSL Saturation state.
If the Light HSL Server is in the process of changing the Light HSL state, it shall set the Remaining
Time field to the time it will take to complete the transition; otherwise, the Remaining Time field shall
be omitted. When a Light HSL state change is completed as a result of processing an acknowledged
message or a transaction of messages other than a Light HSL Set message, a corresponding status
acknowledge message shall be sent to the originator and a separate Light HSL Status message shall
be published.
It is recommended to transmit a Light HSL Status message when the element has been physically
turned on or off locally (as opposed to via the mesh network).
When sending a Light HSL Target Status message, if the Light HSL Server is in the process of
changing the Light HSL state, the Light HSL Server shall set the HSL Lightness Target field to the
target Light HSL Lightness state, the HSL Hue Target field to the target Light HSL Hue state, the HSL
Saturation Target field to the target Light HSL Saturation state, and the Remaining Time field to the
time it will take to complete the transition.
When sending a Light HSL Target Status message, if the Light HSL Server is not in the process of
changing the Light HSL state, the Light HSL Server shall set the HSL Lightness Target field to the
present Light HSL Lightness state, the HSL Hue Target field to the present Light HSL Hue state, the
HSL Saturation Target field to the present Light HSL Saturation state, and the Remaining Time field
shall be omitted.
When sending a Light HSL Default Status message, the Light HSL Server shall set the Lightness field
to the bound Light Lightness Default state, the Hue field to the Light HSL Hue Default state, and the
Saturation field to the Light HSL Saturation Default state.
When sending a Light HSL Range Status message, the Light HSL Server shall set the Hue Range
Min field to the Light Hue Range Min state, the Hue Range Max field to the Light Hue Range Max
state, the Saturation Range Min field to the Light Saturation Range Min state, the Saturation Range
Max field to the Light Saturation Range Max state, and the Status Code field to the status of the last
operation on the Light HSL Hue Range and Light HSL Saturation Range states.
6.4.7.1 Description
The Light HSL Hue Server model extends the Generic Level Server model (see Section 3.3.2). This
model is associated with the Light HSL Server model (see Section 6.4.6).
The model adds the state instances listed in Table 6.132 and messages listed in Table 6.133 to the
model it extends.
SIG
Element Model States Messages Rx Tx
ID
Generic Level Get M
Generic Level Set M
Generic Level Set Unacknowledged M
Generic Level Generic Delta Set M
0x1002
Hue (see Section 3.1.2) Generic Delta Set Unacknowledged M
Generic Move Set M
Generic Move Set Unacknowledged M
Generic Level Status M
0x130A Light HSL Hue Get M
SIG
Element Model States Messages Rx Tx
ID
Light HSL Hue Set M
Light HSL Hue
Light HSL Hue Set Unacknowledged M
(see Section 6.1.4.1)
Light HSL Hue Status M
Table 6.133: Light HSL Hue Server messages
6.4.7.2.2 Receiving Light HSL Hue Set / Light HSL Hue Set Unacknowledged messages
When a Light HSL Hue Server receives a Light HSL Hue Set message or a Light HSL Hue Set
Unacknowledged message, it shall set the Light HSL Hue state to the Hue field of the message,
unless the message has the same values for the SRC, DST, and TID fields as the previous message
received within the last 6 seconds.
Both messages may optionally include a Transition Time field, indicating the transition time to the
target state. If present, the Transition Time field value shall be used as the time for transition to the
target state. If the Transition Time field is not present and the Generic Default Transition Time state
(see Section 3.1.3) is supported on the main element, the Generic Default Transition Time state shall
be used. Otherwise the transition shall be instantaneous.
If the Transition Time field is included, the Delay field is included and indicates a delay in 5-
millisecond steps the server shall wait before executing any state changing behavior for this message.
If the target state is equal to the current state, the transition shall not be started and is considered complete.
If the received message is a Light HSL Hue Set message, the Light HSL Hue Server shall respond
with a Light HSL Hue Status message (see Section 6.4.7.2.3).
When sending a Light HSL Hue Status message, the Light HSL Hue Server shall set the Hue field to
the present Light HSL Hue state.
If the Light HSL Hue Server is in the process of changing the Light HSL Hue state, it shall set the
Target Hue field to the target Light HSL Hue state and the Remaining Time field to the time it will take
to complete the transition. Otherwise, the Target Hue and Remaining Time fields shall be omitted.
6.4.8.1 Description
The Light HSL Saturation Server model extends the Generic Level Server model (see Section 3.3.2).
This model is associated with the Light HSL Server model (see Section 6.4.6).
The model adds the state instances listed in Table 6.134 and messages listed in Table 6.135 to the
model it extends.
Light HSL
Light HSL Main
Server
Light HSL
Saturation Yes Light HSL
Saturation
Saturation Generic Level Saturation
Server
Light HSL
Generic Level Saturation Yes Saturation Light HSL Saturation Saturation
Server
Table 6.134: Light HSL Saturation Server states and bindings
SIG
Element Model States Messages Rx Tx
ID
Generic Level Get M
Generic Level Set M
Generic Level Set Unacknowledged M
Generic Level Generic Delta Set M
0x1002
(see Section 3.1.2) Generic Delta Set Unacknowledged M
Generic Move Set M
Saturation Generic Move Set Unacknowledged M
Generic Level Status M
Light HSL Saturation Get M
Light HSL Saturation Set M
Light HSL Saturation
0x130B Light HSL Saturation Set
(see Section 6.1.4.4) M
Unacknowledged
Light HSL Saturation Status M
Table 6.135: Light HSL Saturation Server messages
6.4.8.2.2 Receiving Light HSL Saturation Set / Light HSL Saturation Set
Unacknowledged messages
When a Light HSL Saturation Server receives a Light HSL Saturation Set message or a Light HSL
Saturation Set Unacknowledged message, it shall set the Light HSL Saturation state to the Saturation
field of the message, unless the message has the same values for the SRC, DST, and TID fields as
the previous message received within the last 6 seconds.
Both messages may optionally include a Transition Time field, indicating the transition time to the
target state. If present, the Transition Time field value shall be used as the time for transition to the
target state. If the Transition Time field is not present and the Generic Default Transition Time state
(see Section 3.1.3) is supported on the main element, the Generic Default Transition Time state shall
be used. Otherwise the transition shall be instantaneous.
If the Transition Time field is included, the Delay field is included and indicates a delay in 5-millisecond
steps the server shall wait before executing any state changing behavior for this message.
If the target state is equal to the current state, the transition shall not be started and is considered complete.
If the received message is a Light HSL Saturation Set message, the Light HSL Saturation Server shall
respond with a Light HSL Saturation Status message (see Section 6.4.8.2.3).
When sending a Light HSL Saturation Status message, the Light HSL Saturation Server shall set the
Saturation field to the present Light HSL Saturation state.
If the Light HSL Saturation Server is in the process of changing the Light HSL Saturation state, it shall
set the Target Saturation field to the target Light HSL Saturation state and the Remaining Time field to
the time it will take to complete the transition. Otherwise, the Target Saturation and Remaining Time
fields shall be omitted.
6.4.9.1 Description
The Light HSL Setup Server model extends the Light HSL Server (see Section 6.4.6) and the Light
Lightness Setup Server (see Section 6.4.4.2.1).
The model adds the messages listed in Table 6.136 to the model it extends:
SIG
Element Model States Messages Rx Tx
ID
Light HSL Hue Default (see Light HSL Default Set M
Section 6.1.4.2) and Light HSL
Saturation Default (see Section Light HSL Default Set
M
6.1.4.5) Unacknowledged
Main 0x1308
Light HSL Hue Range (see Light HSL Range Set M
Section 6.1.4.3) and Light HSL
Saturation Range (see Section Light HSL Range Set
M
6.1.4.6) Unacknowledged
Table 6.137 illustrates the complete structure of elements, states, and messages used by the model.
SIG
Element Model States Messages Rx Tx
ID
Generic OnOff Get M
Generic OnOff Generic OnOff Set M
0x1000
(see Section 3.1.1) Generic OnOff Set Unacknowledged M
Main
Generic OnOff Status M
Generic Default Transition Time Get M
0x1004
Generic Default Transition Time Set M
SIG
Element Model States Messages Rx Tx
ID
Generic Default Transition Time Set
Generic Default M
Unacknowledged
Transition Time
(see Section 3.1.3) Generic Default Transition Time
M
Status
Generic OnPowerUp Generic OnPowerUp Get M
0x1006
(see Section 3.1.4) Generic OnPowerUp Status M
Generic OnPowerUp Set M
Generic OnPowerUp
0x1007 Generic OnPowerUp Set
(see Section 3.1.4) M
Unacknowledged
Generic Level Get M
Generic Level Set M
Generic Level Set Unacknowledged M
Generic Level Generic Delta Set M
0x1002 (see Section
6.1.2.2.2) Generic Delta Set Unacknowledged M
Generic Move Set M
Generic Move Set Unacknowledged M
Generic Level Status M
Light Lightness Get M
Light Lightness Set M
Light Lightness Actual
(see Section 6.1.2.1) Light Lightness Set
M
Unacknowledged
Light Lightness Status M
Light Lightness Last Light Lightness Last Get M
0x1300 (see Section 6.1.2.3) Light Lightness Last Status M
Light Lightness Light Lightness Default Get M
Default (see Section
6.1.2.4) Light Lightness Default Status M
Light Lightness Light Lightness Range Get M
Range (see Section
6.1.2.5) Light Lightness Range Status M
SIG
Element Model States Messages Rx Tx
ID
Default (see Section
6.1.4.5) Light HSL Default Status M
6.4.9.2.1 Receiving Light HSL Default Set / Light HSL Default Set Unacknowledged
messages
When a Light HSL Setup Server receives a Light HSL Default Set message or a Light HSL Default
Set Unacknowledged message, it shall set the bound Light Lightness Default state to the Lightness
field of the message, the Light HSL Hue state to the Hue field of the message, and the Light HSL
Saturation state to the Saturation field of the message.
If the received message is a Light HSL Default Set message, the Light HSL Server shall respond with
a Light HSL Default Status message (see Section 6.4.6.2.7).
6.4.9.3.1 Receiving Light HSL Range Set / Light HSL Range Set Unacknowledged
messages
When a Light HSL Setup Server receives a Light HSL Range Set message or a Light HSL Range Set
Unacknowledged message with values that can be accepted, it shall set the Light HSL Hue Range
state fields and the Light HSL Saturation Range state fields to the corresponding fields of the
message and set the status of the operation to 0x00 (Success).
When a Light HSL Setup Server receives a Light HSL Range Set message or a Light HSL Range Set
Unacknowledged message with values that cannot be accepted, it shall set the status of the operation
to a value representing the reason why the values cannot be accepted, as defined in Table 7.2.
If the received message is a Light HSL Range Set message, the Light HSL Setup Server shall
respond with a Light HSL Range Status message (see Section 6.4.6.2.9).
6.4.10.1 Description
The Light xyL Server model extends the Light Lightness Server model (see Section 6.4.1). When this
model is present on an Element, the corresponding Light xyL Setup Server model (see Section
6.4.11) shall also be present.
The model adds the state instances listed in Table 6.138 and messages listed in Table 6.139 to the
model it extends.
SIG
Element States Messages Rx Tx
Model ID
Light xyL Get M
Light xyL Set M
Light xyL Light xyL Set Unacknowledged M
(see Section 6.1.5) Light xyL Status M
Main 0x130C Light xyL Target Get M
Light xyL Target Status M
Light xyL x Default Light xyL Default Get M
(see Section 6.1.5.2)
Light xyL y Default Light xyL Default Status M
(see Section 6.1.5.5)
Table 6.139: Light xyL Server messages
Table 6.140 illustrates the complete structure of elements, states, and messages used by the model,
including the models it extends.
SIG
Element States Messages Rx Tx
Model ID
Generic OnOff Get M
Generic OnOff Generic OnOff Set M
0x1000
(see Section 3.1.1) Generic OnOff Set Unacknowledged M
Generic OnOff Status M
Generic OnPowerUp Generic OnPowerUp Get M
0x1006
(see Section 3.1.4) Generic OnPowerUp Status M
Generic Level Get M
Generic Level Set M
Generic Level Set Unacknowledged M
Generic Level Generic Delta Set M
0x1002 (see Section
6.1.2.2.2) Generic Delta Set Unacknowledged M
Generic Move Set M
Generic Move Set Unacknowledged M
Main
Generic Level Status M
Light Lightness Get M
Light Lightness Light Lightness Set M
Actual
(see Section 6.1.2.1) Light Lightness Set Unacknowledged M
Light Lightness Status M
Light Lightness Linear Get M
Light Lightness Light Lightness Linear Set M
0x1300
Linear Light Lightness Linear Set
(see Section 6.1.2.1) M
Unacknowledged
Light Lightness Linear Status M
Light Lightness Last Light Lightness Last Get M
(see Section 6.1.2.3) Light Lightness Last Status M
Light Lightness Default Get M
SIG
Element States Messages Rx Tx
Model ID
Light Lightness
Default (see Section Light Lightness Default Status M
6.1.2.4)
Light Lightness Light Lightness Range Get M
Range (see Section
6.1.2.5) Light Lightness Range Status M
Light xyL Get M
Light xyL Set M
Light xyL Light xyL Set Unacknowledged M
(see Section 6.1.5) Light xyL Status M
Light xyL Target Get M
Light xyL Target Status M
0x130C Light xyL x Default Light xyL Default Get M
(see Section 6.1.5.2)
Light xyL y Default Light xyL Default Status M
(see Section 6.1.5.5)
Light xyL x Range Light xyL Range Get M
(see Section 6.1.5.3)
and Light xyL y
Range (see Section Light xyL Range Status M
6.1.5.6)
Table 6.140: Light xyL Server elements, states, and messages
6.4.10.2.2 Receiving Light xyL Set / Light xyL Set Unacknowledged messages
When a Light xyL Server receives a Light xyL Set message or a Light xyL Set Unacknowledged
message, it shall set the Light xyL Lightness state to the xyL Lightness field of the message, the Light
xyL x state to the xyL x field of the message, and the Light xyL y state to the xyL y field of the
message, unless the message has the same values for the SRC, DST, and TID fields as the previous
message received within the last 6 seconds.
Both messages may optionally include a Transition Time field, indicating the transition time to the
target state. If present, the Transition Time field value shall be used as the time for transition to the
target state. If the Transition Time field is not present and the Generic Default Transition Time state
(see Section 3.1.3) is supported, the Generic Default Transition Time state shall be used. Otherwise
the transition shall be instantaneous.
If the Transition Time field is included, the Delay field is included and indicates a delay in 5-
millisecond steps the server shall wait before executing any state changing behavior for this message.
If the target state is equal to the current state, the transition shall not be started and is considered
complete.
If the received message is a Light xyL Set message, the Light xyL Server shall respond with a Light
xyL Status message (see Section 6.4.10.2.3).
When sending a Light xyL Status message, the Light xyL Server shall set the xyL Lightness field to
the present Light xyL Lightness state, the xyL x field to the present Light xyL x state, and the xyL y
field to the present Light xyL y state.
If the Light xyL Server is in the process of changing the Light xyL state, it shall set the Remaining
Time field to the time it will take to complete the transition; otherwise, the Remaining Time field shall
be omitted.
When sending a Light xyL Target Status message, if the Light xyL Server is in the process of
changing the Light xyL state, the Light xyL Server shall set the xyL Lightness field to the target Light
xyL Lightness state, the xyL x field to the target Light xyL x state, the xyL y field to the target Light xyL
y state, and the Remaining Time field to the time it will take to complete the transition.
When sending a Light xyL Target Status message, if the Light xyL Server is not in the process of
changing the Light xyL state, the Light xyL Server shall set the xyL Lightness field to the present Light
xyL Lightness state, the xyL x field to the present Light xyL x state, the xyL y field to the present Light
xyL y state, and the Remaining Time field shall be omitted.
When sending a Light xyL Default Status message, the Light xyL Server shall set the Lightness field
to the bound Light Lightness Default state, the xyL x field to the Light xyL x state, and the xyL y field
to the Light xyL y state.
When sending a Light xyL Range Status message, the Light xyL Server shall set the xyL x Range Min
field to the Light xyL x Range Min state, the xyL x Range Max field to the Light xyL x Range Max
state, xyL y Range Min field to the Light xyL y Range Min state, the xyL y Range Max field to the Light
xyL y Range Max state, and the Status Code field to the status of the last operation on the Light xyL x
Range or Light xyL y Range states.
6.4.11.1 Description
The Light xyL Setup Server model extends the Light xyL Server (see Section 6.4.10) and the Light
Lightness Setup Server (see Section 6.4.4.2.1).
The model adds the messages listed in Table 6.141 to the model it extends:
SIG
Element States Messages Rx Tx
Model ID
Light xyL x Default (see Section Light xyL Default Set M
6.1.5.2)
Light xyL y Default (see Section Light xyL Default Set
M
6.1.5.5) Unacknowledged
Main 0x130D
Light xyL x Range (see Section Light xyL Range Set M
6.1.5.3) and Light xyL y Range Light xyL Range Set
(see Section 6.1.5.6) M
Unacknowledged
Table 6.141: Light xyL Setup Server messages
Table 6.142 illustrates the complete structure of elements, states, and messages used by the model.
SIG
Element States Messages Rx Tx
Model ID
Generic OnOff Get M
Generic OnOff Generic OnOff Set M
0x1000
(see Section 3.1.1) Generic OnOff Set Unacknowledged M
Generic OnOff Status M
Generic Default Transition Time Get M
Generic Default Transition Time Set M
Generic Default
0x1004 Transition Time Generic Default Transition Time Set
M
(see Section 3.1.3) Unacknowledged
Generic Default Transition Time
M
Status
Generic OnPowerUp Get M
Generic OnPowerUp Set M
Main Generic OnPowerUp
0x1007 Generic OnPowerUp Set
(see Section 3.1.4) M
Unacknowledged
Generic OnPowerUp Status M
Generic Level Get M
Generic Level Set M
Generic Level Set Unacknowledged M
Generic Level Generic Delta Set M
0x1002 (see Section
6.1.2.2.2) Generic Delta Set Unacknowledged M
Generic Move Set M
Generic Move Set Unacknowledged M
Generic Level Status M
0x1300 Light Lightness Get M
SIG
Element States Messages Rx Tx
Model ID
6.4.11.2.1 Receiving Light xyL Default Set / Light xyL Default Set Unacknowledged
messages
When a Light xyL Setup Server receives a Light xyL Default Set message or a Light xyL Default Set
Unacknowledged message, it shall set the bound Light Lightness Default state to the Lightness field
of the message, the Light xyL x state to the xyL x field of the message, and the Light xyL y state to the
xyL y field of the message.
If the received message is a Light xyL Default Set message, the Light xyL Server shall respond with a
Light xyL Default Status message (see Section 6.4.10.2.7).
6.4.11.3.1 Receiving Light xyL Range Set / Light xyL Range Set Unacknowledged
messages
When a Light xyL Setup Server receives a Light xyL Range Set message or a Light xyL Range Set
Unacknowledged message with values that can be accepted, it shall set the Light xyL x Range state
fields and the Light xyL y Range state fields to the corresponding fields of the message and the status
of the operation to 0x00 (Success).
When a Light xyL Setup Server receives a Light xyL Range Set message or a Light xyL Range Set
Unacknowledged message with values that cannot be accepted, it shall set the status of the operation
to a value representing the reason why the values cannot be accepted, as defined in Table 7.2.
If the received message is a Light xyL Range Set message, the Light xyL Server shall respond with a
Light xyL Range Status message (see Section 6.4.10.2.9).
6.5.1.1 Description
The Light LC (Lightness Control) Server model extends the Light Lightness Server model (see
Section 6.4.1). When this model is present on an Element, the corresponding Light LC Setup Server
model (see Section 6.5.2) shall also be present.
This model may be used to represent an element that is a client to a Sensor Server model (see
Section 4.3.1) and controls the Light Lightness Actual state (see Section 6.1.2.1) via defined state
bindings.
The model adds the state instances listed in Table 6.143 and messages listed in Table 6.144 to the
model it extends.
Note: Because the Light LC Linear Output state is bound to the Light Lightness Linear state (see
Section 6.2.3.6.1), the Light LC Server model must be located on an element that is
separate from the element the Light Lightness Server model is located on.
Stored
Light LC Server States with Bound States
Scene
State Instance Model State Instance
Light LC Mode Light LC Yes - - -
Stored
Light LC Server States with Bound States
Scene
Light LC Occupancy
Light LC No - - -
Mode
Light LC Light OnOff Light LC No Generic OnOff Generic OnOff Light LC
Light LC Ambient
Light LC No - - -
LuxLevel
Light LC Occupancy Light LC No - - -
Light LC Light LC Light
Generic OnOff Light LC No Light LC
Server OnOff
Table 6.143: Light LC Server states and bindings
SIG
Element Model States Messages Rx Tx
ID
Light LC Mode Get M
Light LC Mode Set M
Light LC Mode
(see Section 6.2.3.1) Light LC Mode Set
M
Unacknowledged
Light LC Mode Status M
Light LC OM Get M
Light LC Occupancy Light LC OM Set M
Mode
(see Section 6.2.3.2) Light LC OM Set Unacknowledged M
Light LC OM Status M
Light LC 0x130F
Light LC Light OnOff Get M
Light LC Light OnOff Set M
Light LC Light OnOff
(see Section 6.2.3.3) Light LC Light OnOff Set
M
Unacknowledged
Light LC Light OnOff Status M
Light LC Occupancy
(see Section 6.2.3.4)
Light LC Ambient Sensor Status M
LuxLevel
(see Section 6.2.3.4)
Table 6.144: Light LC Server messages
Table 6.145 illustrates the complete structure of elements, states, and messages used by the model,
including the models it extends.
SIG
Element Model States Rx Tx
ID
Generic OnOff Get M
Generic OnOff Set M
Generic OnOff
Main 0x1000 Generic OnOff Set
(see Section 3.1.1) M
Unacknowledged
Generic OnOff Status M
SIG
Element Model States Rx Tx
ID
Generic OnPowerUp Generic OnPowerUp Get M
0x1006
(see Section 3.1.4) Generic OnPowerUp Status M
Generic Level Get M
Generic Level Set M
Generic Level Set Unacknowledged M
Generic Level Generic Delta Set M
0x1002
(see Section 3.1.2) Generic Delta Set Unacknowledged M
Generic Move Set M
Generic Move Set Unacknowledged M
Generic Level Status M
Light Lightness Get M
Light Lightness Set M
Light Lightness Actual
(see Section 6.1.2.2) Light Lightness Set
M
Unacknowledged
Light Lightness Status M
Light Lightness Linear Get M
Light Lightness Linear Set M
Light Lightness Linear
(see Section 6.1.2.1) Light Lightness Linear Set
0x1300 M
Unacknowledged
Light Lightness Linear Status M
Light Lightness Last (see Light Lightness Last Get M
Section 6.1.2.3) Light Lightness Last Status M
Light Lightness Default Light Lightness Default Get M
(see Section 6.1.2.4) Light Lightness Default Status M
Light Lightness Range Light Lightness Range Get M
(see Section 6.1.2.5) Light Lightness Range Status M
Generic OnOff Get M
Generic OnOff Set M
Generic OnOff
0x1000 Generic OnOff Set
(see Section 3.1.1) M
Unacknowledged
Generic OnOff Status M
Light LC Mode Get M
Light LC Mode Light LC Mode Get M
Light LC (see Section 6.2.3.1) Light LC Mode Set M
Light LC Mode Status M
Light LC OM Get M
0x130F Light LC Occupancy Light LC OM Get M
Mode
(see Section 6.2.3.2) Light LC OM Set M
Light LC OM Status M
Light LC Light OnOff Light LC Light OnOff Get M
(see Section 6.2.3.3) Light LC Light OnOff Get M
SIG
Element Model States Rx Tx
ID
Light LC Light OnOff Set M
Light LC Light OnOff Status M
Light LC Occupancy
(see Section 6.2.3.4)
Light LC Ambient Sensor Status M
LuxLevel
(see Section 6.2.3.4)
Table 6.145: Light LC Server elements, states, and messages
If the received message is a Light LC Mode Set message, the Light LC Server shall respond with a
Light LC Mode Status message (see Section 6.5.1.3.3).
When sending a Light LC Mode Status message, the Light LC Server shall set the Mode field to the
present Light LC Mode state.
If the received message is a Light LC OM Set message, the Light LC Server shall respond with a
Light LC OM Status message (see Section 6.5.1.4.3).
When sending a Light LC OM Status message, the Light LC Server shall set the Mode field to the
present Light LC Occupancy Mode state.
6.5.1.5.2 Receiving a Light LC Light OnOff Set / Light LC Light OnOff Set
Unacknowledged message
When a Light LC Server receives a Light LC Light OnOff Set message or a Light LC Light OnOff Set
Unacknowledged message, it shall set the Light LC Light OnOff state to the Light OnOff field of the
message, unless the message has the same value for the SRC, DST, and TID fields as the previous
message received within the last 6 seconds.
Both messages may optionally include a Transition Time field indicating the transition time to the
target state. If the Transition Time is not included, the Light LC Server shall use its appropriate
transition times defined by the Light LC Property states (see Section 6.2.4).
If the Transition Time field is included, the Delay field is included and indicates a delay in 5-
millisecond steps the server shall wait before executing any state changing behavior for this message.
If the received message is a Light LC Light OnOff Set message, the Light LC Server shall respond
with a Light LC Light OnOff Status message (see Section 6.5.1.5.3).
When sending a Light LC Light OnOff Status message, the Light LC Server shall set the Light OnOff
field to the present Light LC Light OnOff state. If the Light LC Server is in the process of changing the
Light LC Light OnOff state, it shall set the Target Light OnOff field to the target Light LC Light OnOff
state and the Remaining Time field to the time it will take to complete the transition; otherwise, the
Target Level and Remaining Time fields shall be omitted.
It is recommended to transmit a Light LC Light OnOff Status message when the Light LC Light OnOff
state has been changed locally (as opposed to via the mesh network).
If the message Raw field contains a Raw Value for the Time Since Motion Sensed device property
[13], which represents a value less than or equal to the value of the Light LC Occupancy Delay state
(see Section 6.2.4.1), it shall delay setting the Light LC Occupancy state to 0b1 by the difference
between the value of the Light LC Occupancy Delay state and the received Time Since Motion value.
When a Light LC Server receives a Sensor Status message (see Section 4.2.14), and if the message
Raw field contains a Raw Value for the Present Ambient Light Level device property [13], it shall set
the Light LC Ambient LuxLevel state to the Represented Value of the received Present Ambient Light
Level.
6.5.2.1 Description
The Light LC (Lightness Control) Setup model extends the Light LC Server model (see Section 6.5.1).
This model may be used to configure setup parameters for the Light Lightness Control Server model.
The model adds the state instances listed in Table 6.146 and messages listed in Table 6.147 to the
models it extends:
Stored
Light LC Setup Server States with Bound States
Scene
State Instance Model State Instance
Light LC Property Light LC Yes - - -
Table 6.146: Light LC Setup Server states and bindings
SIG
Element Model States Messages Rx Tx
ID
Light LC Property Get M
Light LC Light LC Property Set M
Light LC 0x1310
Property Light LC Property Set Unacknowledged M
Light LC Property Status M
Table 6.147: Light LC Setup Server messages
Table 6.148 illustrates the complete structure of elements, states, and messages used by the model,
including the models it extends.
SIG
Element Model States Rx Tx
ID
Generic OnOff Get M
Generic OnOff Set M
Generic OnOff
0x1000 Generic OnOff Set
(see Section 3.1.1) M
Unacknowledged
Main
Generic OnOff Status M
Generic OnPowerUp Generic OnPowerUp Get M
0x1006
(see Section 3.1.4) Generic OnPowerUp Status M
0x1002 Generic Level Get M
SIG
Element Model States Rx Tx
ID
Generic Level Set M
Generic Level Set Unacknowledged M
Generic Delta Set M
Generic Level
Generic Delta Set Unacknowledged M
(see Section 3.1.2)
Generic Move Set M
Generic Move Set Unacknowledged M
Generic Level Status M
Light Lightness Get M
Light Lightness Set M
Light Lightness Actual
(see Section 6.1.2.2) Light Lightness Set
M
Unacknowledged
Light Lightness Status M
Light Lightness Linear Get M
Light Lightness Linear Set M
Light Lightness Linear
(see Section 6.1.2.1) Light Lightness Linear Set
0x1300 M
Unacknowledged
Light Lightness Linear Status M
Light Lightness Last (see Light Lightness Last Get M
Section 6.1.2.3) Light Lightness Last Status M
Light Lightness Default Light Lightness Default Get M
(see Section 6.1.2.4) Light Lightness Default Status M
Light Lightness Range Light Lightness Range Get M
(see Section 6.1.2.5) Light Lightness Range Status M
Generic OnOff Get M
Generic OnOff Set M
Generic OnOff
0x1000 Generic OnOff Set
(see Section 3.1.1) M
Unacknowledged
Generic OnOff Status M
Light LC Mode Get M
Light LC Mode Light LC Mode Get M
(see Section 6.2.3.1) Light LC Mode Set M
Light LC Light LC Mode Status M
Light LC OM Get M
Light LC Occupancy Light LC OM Get M
0x130F Mode
(see Section 6.2.3.2) Light LC OM Set M
Light LC OM Status M
Light LC Light OnOff Get M
Light LC Light OnOff Light LC Light OnOff Get M
(see Section 6.2.3.3) Light LC Light OnOff Set M
Light LC Light OnOff Status M
SIG
Element Model States Rx Tx
ID
Light LC Occupancy
(see Section 6.2.3.4)
Light LC Ambient Sensor Status M
LuxLevel
(see Section 6.2.3.5)
Light LC Property Get M
Light LC Property Set M
Light LC Property (see
0x1310 Light LC Property Set
Section 6.2.4) M
Unacknowledged
Light LC Property Status M
Table 6.148: Light LC Setup Server elements, states, and messages
If the received message is a Light LC Property Set message, the Light LC Setup Server shall respond
with a Light LC Property Status message (see Section 6.5.2.2.3).
6.6.1.1 Description
The Light Lightness Client model extends the Generic Power OnOff Client model (see Section 3.4.4).
This model may be used to represent an element that can control an element of a peer device that
exposes a Light Lightness Server model (see Section 6.4.1) via Light Lightness messages (see
Section 6.3.1).
The following table illustrates the complete structure of elements, procedures, and messages used by
the model. At least one message listed in the table shall be supported by this model.
SIG
Element Procedure Messages Rx Tx
Model ID
Light Lightness Get O
Light Lightness Light Lightness Set O
Actual Light Lightness Set Unacknowledged O
Light Lightness Status C.1
Light Lightness Linear Get O
Light Lightness Linear Set O
Light Lightness
Actual Light Lightness Linear Set
O
Unacknowledged
Light Lightness Linear Status C.2
Light Lightness Light Lightness Last Get O
Main 0x1302 Last Light Lightness Last Status C.3
Light Lightness Default Get O
Light Lightness Default Set O
Light Lightness
Default Light Lightness Default Set
O
Unacknowledged
Light Lightness Default Status C.4
Light Lightness Range Get O
Light Lightness Range Set O
Light Lightness
Range Light Lightness Range Set
O
Unacknowledged
Light Lightness Range Status C.5
C.1: If any of the messages: Light Lightness Get, Light Lightness Set are supported, the Light
Lightness Status message shall also be supported; otherwise support for the Light Lightness Status
message is optional.
C.2: If any of the messages: Light Lightness Linear Get, Light Lightness Linear Set are supported, the
Light Lightness Linear Status message shall also be supported; otherwise support for the Light
Lightness Linear Status message is optional.
C.3: If the Light Lightness Last Get message is supported, the Light Lightness Last Status message
shall also be supported; otherwise support for the Light Lightness Last Status message is optional.
C.4: If any of the messages: Light Lightness Default Get, Light Lightness Default Set are supported,
the Light Lightness Default Status message shall also be supported; otherwise support for the Light
Lightness Default Status message is optional.
C.5: If any of the messages: Light Lightness Range Get, Light Lightness Range Set are supported,
the Light Lightness Range Status message shall also be supported; otherwise support for the Light
Lightness Range Status message is optional.
Table 6.149: Light Lightness Client elements and messages
To set the Light Lightness Actual state of a Light Lightness Server without acknowledgment, a Light
Lightness Client shall send a Light Lightness Set Unacknowledged message, setting the Lightness
field to the required value and the TID field to the least recently used value.
Both messages may optionally include a Transition Time field, indicating the transition time to the
target state. If present, the Transition Time field value shall be used as the time for transition to the
target state. If the Transition Time field is not present and the Generic Default Transition Time state
(see Section 3.1.3) is supported, the Generic Default Transition Time state shall be used. Otherwise
the transition shall be instantaneous.
If a Transition Time is included, a Delay field shall be included indicating the message execution delay
representing the time interval between receiving the message by a model and executing the
associated model behaviors.
To retransmit the message, a Light Lightness Client shall use the same value for the TID field as in
the previously sent message, within 6 seconds from sending that message.
The choice to use a Light Lightness Set or a Light Lightness Set Unacknowledged message is an
implementation detail.
An element, typically due to user interaction, may send a Light Lightness Set or a Light Lightness Set
Unacknowledged message at any time.
If the Light Lightness Server is in a process of changing the Light Lightness Actual state, the Light
Lightness Client can determine the target Light Lightness Actual state that is indicated by the Target
Lightness field of the message as well as the remaining transition time that is indicated by the
Remaining Time field of the message.
6.6.1.3.2 Sending Light Lightness Linear Set / Light Lightness Linear Set
Unacknowledged messages
To set the Light Lightness Linear state of a Light Lightness Server with acknowledgment, a Light
Lightness Client shall send a Light Lightness Linear Set message, setting the Lightness field to the
required value and the TID field to the least recently used value. The response is a Light Lightness
Linear Status message (see Section 6.6.1.3.3).
To set the Light Lightness Linear state of a Light Lightness Server without acknowledgment, a Light
Lightness Client shall send a Light Lightness Linear Set Unacknowledged message, setting the
Lightness field to the required value and the TID field to the least recently used value.
Both messages may optionally include a Transition Time field, indicating the transition time to the
target state. If present, the Transition Time field value shall be used as the time for transition to the
target state. If the Transition Time field is not present and the Generic Default Transition Time state
(see Section 3.1.3) is supported, the Generic Default Transition Time state shall be used. Otherwise
the transition shall be instantaneous.
If a Transition Time is included, a Delay field shall be included indicating the message execution delay
representing the time interval between receiving the message by a model and executing the
associated model behaviors.
To retransmit the message, a Light Lightness Client shall use the same value for the TID field as in
the previously sent message, within 6 seconds from sending that message.
The choice to use a Light Lightness Linear Set or a Light Lightness Linear Set Unacknowledged
message is an implementation detail.
An element, typically due to user interaction, may send a Light Lightness Linear Set or a Light
Lightness Linear Set Unacknowledged message at any time.
If the Light Lightness Server is in a process of changing the Light Lightness Linear state, the Light
Lightness Client can determine the target Light Lightness Linear state that is indicated by the Target
Lightness field of the message as well as the remaining transition time that is indicated by the
Remaining Time field of the message.
6.6.1.5.2 Sending Light Lightness Default Set / Light Lightness Default Set
Unacknowledged messages
To set the Light Lightness Default state of a Light Lightness Server with acknowledgment, a Light
Lightness Client shall send a Light Lightness Default Set message, setting the Lightness field to the
required value. The response is a Light Lightness Default Status message (see Section 6.6.1.4.2).
To set the Light Lightness Default state of a Light Lightness Server without acknowledgment, a Light
Lightness Client shall send a Light Lightness Default Set Unacknowledged message, setting the
Lightness field to the required value.
The choice to use a Light Lightness Default Set or a Light Lightness Default Set Unacknowledged
message is an implementation detail.
6.6.1.6.2 Sending Light Lightness Range Set / Light Lightness Range Set
Unacknowledged messages
To set the Light Lightness Range state of a Light Lightness Setup Server with acknowledgment, a
Light Lightness Client shall send a Light Lightness Range Set message, setting the Range Min and
Range Max fields to the required values. The response is a Light Lightness Range Status message
(see Section 6.6.1.6.3).
To set the Light Lightness Range state of a Light Lightness Setup Server without acknowledgment, a
Light Lightness Client shall send a Light Lightness Range Set Unacknowledged message, setting the
Range Min and Range Max fields to the required values.
The choice to use a Light Lightness Range Set or a Light Lightness Range Set Unacknowledged
message is an implementation detail.
An element, typically due to user interaction, may send a Light Lightness Range Set or a Light
Lightness Range Set Unacknowledged message at any time.
6.6.2.1 Description
The Light CTL Client model extends the Light Lightness Client model (see Section 6.6.1).
This model may be used to represent an element that can control an element of a peer device that
exposes a Light CTL Server model (see Section 6.4.2) via Light CTL messages (see Section 6.3.2).
The following table illustrates the complete structure of elements, procedures, and messages used by
the model. At least one message listed in the table shall be supported by this model.
SIG
Element Model Procedure Rx Tx
ID
Light CTL Get O
Light CTL Set O
Light CTL Lightness
Light CTL Set Unacknowledged O
Light CTL Status C.1
Light CTL Temperature Get O
Light CTL Temperature Set O
Light CTL
Temperature Light CTL Temperature Set
O
Unacknowledged
Light CTL Temperature Status C.2
Main 0x1305 Light CTL Default Get O
Light CTL Default Set O
Light CTL Default Light CTL Default Set
O
Unacknowledged
Light CTL Default Status C.3
Light CTL Temperature Range Get O
Light CTL Temperature Range Set O
Light CTL Light CTL Temperature Range Set
Temperature Range O
Unacknowledged
Light CTL Temperature Range
C.4
Status
C.1: If any of the messages: Light CTL Get, Light CTL Set are supported, the Light CTL Status
message shall also be supported; otherwise support for the Light CTL Status message is optional.
C.2: If any of the messages: Light CTL Temperature Get, Light CTL Temperature Set are supported,
the Light CTL Temperature Status message shall also be supported; otherwise support for the Light
CTL Temperature Status message is optional.
C.3: If any of the messages: Light CTL Default Get, Light CTL Default Set are supported, the Light
CTL Default Status message shall also be supported; otherwise support for the Light CTL Default
Status message is optional.
C.4: If any of the messages: Light CTL Temperature Range Get, Light CTL Temperature Range Set
are supported, the Light CTL Temperature Range Status message shall also be supported; otherwise
support for the Light CTL Temperature Range Status message is optional.
Table 6.150: Light CTL Client elements and messages
6.6.2.2.2 Sending Light CTL Set / Light CTL Set Unacknowledged messages
To set the Light CTL state of a Light CTL Server with acknowledgment, a Light CTL Client shall send
a Light CTL Set message, setting the CTL Lightness and CTL Temperature fields to the required
values and the TID field to the least recently used value. The response is a Light CTL Status
message (see Section 6.6.2.2.3).
To set the Light CTL state of a Light CTL Server without acknowledgment, a Light CTL Client shall
send a Light CTL Set Unacknowledged message, setting the CTL Lightness and CTL Temperature
fields to the required values and the TID field to the least recently used value.
Both messages may optionally include a Transition Time field, indicating the transition time to the
target state. If present, the Transition Time field value shall be used as the time for transition to the
target state. If the Transition Time field is not present and the Generic Default Transition Time state
(see Section 3.1.3) is supported, the Generic Default Transition Time state shall be used. Otherwise
the transition shall be instantaneous.
If a Transition Time is included, a Delay field shall be included indicating the message execution delay
representing the time interval between receiving the message by a model and executing the
associated model behaviors.
To retransmit the message, a Light CTL Client shall use the same value for the TID field as in the
previously sent message, within 6 seconds from sending that message.
The choice to use a Light CTL Set or a Light CTL Set Unacknowledged message is an
implementation detail.
An element, typically due to user interaction, may send a Light CTL Set or a Light CTL Set
Unacknowledged message at any time.
If the Light CTL Server is in a process of changing the Light CTL state, the Light CTL Client can
determine the target Light CTL state that is indicated by the Target CTL Lightness and Target CTL
Temperature fields of the message, as well as the remaining transition time that is indicated by the
Remaining Time field of the message.
6.6.2.3.2 Sending Light CTL Default Set / Light CTL Default Set Unacknowledged
messages
To set the bound Light Lightness Default state and the Light CTL Temperature Default and Light CTL
Delta UV Default states of a Light CTL Server with acknowledgment, a Light CTL Client shall send a
Light CTL Default Set message, setting the Lightness, Temperature, and Delta UV fields to the
required values. The response is a Light CTL Default Status message (see Section 6.6.2.3.3).
To set the bound Light Lightness Default state and the Light CTL Temperature Default and Light CTL
Delta UV Default states of a Light CTL Server without acknowledgment, a Light CTL Client shall send
a Light CTL Default Set Unacknowledged message, setting the Lightness, Temperature, and Delta
UV fields to the required values.
The choice to use a Light CTL Default Set or a Light CTL Default Set Unacknowledged message is an
implementation detail.
6.6.2.4.2 Sending Light CTL Temperature Set / Light CTL Temperature Set
Unacknowledged messages
To set the Light CTL Temperature state of a Light CTL Server with acknowledgment, a Light CTL
Client shall send a Light CTL Temperature Set message, setting the CTL Temperature and CTL Delta
UV fields to the required values and the TID field to the least recently used value. The response is a
Light CTL Temperature Status message (see Section 6.6.2.4.3).
To set the Light CTL Temperature state of a Light CTL Server without acknowledgment, a Light CTL
Client shall send a Light CTL Temperature Set Unacknowledged message, setting the CTL
Temperature and CTL Delta UV fields to the required values and the TID field to the least recently
used value.
Both messages may optionally include a Transition Time field, indicating the transition time to the
target state. If present, the Transition Time field value shall be used as the time for transition to the
target state. If the Transition Time field is not present and the Generic Default Transition Time state
(see Section 3.1.3) is supported, the Generic Default Transition Time state shall be used. Otherwise
the transition shall be instantaneous.
If a Transition Time is included, a Delay field shall be included indicating the message execution delay
representing the time interval between receiving the message by a model and executing the
associated model behaviors.
To retransmit the message, a Light CTL Client shall use the same value for the TID field as in the
previously sent message, within 6 seconds from sending that message.
The choice to use a Light CTL Temperature Set or a Light CTL Temperature Set Unacknowledged
message is an implementation detail.
An element, typically due to user interaction, may send a Light CTL Temperature Set or a Light CTL
Temperature Set Unacknowledged message at any time.
If the Light CTL Server is in a process of changing the Light CTL Temperature state, the Light CTL
Client can determine the target Light CTL Temperature state that is indicated by the Target CTL
Temperature and Target CTL Delta UV fields of the message, as well as the remaining transition time
that is indicated by the Remaining Time field of the message.
6.6.2.5.2 Sending Light CTL Temperature Range Set / Light CTL Temperature
Range Set Unacknowledged messages
To set the Light CTL Temperature Range state of a Light CTL Setup Server with acknowledgment, a
Light CTL Client shall send a Light CTL Temperature Range Set message, setting the Range Min and
Range Max fields to the required values. The response is a Light CTL Temperature Range Status
message (see Section 6.6.2.5.3).
To set the Light CTL Temperature Range state of a Light CTL Setup Server without acknowledgment,
a Light CTL Client shall send a Light CTL Temperature Range Set Unacknowledged message, setting
the Range Min and Range Max fields to the required values.
The choice to use a Light CTL Temperature Range Set or a Light CTL Temperature Range Set
Unacknowledged message is an implementation detail.
An element, typically due to user interaction, may send a Light CTL Temperature Range Set or a
Light CTL Temperature Range Set Unacknowledged message at any time.
6.6.3.1 Description
The Light HSL Client model extends the Light Lightness Client model (see Section 6.6.1).
This model may be used to represent an element that can control an element of a peer device that
exposes a Light HSL Server model (see Section 6.4.3.3.1) via Light HSL messages (see Section
6.3.2.13).
The following table illustrates the complete structure of elements, procedures, and messages used by
the model. At least one message listed in the table shall be supported by this model.
SIG
Element Procedure Messages Rx Tx
Model ID
Light HSL Get O
Light HSL Set O
Light HSL Set Unacknowledged O
Light HSL
Light HSL Status C.1
Light HSL Target Get O
Light HSL Target Status C.2
Light HSL Default Get O
Light HSL Default Set O
Light HSL Default Light HSL Default Set
O
Unacknowledged
Light HSL Default Status C.3
Light HSL Range Get O
Main 0x1309 Light HSL Range Set O
Light HSL Range Light HSL Range Set
O
Unacknowledged
Light HSL Range Status C.4
Light HSL Hue Get O
Light HSL Hue Set O
Light HSL Hue Light HSL Hue Set
O
Unacknowledged
Light HSL Hue Status C.5
Light HSL Saturation Get O
Light HSL Saturation Set O
Light HSL Saturation Light HSL Saturation Set
O
Unacknowledged
Light HSL Saturation Status C.6
C.1: If any of the messages: Light HSL Get, Light HSL Set are supported, the Light HSL Status
message shall also be supported; otherwise support for the Light HSL Status message is optional.
C.2: If the Light HSL Target Get message is supported, the Light HSL Target Status message shall
also be supported; otherwise support for the Light HSL Target Status message is optional.
C.3: If any of the messages: Light HSL Default Get, Light HSL Default Set are supported, the Light
HSL Default Status message shall also be supported; otherwise support for the Light HSL Default
Status message is optional.
C.4: If any of the messages: Light HSL Range Get, Light HSL Range Set are supported, the Light
HSL Range Status message shall also be supported; otherwise support for the Light HSL Range
Status message is optional.
C.5: If any of the messages: Light HSL Hue Get, Light HSL Hue Set are supported, the Light HSL
Hue Status message shall also be supported; otherwise support for the Light HSL Hue Status
message is optional.
C.6: If any of the messages: Light HSL Saturation Get, Light HSL Saturation Set are supported, the
Light HSL Saturation Status message shall also be supported; otherwise support for the Light HSL
Saturation Status message is optional.
Table 6.151: Light HSL Client elements and messages
6.6.3.2.2 Sending Light HSL Set / Light HSL Set Unacknowledged messages
To set the Light HSL state of a Light HSL Server with acknowledgment, a Light HSL Client shall send
a Light HSL Set message, setting the HSL Lightness, HSL Hue, and HSL Saturation fields to the
required values and the TID field to the least recently used value. The response is a Light HSL Status
message (see Section 6.6.3.2.3).
To set the Light HSL state of a Light HSL Server without acknowledgment, a Light HSL Client shall
send a Light HSL Set Unacknowledged message, setting the HSL Lightness, HSL Hue, and HSL
Saturation fields to the required values and the TID field to the least recently used value.
Both messages may optionally include a Transition Time field, indicating the transition time to the
target state. If present, the Transition Time field value shall be used as the time for transition to the
target state. If the Transition Time field is not present and the Generic Default Transition Time state
(see Section 3.1.3) is supported, the Generic Default Transition Time state shall be used. Otherwise
the transition shall be instantaneous.
If a Transition Time is included, a Delay field shall be included indicating the message execution delay
representing the time interval between receiving the message by a model and executing the
associated model behaviors.
To retransmit the message, a Light HSL Client shall use the same value for the TID field as in the
previously sent message, within 6 seconds from sending that message.
The choice to use a Light HSL Set or a Light HSL Set Unacknowledged message is an
implementation detail.
An element, typically due to user interaction, may send a Light HSL Set or a Light HSL Set
Unacknowledged message at any time.
If the Light HSL Server is in a process of changing the Light HSL state, the Light HSL Client can
determine the remaining transition time that is indicated by the Remaining Time field of the message.
If the Light HSL Server is in a process of changing the Light HSL state, the Light HSL Client can
determine the remaining transition time that is indicated by the Remaining Time field of the message.
6.6.3.3.2 Sending Light HSL Default Set / Light HSL Default Set Unacknowledged
messages
To set the bound Light Lightness Default state and the Light HSL Hue Default and Light HSL
Saturation Default states of a Light HSL Server with acknowledgment, a Light HSL Client shall send a
Light HSL Default Set message, setting the Lightness, Hue, and Saturation fields to the required
values. The response is a Light HSL Default Status message (see Section 6.6.3.3.3).
To set the bound Light Lightness Default state and the Light HSL Hue Default and Light HSL
Saturation Default states of a Light HSL Server without acknowledgment, a Light HSL Client shall
send a Light HSL Default Set Unacknowledged message, setting the Lightness, Hue, and Saturation
fields to the required values.
The choice to use a Light HSL Default Set or a Light HSL Default Set Unacknowledged message is
an implementation detail.
6.6.3.4.2 Sending Light HSL Range Set / Light HSL Range Set Unacknowledged
messages
To set the Light HSL Hue Range or a Light HSL Saturation Range state of a Light HSL Setup Server
with acknowledgment, a Light HSL Client shall send a Light HSL Range Set message, setting the Hue
Range Min, Hue Range Max, Saturation Range Min and Saturation Range Max fields to the required
values. The response is a Light HSL Range Status message (see Section 6.6.3.4.3).
To set the Light HSL Hue Range or a Light HSL Saturation Range state of a Light HSL Setup Server
without acknowledgment, a Light HSL Client shall send a Light HSL Range Set Unacknowledged
message, setting the Hue Range Min, Hue Range Max, Saturation Range Min, and Saturation Range
Max fields to the required values.
The choice to use a Light HSL Range Set or a Light HSL Range Set Unacknowledged message is an
implementation detail.
An element, typically due to user interaction, may send a Light HSL Range Set or a Light HSL Range
Set Unacknowledged message at any time.
6.6.3.5.2 Sending Light HSL Hue Set / Light HSL Hue Set Unacknowledged
messages
To set the Light HSL Hue state of a Light HSL Server with acknowledgment, a Light HSL Client shall
send a Light HSL Hue Set message, setting the HSL Hue field to the required value and the TID field
to the least recently used value. The response is a Light HSL Hue Status message (see Section
6.6.3.5.3).
To set the Light HSL Hue state of a Light HSL Server without acknowledgment, a Light HSL Client
shall send a Light HSL Hue Set Unacknowledged message, setting the HSL Hue field to the required
value and the TID field to the least recently used value.
Both messages may optionally include a Transition Time field, indicating the transition time to the
target state. If present, the Transition Time field value shall be used as the time for transition to the
target state. If the Transition Time field is not present and the Generic Default Transition Time state
(see Section 3.1.3) is supported, the Generic Default Transition Time state shall be used. Otherwise
the transition shall be instantaneous.
If a Transition Time is included, a Delay field shall be included indicating the message execution delay
representing the time interval between receiving the message by a model and executing the
associated model behaviors.
To retransmit the message, a Light HSL Client shall use the same value for the TID field as in the
previously sent message, within 6 seconds from sending that message.
The choice to use a Light HSL Hue Set or a Light HSL Hue Set Unacknowledged message is an
implementation detail.
An element, typically due to user interaction, may send a Light HSL Hue Set or a Light HSL Hue Set
Unacknowledged message at any time.
If the Light HSL Server is in a process of changing the Light HSL Hue state, the Light HSL Client can
determine the remaining transition time that is indicated by the Remaining Time field of the message.
6.6.3.6.2 Sending Light HSL Saturation Set / Light HSL Saturation Set
Unacknowledged messages
To set the Light HSL Saturation state of a Light HSL Server with acknowledgment, a Light HSL Client
shall send a Light HSL Saturation Set message, setting the HSL Saturation field to the required value
and the TID field to the least recently used value. The response is a Light HSL Saturation Status
message (see Section 6.6.3.6.3).
To set the Light HSL Saturation state of a Light HSL Server without acknowledgment, a Light HSL
Client shall send a Light HSL Saturation Set Unacknowledged message, setting the HSL Saturation
field to the required value and the TID field to the least recently used value.
Both messages may optionally include a Transition Time field, indicating the transition time to the
target state. If present, the Transition Time field value shall be used as the time for transition to the
target state. If the Transition Time field is not present and the Generic Default Transition Time state
(see Section 3.1.3) is supported, the Generic Default Transition Time state shall be used. Otherwise
the transition shall be instantaneous.
If a Transition Time is included, a Delay field shall be included indicating the message execution delay
representing the time interval between receiving the message by a model and executing the
associated model behaviors.
To retransmit the message, a Light HSL Client shall use the same value for the TID field as in the
previously sent message, within 6 seconds from sending that message.
The choice to use a Light HSL Saturation Set or a Light HSL Saturation Set Unacknowledged
message is an implementation detail.
An element, typically due to user interaction, may send a Light HSL Saturation Set or a Light HSL
Saturation Set Unacknowledged message at any time.
If the Light HSL Server is in a process of changing the Light HSL Saturation state, the Light HSL
Client can determine the remaining transition time that is indicated by the Remaining Time field of the
message.
6.6.4.1 Description
The Light xyL Client model extends the Light Lightness Client model (see Section 6.6.1).
This model may be used to represent an element that can control an element of a peer device that
exposes a Light xyL Server model (see Section 6.4.10) via Light xyL messages (see Section 6.3.4).
The following table illustrates the complete structure of elements, procedures, and messages used by
the model. At least one message listed in the table shall be supported by this model.
SIG
Element Procedure Messages Rx Tx
Model ID
Light xyL Get O
Main 0x130E Light xyL Light xyL Set O
Light xyL Set Unacknowledged O
SIG
Element Procedure Messages Rx Tx
Model ID
Light xyL Status C.1
Light xyL Target Get O
Light xyL Target Status C.2
Light xyL Default Get O
Light xyL Default Set O
Light xyL
Default Light xyL Default Set
O
Unacknowledged
Light xyL Default Status C.3
Light xyL Range Get O
Light xyL Range Set O
Light xyL
Range Light xyL Range Set
O
Unacknowledged
Light xyL Range Status C.4
C.1: If any of the messages: Light xyL Get, Light xyL Set are supported, the Light xyL Status message
shall also be supported; otherwise support for the Light xyL Status message is optional.
C.2: If the Light xyL Target Get message is supported, the Light xyL Target Status message shall also
be supported; otherwise support for the Light xyL Target Status message is optional.
C.3: If any of the messages: Light xyL Default Get, Light xyL Default Set are supported, the Light xyL
Default Status message shall also be supported; otherwise support for the Light xyL Default Status
message is optional.
C.4: If any of the messages: Light xyL Range Get, Light xyL Range Set are supported, the Light xyL
Range Status message shall also be supported; otherwise support for the Light xyL Range Status
message is optional.
Table 6.152: Light xyL Client elements and messages
6.6.4.2.2 Sending Light xyL Set / Light xyL Set Unacknowledged messages
To set the Light xyL state of a Light xyL Server with acknowledgment, a Light xyL Client shall send a
Light xyL Set message, setting the xyL Lightness, xyL x and xyL y fields to the required values, and
the TID field to the least recently used value. The response is a Light xyL Status message (see
Section 6.6.4.2.3).
To set the Light xyL state of a Light xyL Server without acknowledgment, a Light xyL Client shall send
a Light xyL Set Unacknowledged message, setting the xyL Lightness, xyL x and xyL y fields to the
required values, and the TID field to the least recently used value.
Both messages may optionally include a Transition Time field, indicating the transition time to the
target state. If present, the Transition Time field value shall be used as the time for transition to the
target state. If the Transition Time field is not present and the Generic Default Transition Time state
(see Section 3.1.3) is supported, the Generic Default Transition Time state shall be used. Otherwise
the transition shall be instantaneous.
If a Transition Time is included, a Delay field shall be included indicating the message execution delay
representing the time interval between receiving the message by a model and executing the
associated model behaviors.
To retransmit the message, a Light xyL Client shall use the same value for the TID field as in the
previously sent message, within 6 seconds from sending that message.
The choice to use a Light xyL Set or a Light xyL Set Unacknowledged message is an implementation
detail.
An element, typically due to user interaction, may send a Light xyL Set or a Light xyL Set
Unacknowledged message at any time.
If the Light xyL Server is in a process of changing the Light xyL state, the Light xyL Client can
determine the remaining transition time that is indicated by the Remaining Time field of the message.
If the Light xyL Server is in a process of changing the Light xyL state, the Light xyL Client can
determine the remaining transition time that is indicated by the Remaining Time field of the message.
6.6.4.3.2 Sending Light xyL Default Set / Light xyL Default Set Unacknowledged
messages
To set the bound Light Lightness Default state and the Light xyL x Default and Light xyL y Default
states of a Light xyL Server with acknowledgment, a Light xyL Client shall send a Light xyL Default
Set message, setting the Lightness and xyL x and xyL y fields to the required values. The response is
a Light xyL Default Status message (see Section 6.6.4.3.3).
To set the bound Light Lightness Default state and the Light xyL x Default and Light xyL y Default
states of a Light xyL Server without acknowledgment, a Light xyL Client shall send a Light xyL Default
Set Unacknowledged message, setting the Lightness and xyL x and xyL y fields to the required
values.
The choice to use a Light xyL Default Set or a Light xyL Default Set Unacknowledged message is an
implementation detail.
6.6.4.4.2 Sending Light xyL Range Set / Light xyL Range Set Unacknowledged
messages
To set the Light xyL x Range or a Light xyL y Range state of a Light xyL Setup Server with
acknowledgment, a Light xyL Client shall send a Light xyL Range Set message, setting the xyL x
Range Min, xyL x Range Max, xyL y Range Min and xyL y Range Max fields to the required values.
The response is a Light xyL Range Status message (see Section 6.6.4.4.3).
To set the Light xyL x Range or a Light xyL y Range state of a Light xyL Setup Server without
acknowledgment, a Light xyL Client shall send a Light xyL Range Set Unacknowledged message,
setting the xyL x Range Min, xyL x Range Max, xyL y Range Min, and xyL y Range Max fields to the
required values.
The choice to use a Light xyL Range Set or a Light HSL Range Set Unacknowledged message is an
implementation detail.
An element, typically due to user interaction, may send a Light xyL Range Set or a Light xyL Range
Set Unacknowledged message at any time.
6.6.5.1 Description
The Light LC (Lightness Control) Client model extends the Light Lightness Client model (see
Section 6.6.1).
This model may be used to represent an element that can configure an element of a peer device that
exposes a Light LC (Lightness Control) Setup Server model (see Section 6.5.2) via Light Lightness
Control messages (see Section 6.3.6).
SIG
Element Procedure Rx Tx
Model ID
Light LC Mode Get O
Light LC Mode Set O
Light LC Mode
Main 0x1311 Light LC Mode Set Unacknowledged O
Light LC Mode Status C.1
Light LC OM Get O
SIG
Element Procedure Rx Tx
Model ID
Light LC OM Set O
Light LC Occupancy
Light LC OM Set Unacknowledged O
Mode
Light LC OM Status C.2
Light LC Light OnOff Get O
Light LC Light OnOff Set O
Light LC Light OnOff Light LC Light OnOff Set
O
Unacknowledged
Light LC Light OnOff Status C.3
Light LC Property Get O
Light LC Property Set O
Light LC Property Light LC Property Set
O
Unacknowledged
Light LC Property Status C.4
C.1: If any of the messages: Light LC Mode Get, Light LC Mode Set are supported, the Light LC
Mode Status message shall also be supported; otherwise support for the Light LC Mode Status
message is optional.
C.2: If any of the messages: Light LC OM Get, Light LC Mode Set are supported, the Light LC OM
Status message shall also be supported; otherwise support for the Light LC OM Status message is
optional.
C.3: If any of the messages: Light LC Light OnOff Get, Light LC Light OnOff Set are supported, the
Light LC Light OnOff Status message shall also be supported; otherwise support for the Light LC
Light OnOff Status message is optional.
C.4: If any of the messages: Light LC Property Get, Light LC Property Set are supported, the Light LC
Property Status message shall also be supported; otherwise support for the Light LC Property Status
message is optional.
Table 6.153: Light LC Client procedures and messages
To set the Light LC Mode state of a Light LC Server without acknowledgment, a Light LC Client shall
send a Light LC Mode Set Unacknowledged message, setting the Mode field to the required value.
The choice to use a Light LC Mode Set or a Light LC Mode Unacknowledged message is an
implementation detail.
An element, typically due to user interaction, may send a Light LC Mode Set or a Light LC Mode Set
Unacknowledged message at any time.
To set the Light LC Occupancy Mode state of a Light LC Server without acknowledgment, a Light LC
Client shall send a Light LC OM Set Unacknowledged message, setting the Mode field to the required
value.
An element, typically due to user interaction, may send a Light LC OM Set or a Light LC OM Set
Unacknowledged message at any time.
6.6.5.4.2 Sending Light LC Light OnOff Set / Light LC Light OnOff Set
Unacknowledged messages
To set the Light LC Light OnOff state of a Light LC Server with acknowledgment, a Light LC Client
shall send a Light LC Light OnOff Set message, setting the Light OnOff field to the required value and
the TID field to the least recently used value. The response is a Light LC Light OnOff Status message
(see Section 6.6.5.4.3).
To set the Light LC Light OnOff state of a Light LC Server without acknowledgment, a Light LC Client
shall send a Light LC Light OnOff Set Unacknowledged message, setting the Light OnOff field to the
required value and the TID field to the least recently used value.
Both messages may optionally include a Transition Time field indicating the transition time to the
target state. If the Transition Time is not included, the Light LC Server shall use its appropriate
transition times defined by the Light LC Property states (see Section 6.2.4).
If a Transition Time is included, a Delay field shall be included indicating the message execution delay
representing the time interval between receiving the message by a model and executing the
associated model behaviors.
To retransmit the message, a Light LC Client shall use the same value for the TID field as in the
previously sent message within 6 seconds from sending that message.
The choice to use a Light LC Light OnOff Set or a Light LC Light OnOff Unacknowledged message is
an implementation detail.
An element, typically due to user interaction, may send a Light LC Light OnOff Set or a Light LC Light
OnOff Set Unacknowledged message at any time.
If the Light LC Server is in a process of changing the Light LC Light OnOff state, the Light LC Client
can determine the target Light LC Light OnOff state that is indicated by the Target Light OnOff field of
the message as well as the remaining transition time that is indicated by the Remaining Time field of
the message.
To set the Light LC Property state of a Light LC Setting Sever without acknowledgment, a Light LC
Client shall send a Light LC Property Set Unacknowledged message, setting the Light LC Property ID
field to the value identifying the device property and the Light LC Property Value field to the required
value.
The choice to use a Light LC Property Set or a Light LC Property Set Unacknowledged message is an
implementation detail.
The following types of relations are illustrated: interactions via messages between client models
(represented by blue rectangles) and server models (represented by dark blue rectangles), hierarchy
of models extending other models, server models serving states (represented by red rounded
rectangles), and bindings between states.
OnOff OnOff
Client Server OnOff
0x1001 0x1000
Level Level
Client Server Level
0x1003 0x1002
Lightness Actual
Power OnOff
Setup Server
0x1007 Lightness Linear
Lightness Last
Lightness Lightness
Client Server
0x1302 0x1300
Lightness Default
Lightness Range
Lightness
Setup Server
0x1301 Light LC
Mode
Light LC
Occupancy Mode
Light LC
Server
0x130F Light LC
Light OnOff
Light LC
Ambient LuxLevel
Light LC
Occupancy
Light LC
Light LC Light LC Linear Output
Client Setup Server
0x1311 0x1310
Light LC
Property
Light CTL
Temperature
Light CTL
Light CTL Temperature
Server Light CTL Range
0x1303
Light CTL
Temperature
Default
Light CTL
Light CTL
Delta UV
Client
0x1305
Light CTL
Delta UV Default
Light CTL
Lightness
Light CTL
Setup Server
0x1304
Light CTL
Temperature
Server
0x1306
OnOff OnOff
Client Server OnOff
0x1001 0x1000
Level Level
Client Server Level
0x1003 0x1002
Lightness Linear
Default Transition Default Transition
Time Client Time Server
0x1005 0x1004
Lightness Last
Lightness Lightness
Client Server Lightness Default
0x1302 0x1300
Lightness Range
Lightness
Setup Server
0x1301
Light HSL
Lightness
Light HSL
Saturation Default
Light HSL
Server Light HSL
Light HSL
0x1307
Saturation Range
Light HSL
Light HSL Hue
Saturation Server
0x130B
Light HSL Light HSL
Client Light HSL Saturation
0x1309 Setup Server
0x1308 Light xyL
Lightness
Light xyL
x
Light xyL
x Default
Light xyL
Server Light xyL
Light xyL
0x130C
x Range
Light xyL
y
Light xyL
Client
0x130E Light xyL
y Default
Light xyL
y Range
Light xyL
Setup Server
0x130D
7 Summary
This section provides summaries of messages (and the associated opcodes) (see Section 7.1), status
codes (see Section 7.2), models (see Section 7.3), and message flow sequences (see Section 7.4).
3. If the Set message in step (1) was acknowledged, a corresponding Status acknowledgment
message is sent back to the originator.
• An appropriate status message shall be published immediately after the state transition ends.
• After a state transition ended, an element shall publish a status message periodically. The
publishing period is determined by the Model Publish Period state that is set by the Model
Publication Set message (Mesh Profile specification [2]). A recommended value of the Model
Publish Period state is 30 seconds. A value of zero means status messages are not published
periodically by a model.
Note: When multiple bound states are involved in the transition, it is up to an implementation to
decide which status message is the most appropriate to publish. It is recommended to use
a single message that publishes the most complete information about the states being
changed.
Figure 7.6: Generic Level Set on a Generic Level state bound to a Light Lightness Actual state
Figure 7.8: Status publishing after a state change with a Generic OnOff Set
9 References
[1] Bluetooth Core Specification, Version 5 or later
[6] IESNA Lighting Handbook, 9th Edition, (New York; IESNA, 2000), 27-4
[8] NIMA Technical Report TR8350.2, "Department of Defense World Geodetic System 1984, Its
Definition and Relationships With Local Geodetic Systems" http://earth-
info.nga.mil/GandG/publications/tr8350.2/tr8350_2.html
[9] IEEE Std 754-2008, IEEE Computer Society (August 29, 2008). IEEE Standard for Floating-
Point Arithmetic. IEEE. doi:10.1109/IEEESTD.2008.4610935. ISBN 978-0-7381-5753-5.
[16] NIST Time Frequently Asked Questions (FAQ) (Physical Measurement Laboratory of the
National Institute of Standards and Technology of the U.S. Department of Commerce)
(https://www.nist.gov/pml/time-and-frequency-division/nist-time-frequently-asked-questions-faq)
A.1 Time
Time can be represented in many different formats. Most commonly, it is represented either as a
structure containing fields such as year, month, day, hours, minutes, and seconds. or as a simple
count of seconds since a given epoch. For example, POSIX defines the time_t type as the number of
seconds after the UTC time of 1970-01-01 at 00:00:00.
The earth's rotational speed changes irregularly for a number of reasons, though in the long term it is
slowing down. This means that days are getting gradually longer, and a naïve approach of including
86400 seconds in each day will mean that the clock will drift out of synchronization with the sun and
the stars, with 00:00 getting earlier and earlier in the night. There are two standard time scales used
to address this point. The first is TAI, which ticks at a steady rate and always has exactly 60 seconds
in a minute. A simple formula can be used to convert a TAI time to seconds past some epoch.
However, on the other hand, TAI is not synchronized with the sun. The second is UTC, which
sometimes has minutes of 61 seconds or (potentially) 59 seconds instead of the usual 60 seconds.
These extra or missing seconds (known as "leap seconds") are introduced in order to keep 00:00
UTC in the middle of the night. Because the changes in rotational speed are irregular, they are
introduced on an ad hoc basis rather than using a formula. In summary, TAI is always an integer
representing a number of seconds different from UTC (at the beginning of 2000, it was 32 seconds),
but the amount of the difference changes on an unpredictable schedule.
The POSIX time_t type was defined at a point when the issues with leap seconds were not well
understood, and the conversion between dates and time_t ignores them: it assumes that every minute
is exactly 60 seconds long. In the real world this means that the same time_t value will occur twice
whenever there is a positive leap second (one resulting in a 61-second minute). There are also other
issues that have to do with the meaning of "UTC" when applied to dates before 1977. These issues
have resulted in a range of problems with no agreed to solution in sight.
To avoid all these problems, Mesh defines times based on TAI rather than UTC.
Note: For a detailed analysis of the differences between TAI and UTC, including the important
concept of leap seconds, see NIST Time Frequently Asked Questions (FAQ) [16], from the
Physical Measurement Laboratory of the National Institute of Standards and Technology
of the U.S. Department of Commerce.
• Perceived light (called V or L) described by Weber-Fechner rule, which says the perceived
lightness is proportional to a square root of actual intensity measured with an accurate nonhuman
instrument.
• Measured Light (called Y) is a physical measure of visual stimulus. This is proportional to the
number of nerve impulses per nerve fiber per unit time.
Over more than 100 years, the definition of the relation between V or L and Y has changed.
Note: For a full discussion of historic changes to the scientific community’s understanding of the
relationship between the L and Y variables, see “The Basis of Physical Photometry” [17]
from the International Commmission of Illumination (CIE). The CIE works with the
International Organization for Standardization (ISO) to define global standards for various
Priest et al. provided a basic estimate of the Munsell value (with Y running from 0 to 1 in this
case):
𝑉 = 10√𝑌
1933
Munsell, Sloan, and Godlove launched a study on the Munsell neutral value scale,
considering several proposals relating the relative luminance to the Munsell value and
suggested:
𝑉 2 = 1.4742𝑌 − 0.004743𝑌 2
1943
Newhall, Nickerson, and Judd prepared a report for the Optical Society of America. They
suggested a quintic parabola (relating the reflectance in terms of the value):
1943
Using the Table II of the O.S.A. report, Moon and Spencer expressed the value in terms of
the luminance:
1944
Saunderson and Milner introduced a subtractive constant in the previous expression for a
better fit to the Munsell value. Later, Jameson and Hurvich claimed that this corrects for
simultaneous contrast effects.
1955
Ladd and Pinney of Eastman Kodak were interested in the Munsell value as a perceptually
uniform lightness scale for use in television. After considering one logarithmic and five
power-law functions (per Stevens' power law), they related value to reflectance by raising the
reflectance to the power of 0.352:
Realizing this is quite close to the cube root, they simplified it to:
𝑉 = 2.468𝑌1/3 − 1.636
1958
Glasser et al. defined the lightness as ten times the Munsell value (so that the lightness
ranges from 0 to 100):
𝐿∗ = 25.29𝑌1/3 − 18.38
1964
𝑊 ∗ = 25𝑌1/3 − 17
This formula approximates the Munsell value function for 1% < 𝑌 < 98% (it is not applicable
for 𝑌 < 1%) and is used for the CIE 1964 color space.
1976
𝐿∗ = 116(𝑌/𝑌𝑛 )1/3 − 16
where 𝑌𝑛 is the 𝑌 tristimulus value of a "specified white object" and is subject to the restriction
of 𝑌/𝑌𝑛 > 0.01. Pauli removed this restriction by computing a linear extrapolation which maps
𝑌/𝑌𝑛 = 0 to 𝐿∗ = 0 and is tangent to the formula above at the point at which the linear
extension takes effect. First, the transition point is determined to be 𝑌/𝑌𝑛 = (6/29)3 ≈
0.008856, then the slope of (29/3)3 ≈ 903.3
841 4
𝑌/𝑌𝑛 + , 𝑌/𝑌𝑛 ≤ (6/29)3
𝑓(𝑌/𝑌𝑁 ) = {108 29
(𝑌/𝑌𝑛 )1/3 , 𝑌/𝑌𝑛 > (6/29)3
The lightness is then
𝐿∗ = 116𝑓(𝑌/𝑌𝑛 ) − 16.
At first glance, you might approximate the lightness function by a cube root, an approximation
that is found in much of the technical literature. However, the linear segment near black is
significant; hence the 116 and 16 coefficients. The best-fit pure power function has an
exponent of about 0.42, far from 1/3.
An approximately 18% grey card, having an exact reflectance of (33/58)3 , has a lightness value of
50. It is called "mid grey" because its lightness is midway between black and white.