Bitron 902010-32 Home Thermostat
GENERAL CHARACTERISTICS
902010/32 is a ZigBee Home Automation-compliant Thermostat. It is a battery-powered device where a thermostat function, temperature measuring function and user interface function are all performed by the same device. The device is equipped with a bistable relay
ELECTRICAL CHARACTERISTICS
POWER SUPPLY | 2×1,5V AA Size Battery |
BATTERY LIFE TIME | >2 years (at normal conditions) |
WIRELESS CHARACTERISTICS |
2405 MHz ÷ 2480 MHz
DSSS Modulation Nominal transmission Power +8dBm Internal PCB Antenna Chipset Ember/SiliconLabs EM357 Stack EmberZNet5.3.1 IEEE 802.15.4 compliant |
ZIGBEE PROFILE |
Home Automation Profile (HA1.2) Profile ID: 0x0104
End-Point: 1 (=1) Device ID: 0x0301 (Thermostat) In-Cluster List: 0x0000, 0x0001, 0x0003, 0x000A, 0x0020, 0x0201, 0x0204, 0x0B05 Binding Table Size: 10 Reporting Table Size: 10 |
MEASURES |
NTC Sensor Type 103AT (10K at 25°C; beta=3435K) Measurement range -50°C ÷ +100°C
Reading resolution 0,1°C Reading accuracy ±0,5°C |
RELAY |
Bistable Relay
Contacts Rated Current 5A (resistive load) Expected life: 100.000 cycles with resistive load |
OPERATING CONDITIONS | -10 ÷ +55°C |
PROTECTION CLASS | IP20 |
DEVICE VIEW
JOIN NETWORK
If the device is not part of a ZigBee Network (device not joined), press any of the buttons for at least 1 second to start the join process (Network Steering). During the Join process, the device will look search all available and try to join ZigBee networks for a duration of 10 seconds. If no open ZigBee HA network is found, the termostat will return to the unjoined state (“no NET” message on the LCD), until a further pairing attempt will be started. If the Join process was successful, the device will store the configuration and remain connected to the new ZB network
LEAVING NETWORK
If the device is part of a ZigBee Network (device joined), within one minute from the device reset, enter the “Program”/”Leaving” menu to quit the network.
COMMISSIONING
- If the device is part of a ZigBee Network, enter the “Program”/”Identify” menu to activate the EZ-Mode Target Finding and Binding commissioning process.
- The process is also activated at the end of the Joining process, if a suitable network is found. During this process, the device activates its own identify state and opens the network.
- This process lasts maximum 3 minutes during which the device shows “Iden” message.
- The process ends earlier if a button is pressed.
CHANGING SETPOINT
- By pressing the “+” or “-” button you will enter in the SetPoint change menu.
- The activation of this menu is highlighted by the blinking message “SET”and the current value of the SetPoint will be shown.
- Use the buttons to change the SetPoint temperature at intervals of 0,5° within the range of the minimum and maximum values configured.
- The new Set-Point will be confirmed after 5 seconds of inactivity of the keyboard.
CHANGING MODE
- The Thermostat Mode selectable depends by “Control Sequence of Operation” attribute (Attribute-ID=0x001B, Cluster-ID=0x0201).
- By default it is possible to switch from “Heating Mode” to “Off Mode” and vice versa.
- To switch-off the thermostat press “-” button until the Setpoint is below the minimum allowed (default 7°C); to switch-on the thermostat simply press “-” or “+” button
TEMPERATURE ACQUISITION AND THERMO-REGULATION LOOP
902010/32 measures the ambient temperature every 30 seconds using the on-board NTC sensor. This time is fixed at firmware level. After the temperature measurement the thermo-regulation cycle will be executed in which the measured temperature value is compared with with the SetPoint value. The relay will be switched accordingly.
System Mode (Regulation Mode)
The behaviour of the thermo-regulation cycle is managed by the “System Mode” Attribute (AttributeID=0x001C, Cluster-ID=0x0201) which control the thermostat’s Off/Cool/Heat state.
System Mode | Temperature In-equation | Relay State |
Off (0x00) | // | Off |
Cool (0x03) |
Temperature >=
(Cooling SetPoint + High_Hysteresis) |
On |
Temperature <=
(Cooling SetPoint – Low_Hysteresis) |
Off | |
Heat (0x04) |
Temperature >=
(Heating SetPoint + High_Hysteresis) |
Off |
Temperature <=
(Heating SetPoint – Low_Hysteresis) |
On |
THERMOSTAT SCHEDULER
- 902010/32 supports the weekly schedule extension described in the ZigBee HA specification. It allows to configure 10 schedules for 8 days (Sunday to Saturday plus vacation day).
- The whole structure is duplicate for heating and cooling mode allowing separate schedules for both functions.
- Each schedule describes a Transitions Time expressed in minutes from midnight and a SetPoint value.
- If scheduling is active, 902010/32 compares its local time with all the schedule-slots of the current day. Once a schedule point is reach, temperature will be set to SetPoint.
Enable Thermostat Scheduler:
The activation/deactivation of the Thermostat Scheduler is managed by bit#0 of “Thermostat-Programming-Operation-Mode” Attribute (Attribute-ID=0x0025, Cluster- ID=0x0201).
Scheduled Set-Point Overriding:
A manual or remote change to the SetPoint remains unchanged until the next scheduling.
Behaviour at Start-Up:
At the re-ignition of the 902010/32 after a power failure (or after a reset), the device searches for the first schedule-slot preceding the current time and loads the corresponding SetPoint, this unless the last change of the SetPoint has been remote, in which case the SetPoint will remain until the next scheduling.
ADVANCED PROGRAMMING MODE
By pressing the “+” and the “-” buttons together for more than five seconds you will enter in the “Advanced Programming Mode”.
LCD
This is the display of the device with all segments enabled
Meaning of the icons
ZIGBEE DATA AND REFERENCES
The following sections describes some ZigBee characteristics of the device. More detailed information can be found in the ZigBee Alliance documents quoted in the references.
REFERENCES:
- [R1] ZigBee Document 075123r04ZB – ZigBee Cluster Library
- [R2] ZigBee Document 05-3520-29 – ZigBee Home Automation Public Application Profile
- [R3] ZigBee Document 075356r16ZB – ZigBee Smart Energy Profile Specification
HA.1) END-POINT
Device Name | ZigBee Node Type | End-Point | Device ID | Main Function |
902010/32 | Sleepy-end-device | 1 | 0x0301 | HA Thermostat |
HA.2) CLUSTER LIST
Cluster Name | End-Point | Cluster-ID | Client/Server |
Basic | 1 | 0x0000 | Server |
Power Configuration | 1 | 0x0001 | Server |
Identify | 1 | 0x0003 | Client/Server |
Time | 1 | 0x000A | Server |
Over the Air Bootloading | 1 | 0x0019 | Client |
Poll Control | 1 | 0x0020 | Server |
Thermostat | 1 | 0x0201 | Server |
Thermostat User Interface Configuration | 1 | 0x0204 | Server |
Diagnostic | 1 | 0x0B05 | Server |
HA.3) BINDING TABLE SIZE
The Device’s Binding Table (non-volatile) has room for 10 entries
HA.4) REPORTING TABLE SIZE
The Device’s Reporting Table (non-volatile) has room for 10 entries
HA.5) EZ-MODE COMMISSIONING
The Device acts as an EZ-Mode Target. When the EZ-Mode is invoked (by entering in the specific user-menu) it activates its identifying state for up to 3 minutes.
HA.6) POLLING RATE
- 902010/32 is a Sleepy-End-Device, therefore it can receives radio messages only after it has sent to its parent (router) a Polling message (Data Request).
- The parent device has the task to keep messages for their children until the receiving of the polling message, this up to a limit of 7,68 seconds (as requested by standard ZigBee HA).
- During normal functioning, 902010/32 sends a poll message each 7 seconds.
- After the pressure of any button, 902010/32 enters in a state of “fast polling” for the duration of 20 seconds, in this state it sends one polling per half second.
- 902010/32 implements the Poll Control Cluster (Cluster-ID 0x0020), therefore it is possible to change the long poll interval and the fast poll interval, moreover it is possible to manage the “Check-in” server-side command in order to simplify the communication management in devices which wish to communicate with 902010/32. Note that the poll parameters strongly influence the battery lifetime.
HA.7) REJOIN MECHANISM
The Rejoin process is the process by which a sleepy-end-device already part of a network tries to find another parent (due to the fact that the old parent was deemed as not working). The rejoin process is very expensive in energy terms, so to preserve the battery life, has been chosen this rejoin strategy:
- At beginning of the orphaning state rejoin each 2 minutes
- After one hours, rejoin each 30 minutes
CL.1) SERVER SIDE CLUSTER DESCRIPTION – BASIC CLUSTER (CLUSTER-ID=0x0000)
Implemented Attributes
Attribute-ID | Name | Attribute Type | Range | Access | Attribute Default Value |
0x0000 | ZCL Version | 0x20
(int8u) |
0x00÷0xFF | R- | 1 |
0x0001 | Application Version | 0x20
(int8u) |
0x00÷0xFF | R- | 1 |
0x0002 | Stack Version | 0x20
(int8u) |
0x00÷0xFF | R- | 2
(ZigBee Pro) |
0x0003 | HW Version | 0x20
(int8u) |
0x00÷0xFF | R- | 2 |
0x0004 | Manufacturer Name | 0x42
(String) |
0÷32 bytes | R- | “Bitron Home” |
0x0005 | Model Identifier | 0x42
(String) |
0÷32 bytes | R- | “902010/32” |
0x0006 | Date Code | 0x42
(String) |
0÷16 bytes | R- | Serial number |
0x0007 | Power Source | 0x30
(enum8) |
0x00÷0xFF | R- | 0x03
(Battery) |
0x4000 | SW Build ID | 0x42
(String) |
0÷32 bytes | R- | Firmware build like: “V1b225-20151013” |
Commands Received (Client to Server
Command-ID | Name |
0x00 | Reset to Factory Defaults |
CL.2) SERVER SIDE CLUSTER DESCRIPTION – POWER CONFIGURATION CLUSTER (CLUSTER-ID=0x0001)
Implemented Attributes:
Attribute-ID | Name | Attribute Type | Range | Access | Attribute Default Value |
0x0020 | Battery Voltage | 0x20
(int8u) |
0x00÷0xFF | R- | — |
0x0035 | Battery Alarm Mask | 0x18
(bit8) |
0x00÷0xFF | RW | 1 |
0x0036 | Battery Voltage min Threshold | 0x20
(int8u) |
0x00÷0xFF | RW | 25
(2,5 V) |
0x003E | Battery Alarm State | 0x1B
(bit32) |
0÷ 232-1 | R- | — |
CL.3) SERVER SIDE CLUSTER DESCRIPTION – IDENTIFY CLUSTER (CLUSTER-ID=0x0003)
Implemented Attributes
Attribute-ID | Name | Attribute Type | Range | Access | Attribute Default Value |
0x0000 | Identify Time | 0x21
(int16u) |
0x0000÷
0xFFFF |
RW | 0 |
Commands Received (Client to Server
Command-ID | Name |
0x00 | Identify |
0x01 | Identify Query |
Commands Generated (Server to Client):
Command-ID | Name |
0x00 | Identify Query Response |
CL.4) SERVER SIDE CLUSTER DESCRIPTION – TIME CLUSTER (CLUSTER-ID=0x000A)
Implemented Attributes:
Attribute-ID | Name | Attribute Type | Range | Access | Attribute Default Value |
0x0000 | Time | 0xE2
(UTC Time) |
0÷ 232-1 | RW | 0 |
0x0001 | Time Status | 0x18
(bit8) |
0000xxxx | RW | 0 |
0x0002 | Time Zone | 0x2B
(int32s) |
-86400 ÷ +86400 | RW | 0 |
0x0003 | Daylight Saving Time Start | 0x23
(int32u) |
0÷ 232-1 | RW | 0 |
0x0004 | Daylight Saving Time End | 0x23
(int32u) |
0÷ 232-1 | RW | 0 |
0x0005 | Daylight Saving Time Shift | 0x2B
(int32s) |
-86400 ÷ +86400 | RW | 0 |
0x0006 | Standard Time | 0x23
(int32u) |
0÷ 232-1 | R- | 0 |
Note about Attribute Time Status (Attribute-ID 0x0001)
902010/32 allows only setting/resetting of bit#1 (Synchronized) of this Attribute.
Note about Attribute Valid Until Time (Attribute-ID 0x0009)
902010/32 sets this attribute with the value of UTC Time immediately after a setting of the time.
Time Reference
The time reference is required for the properly operation of the Thermostat Scheduler. 902010/32 is not provided with a backup-battery Real Time Clock (RTC) therefore it does not retain a precise time reference through the absence of power supply (batteryreplacement). The internal crystal oscillator used has an error of about ±100ppm, therefore the expected time reference error is about ±5 minutes per month.
Gateway Requirements
The customer’s Gateway has the responsibility of maintenance a more precise time reference, the setting of the correct TimeZone and the setting of the annual beginning/end of summer time (DST).
To do that the Gateway must:
- implements the Server-Side Time Cluster (Cluster-ID 0x000A).
- keeps its UTC Time Attribute (Attribute-ID 0x0000) as precise as possible.
- sets the correct value to its TimeZone Attribute (Attribute-ID 0x0002).
- sets the correct value to its (annually changing) Dst Start, Dst End, Dst Shift
- Attributes (Attribute-ID 0x0003, 0x0004, 0x0005).
- sets bit#0 (Master) and/or bit#3 (Superseding) and sets bit #2 (Master Zone Dst) on the Time Status Attribute (Attribute-ID 0x0001)
Time Reference Synchronization
- 902010/32 synchronizes its time reference following the rules described in ZigBee Cluster Library Specification.
- After a time between 2 and 10 minutes from the reset (chosen randomly), and every 24 hours post, 902010/32 looks for the best time server presents on its radio network.
- If it finds a suitable time server then it collects the relevant time attributes.
Note on Time Attributes
- The Utc Time Attribute (Attribute-ID 0x0000) is expressed in seconds from 1/1/2000.
- Standard Time Attribute (Attribute-ID 0x0006) is calculated as:
- Standard Time = Utc Time + TimeZone
- Local Time Attribute (Attribute-ID 0x0007) is calculated as:
- Local Time = Standard Time (if Utc Time is not between Dst Start and End)
- Local Time = Standard Time + Dst Shift (if Utc Time is between Dst Start and End)
- Thermostat Scheduler uses the Local Time Attribute.
- All the time attributes except Utc Time, Standard Time and Local Time, are saved in nonvolatile memory.
CL.5) SERVER SIDE CLUSTER DESCRIPTION – POLL CLUSTER (CLUSTER-ID=0x0020)
Implemented Attributes:
Attribute-ID | Name | Attribute Type | Range | Access | Attribute Default Value |
0x0000 | Check-in Interval | 0x23
(int32u) |
0 ÷
0x6E0000 |
RW | 57600
(4 hours) |
0x0001 | Long Poll Interval | 0x23
(int32u) |
0 ÷
0x6E0000 |
R- | 28
(7 sec) |
0x0002 | Short Poll Interval | 0x21
(int16u) |
0x0001 ÷
0xFFFF |
R- | 2
(0,5 sec) |
0x0003 | Fast Poll Time Out | 0x21
(int16u) |
0x0001 ÷
0xFFFF |
RW | 240
(60 sec) |
0x0004 | Check-in Interval Min | 0x23
(int32u) |
– | R- | 180
(45 sec) |
0x0005 | Long Poll Interval Min | 0x23
(int32u) |
– | R- | 20
(5 sec) |
0x0006 | Fast Poll Time Out Max | 0x23
(int32u) |
– | R- | 480
(120 sec) |
Commands Received (Client to Server):
Command-ID | Name |
0x00 | Check-in Response |
0x01 | Fast Poll Stop |
0x02 | Set Long Poll Interval |
0x03 | Set Short Poll Interval |
Commands Generated (Server to Client):
Command-ID | Name |
0x00 | Check-in |
Note about Check-in server to client command:
- This command is sent to all devices which are bound with 902010/32 through the cluster Poll Control.
- This command is sent at the frequency controlled by the Check-in Interval attribute.
- This command expects a Check-in Response command sent back from the Poll Control Client.
- If 902010/32 does not receive a Check-in Response it returns to the normal polling rate, according to the Long Poll Interval Attribute.
- Note that the poll parameters strongly influence the 902010/32 battery lifetime. See specification [R2]
CL.6) SERVER SIDE CLUSTER DESCRIPTION – THERMOSTAT CLUSTER (CLUSTER-ID=0x0201)
Implemented Attributes
Attribute-ID | Name | Attribute Type | Range | Access | Attribute Default |
0x0000 | Local Temperature | 0x29
(int16s) |
0x954D ÷ 0x7FFF | R- | — |
0x0001 | Outdoor Temperature | 0x29
(int16s) |
0x954D ÷ 0x7FFF | R- | — |
0x0002 | Occupancy | 0x18
(bit8) |
0000000x | R- | 1 |
0x0003 | Abs Min Heat Setpoint Limit | 0x29
(int16s) |
0x954D ÷ 0x7FFF | R- | 700 (7°C) |
0x0004 | Abs Max Heat Setpoint Limit | 0x29
(int16s) |
0x954D ÷ 0x7FFF | R- | 300 (30°C) |
0x0005 | Abs Min Cool Setpoint Limit | 0x29
(int16s) |
0x954D ÷ 0x7FFF | R- | 1600 (16°C) |
0x0006 | Abs Max Cool Setpoint Limit | 0x29
(int16s) |
0x954D ÷ 0x7FFF | R- | 3200 (32°C) |
0x0010 | Local Temperature Calibration | 0x28
(int8s) |
0xE7 ÷ 0x19 | RW | 0 (0°C) |
0x0011 | Occupied Cooling Setpoint | 0x29
(int16s) |
Min ÷ Max Cool SetPoint Limit | RW | 2600 (26°C) |
0x0012 | Occupied Heating Setpoint | 0x29
(int16s) |
Min ÷ Max Heat SetPoint Limit | RW | 2000 (20°C) |
0x0013 | Unoccupied Cooling Setpoint | 0x29
(int16s) |
Min ÷ Max Cool SetPoint Limit | RW | 2600 (26°C) |
0x0014 | Unoccupied Heating Setpoint | 0x29
(int16s) |
Min ÷ Max Heat SetPoint Limit | RW | 2000 (20°C) |
0x0015 | Min Heat Setpoint Limit | 0x29
(int16s) |
0x954D ÷ 0x7FFF | RW | 700 (7°C) |
0x0016 | Max Heat Setpoint Limit | 0x29
(int16s) |
0x954D ÷ 0x7FFF | RW | 3000 (30°C) |
0x0017 | Min Cool Setpoint Limit | 0x29
(int16s) |
0x954D ÷ 0x7FFF | RW | 1600 (16°C) |
0x0018 | Max Cool Setpoint Limit | 0x29
(int16s) |
0x954D ÷ 0x7FFF | RW | 3200 (32°C) |
0x001B | Control Sequence Of Operation | 0x30
(enum8) |
0 ÷ 5 | R- | 2
(Heating) |
0x001C | System Mode | 0x30
(enum8) |
0 ÷ 5 | RW | 4
(Heat) |
0x0020 | Start Of Week | 0x30
(enum8) |
0 ÷ 6 | R- | 0 |
0x0021 | Number Of Weekly Transitions | 0x20
(int8u) |
0 ÷ 0xFF | R- | 70 |
0x0022 | Number Of Daily Transitions | 0x20
(int8u) |
0 ÷ 0xFF | R- | 10 |
0x0025 | Thermostat Programming Operation Mode | 0x18
(bit8) |
00xxxxxx | RW | 0 |
Commands Received (Client to Server):
Command-ID | Name |
0x00 | Setpoint Raise/Lower |
0x01 | Set Weekly Schedule |
0x02 | Get Weekly Schedule |
0x03 | Clear Weekly Schedule |
Commands Generated (Server to Client
Command-ID | Name |
0x00 | Current Weekly Schedule |
Note about Attribute Local Temperature (Attribute-ID 0x0000)
- This value represents the local temperature, measured by the built-in probe.
- This value is used in the thermo-regulation cycle.
Note about Attribute Outdoor Temperature (Attribute-ID 0x0001)
Same value present on the above attribute.
Note about Attribute Occupancy (Attribute-ID 0x0002)
Currently the Occupancy sensor management is not yet implemented, the value of this attribute is fixed to 1 (space occupied).
Note about Attribute Local Temperature Calibration (Attribute-ID 0x0010)
This attribute is used to correct the temperature of the local thermal measure.
Note about Attribute Control Sequence Of Operation (Attribute-ID 0x001B)
This Attribute is used to permit or not the selection of Cooling and Heating Mode.
Control Sequence of Operation | Description | Possible values of System Mode |
0x00 | Cooling Only | 0x00(Off) / 0x03(Cool) |
0x01 | Cooling with Reheat | 0x00(Off) / 0x03(Cool) |
0x02
(Default) |
Heating Only | 0x00(Off) / 0x04(Heat) |
0x03 | Heating with Reheat | 0x00(Off) / 0x04(Heat) |
0x04 | Cooling and Heating 4-pipes | 0x00(Off) / 0x03(Cool) / 0x04(Heat) |
0x05 | Cooling and Heating 4-pipes with Reheat | 0x00(Off) / 0x03(Cool) / 0x04(Heat) |
Note about Attribute System Mode (Attribute-ID 0x001C)
This Attribute is used to chose the thermo-regulation mode.
System Mode | Description |
0x00 | Off |
0x03 | Cool |
0x04
(Default) |
Heat |
Note about Attribute Thermostat Programming Operation Mode (Attribute-ID 0x0025)
Bit#0 of this attribute controls the enabling of the Thermostat Scheduler.
Note about Attribute SetPoint Change Source (Attribute-ID 0x0030)
This Attribute is used to determine the source of the last changing of the SetPoint.
SetPoint Change Source | Description |
0x00 | Manual, user-initiated SetPoint change via the thermostat |
0x01 | Schedule/internal programming-initiated SetPoint change |
0x02 | Externally-initiated SetPoint change |
Note about Thermostat Scheduler Programming (Command-ID 0x01)
The Thermostat Scheduler programming procedure follows the ZigBee HA specifications (see [R2], Paragraph 10.2.3.4.1.1 (Set Weekly Schedule), page 325).
Example:
you want the schedule will be made as follows:
- Time 06.30 → SetPoint = 22,5°C
- Time 08.30 → SetPoint = 18,0°C
- Time 12.00 → SetPoint = 20,0°C
This only for days:
Monday, Tuesday, Thursday, Friday
This only for the Heat mode.
- This translates into the programming of 6 schedule-slots. 1° slot:
- Time 06.30 = 390 minutes from midnight = 0x0186
- Heat SetPoint = 22,5°C = 2250 (cents)°C = 0x08CA 2° slot:
- Time 08.30 = 510 minutes from midnight = 0x01FE
- Heat SetPoint = 18,0°C = 1800 (cents)°C = 0x0708 3° slot:
- Time 12.00 = 720 minutes from midnight = 0x02D0
- Heat SetPoint = 20,0°C = 2000 (cents)°C = 0x07D0
To the right the message sent from Gateway to a 902010/32, captured by the Ember radio sniffer.
CL.7) SERVER SIDE CLUSTER DESCRIPTION THERMOSTAT USER INTERFACE CONFIGURATION CLUSTER (CLUSTER-ID=0x0204)
Implemented Attributes:
Attribute-ID | Name | Attribute Type | Range | Access | Attribute Default |
0x0000 | Temperature Display Mode | 0x30
(enum8) |
0 ÷ 1 | RW | 0 |
0x0001 | Keypad Lockout | 0x30
(enum8) |
0 ÷ 5 | RW | 0 |
0x0002 | Schedule Programming Visibility | 0x30
(enum8) |
0 ÷ 1 | RW | 0 |
CL.8) SERVER SIDE CLUSTER DESCRIPTION – DIAGNOSTIC CLUSTER (CLUSTER-ID=0x0805)
Implemented Attributes:
Attribute-ID | Name | Attribute Type | Range | Access |
0x0000 | Number of Resets | 0X21 (int16u) | 0 ÷ 0xFFFF | R- |
0x0104 | Mac Tx Unicast Retry | 0X21 (int16u) | 0 ÷ 0xFFFF | R- |
0x0105 | Mac Tx Unicast Fail | 0X21 (int16u) | 0 ÷ 0xFFFF | R- |
0x0106 | APS Rx Broadcast | 0X21 (int16u) | 0 ÷ 0xFFFF | R- |
0x0107 | APS Tx Broadcast | 0X21 (int16u) | 0 ÷ 0xFFFF | R- |
0x0108 | APS Rx Unicast | 0X21 (int16u) | 0 ÷ 0xFFFF | R- |
0x0109 | APS Unicast Success | 0X21 (int16u) | 0 ÷ 0xFFFF | R- |
0x010A | APS Tx Unicast Retries | 0X21 (int16u) | 0 ÷ 0xFFFF | R- |
0x010B | APS Tx Unicast Failures | 0X21 (int16u) | 0 ÷ 0xFFFF | R- |
0x010C | Route Discovery Initiated | 0X21 (int16u) | 0 ÷ 0xFFFF | R- |
0x010D | Neighbour Added | 0X21 (int16u) | 0 ÷ 0xFFFF | R- |
0x010E | Neighbour Removed | 0X21 (int16u) | 0 ÷ 0xFFFF | R- |
0x010F | Neighbour Stale | 0X21 (int16u) | 0 ÷ 0xFFFF | R- |
0x0110 | Join Indication | 0X21 (int16u) | 0 ÷ 0xFFFF | R- |
0x0111 | Child Moved | 0X21 (int16u) | 0 ÷ 0xFFFF | R- |
0x0112 | NWK Frame Control Failure | 0X21 (int16u) | 0 ÷ 0xFFFF | R- |
0x0113 | APS Frame Control Failure | 0X21 (int16u) | 0 ÷ 0xFFFF | R- |
0x0114 | APS Unauthorized Key | 0X21 (int16u) | 0 ÷ 0xFFFF | R- |
0x0115 | NWK Decrypt Failures | 0X21 (int16u) | 0 ÷ 0xFFFF | R- |
0x0116 | APS Decrypt Failures | 0X21 (int16u) | 0 ÷ 0xFFFF | R- |
0x0117 | Packet Buffer Allocate Failures | 0X21 (int16u) | 0 ÷ 0xFFFF | R- |
0x0118 | Relayed Unicast | 0X21 (int16u) | 0 ÷ 0xFFFF | R- |
0x0119 | Phy to MAC queue limit reached | 0X21 (int16u) | 0 ÷ 0xFFFF | R- |
0x011A | Packet Validate drop count | 0X21 (int16u) | 0 ÷ 0xFFFF | R- |
CL.9) CLIENT SIDE CLUSTER DESCRIPTION – OVER THE AIR BOOTLOADING (CLUSTER-ID=0x0019)
902010/32 implements the Zigbee Over-the-air Bootload Client Cluster. The device periodically searches an OTA server in the network, if it finds it, then it periodically queries the server for a new image to download, if it finds a coherent andnewer firmware image, it downloads the data and, eventually, uses the downloaded image to update itself. The OTA server is searched by a “Match Description Request” done through a broadcast message, this is issued some minutes after the device reset and each about 4 hours, until an OTA server is found. If an OTA server has been found, the device requires for an upgrading image each about 4 hours. During the OTA downloading, the delay between packets is fixed to 1 second. Downloading the whole firmware image takes about an hour. The device does not implement the Image Page Request Command.
Client-Side implemented Attributes:
Attribute-ID | Name | Attribute Type | Range | Access | Attribute Default |
0x0000 | OTA Upgrade Server ID | 0xF0 (IEEE_ADDRESS) | 0÷ 264-1 | R- | 0xFFFFFFFFFFFFFFFF |
0x0001 | Offset into the file | 0x23
(int32u) |
0÷ 232-1 | R- | 0 |
0x0006 | Upgrade Status | 0x30
(enum8) |
0x00÷0xFF | R- | 0 |
CC.1) PROPRIETARY EXTENSIONS
The device has some manufacturer specific extensions added to the standard ZigBee command set. These functions can be accessed using the manufacturer code 0x1071.
CC.2) PROPRIETARY EXTENSIONS – BASIC CLUSTER (CLUSTER-ID=0x0000)
Vendor Specific Commands Received (Client to Server):
Command-ID | Name | Payload Size | Payload |
0xFC | PROPRIETARY COMMAND | 2 | 1° int16u: Command value |
List of PROPRIETARY COMMAND values and the respective functions
Vendor COMMAND value | Command Issued |
0x196E | Reload Default Parameters |
0x196F | non-volatile memory total initialize |
0x1970 | Reset |
0x1971 | Disassociation |
0x1972 | Disassociation with reload default parameters |
0x1973 | Disassociation with non-volatile memory total initialize |
0x1975 | Rejoin |
0x2100 -:- 0x21FF | Change Transmission Power
(value in the low byte, from -30 to 8) |
0x2501 | Initialize OTA external eeprom |
0x2502 | Restart OTA Server searching |
CC.3) PROPRIETARY EXTENSIONS – THERMOSTAT CLUSTER (CLUSTER-ID=0x0201)
List of PROPRIETARY ATTRIBUTES:
Attribute-ID | Name | Attribute Type | Range | Access | Attribute Default Value |
0x0101 | Thermostat High Hysteresis | 0x21
(int16u) |
0 ÷ 0x03E8 | RW | 25 (0,25°C) |
0x0102 | Thermostat Low Hysteresis | 0x21
(int16u) |
0 ÷ 0x03E8 | RW | 25 (0,25°C) |
0x0201 | Setpoint Change Source Network-ID | 0x21
(int16u) |
0 ÷ 0xFFFF | RW | 0xFFFF |
0x0201 | Gateway Link Timer | 0x21
(int16u) |
0 ÷ 0xFFFF | RW | 0 |
Note aboute Hysteresis Attributes (Attribute-ID 0x0101, 0x0102):
The two custom attributes control the high value of hysteresis (hysteresis added to the set-point) and the low value of hysteresis (hysteresis subtracted to the set-point). The default value of both these attributes is 0,25°C.
Note about custom Attribute Setpoint Change Source NetworkId (Attribute-ID 0x0201)
This is the Network-ID of the source of the last radio SetPoint change.
Note about custom Attribute Gateway Link Timer (AttributeID 0x0202)
If this attribute is set to a value different by zero, then it is decremented by 902010/32 by one unit per second. If the value of this attribute is different by zero the “Gateway” icon on the 902010/32 is switched on.
Bitron
- Bitron Video s.r.l.
- Via Cimarosa 39
- 10154 Torino – Italy
- www.bitronvideo.eu
- [email protected]
REFERENCE
DOWNLOAD MANUAL
Bitron 902010-32 Home Thermostat Technical Manual
Leave a Reply