|
15 | 15 | // uint8_t chars for state names, with max of 16 chars ASCII
|
16 | 16 |
|
17 | 17 | // Multistate Input/Output Application Types Defines
|
18 |
| -#define ZB_MULTISTATE_APPLICATION_TYPE_0_INDEX 0x0000 |
19 |
| -#define ZB_MULTISTATE_APPLICATION_TYPE_0_NUM_STATES 3 |
20 |
| -#define ZB_MULTISTATE_APPLICATION_TYPE_0_STATE_NAMES (const char* const[]){"Off", "On", "Auto"} |
| 18 | +#define ZB_MULTISTATE_APPLICATION_TYPE_0_INDEX 0x0000 |
| 19 | +#define ZB_MULTISTATE_APPLICATION_TYPE_0_NUM_STATES 3 |
| 20 | +#define ZB_MULTISTATE_APPLICATION_TYPE_0_STATE_NAMES \ |
| 21 | + (const char *const[]) { \ |
| 22 | + "Off", "On", "Auto" \ |
| 23 | + } |
21 | 24 |
|
22 |
| -#define ZB_MULTISTATE_APPLICATION_TYPE_1_INDEX 0x0001 |
23 |
| -#define ZB_MULTISTATE_APPLICATION_TYPE_1_NUM_STATES 4 |
24 |
| -#define ZB_MULTISTATE_APPLICATION_TYPE_1_STATE_NAMES (const char* const[]){"Off", "Low", "Medium", "High"} |
| 25 | +#define ZB_MULTISTATE_APPLICATION_TYPE_1_INDEX 0x0001 |
| 26 | +#define ZB_MULTISTATE_APPLICATION_TYPE_1_NUM_STATES 4 |
| 27 | +#define ZB_MULTISTATE_APPLICATION_TYPE_1_STATE_NAMES \ |
| 28 | + (const char *const[]) { \ |
| 29 | + "Off", "Low", "Medium", "High" \ |
| 30 | + } |
25 | 31 |
|
26 |
| -#define ZB_MULTISTATE_APPLICATION_TYPE_2_INDEX 0x0002 |
27 |
| -#define ZB_MULTISTATE_APPLICATION_TYPE_2_NUM_STATES 7 |
28 |
| -#define ZB_MULTISTATE_APPLICATION_TYPE_2_STATE_NAMES (const char* const[]){"Auto", "Heat", "Cool", "Off", "Emergency Heat", "Fan Only", "Max Heat"} |
| 32 | +#define ZB_MULTISTATE_APPLICATION_TYPE_2_INDEX 0x0002 |
| 33 | +#define ZB_MULTISTATE_APPLICATION_TYPE_2_NUM_STATES 7 |
| 34 | +#define ZB_MULTISTATE_APPLICATION_TYPE_2_STATE_NAMES \ |
| 35 | + (const char *const[]) { \ |
| 36 | + "Auto", "Heat", "Cool", "Off", "Emergency Heat", "Fan Only", "Max Heat" \ |
| 37 | + } |
29 | 38 |
|
30 |
| -#define ZB_MULTISTATE_APPLICATION_TYPE_3_INDEX 0x0003 |
31 |
| -#define ZB_MULTISTATE_APPLICATION_TYPE_3_NUM_STATES 4 |
32 |
| -#define ZB_MULTISTATE_APPLICATION_TYPE_3_STATE_NAMES (const char* const[]){"Occupied", "Unoccupied", "Standby", "Bypass"} |
| 39 | +#define ZB_MULTISTATE_APPLICATION_TYPE_3_INDEX 0x0003 |
| 40 | +#define ZB_MULTISTATE_APPLICATION_TYPE_3_NUM_STATES 4 |
| 41 | +#define ZB_MULTISTATE_APPLICATION_TYPE_3_STATE_NAMES \ |
| 42 | + (const char *const[]) { \ |
| 43 | + "Occupied", "Unoccupied", "Standby", "Bypass" \ |
| 44 | + } |
33 | 45 |
|
34 |
| -#define ZB_MULTISTATE_APPLICATION_TYPE_4_INDEX 0x0004 |
35 |
| -#define ZB_MULTISTATE_APPLICATION_TYPE_4_NUM_STATES 3 |
36 |
| -#define ZB_MULTISTATE_APPLICATION_TYPE_4_STATE_NAMES (const char* const[]){"Inactive", "Active", "Hold"} |
| 46 | +#define ZB_MULTISTATE_APPLICATION_TYPE_4_INDEX 0x0004 |
| 47 | +#define ZB_MULTISTATE_APPLICATION_TYPE_4_NUM_STATES 3 |
| 48 | +#define ZB_MULTISTATE_APPLICATION_TYPE_4_STATE_NAMES \ |
| 49 | + (const char *const[]) { \ |
| 50 | + "Inactive", "Active", "Hold" \ |
| 51 | + } |
37 | 52 |
|
38 |
| -#define ZB_MULTISTATE_APPLICATION_TYPE_5_INDEX 0x0005 |
39 |
| -#define ZB_MULTISTATE_APPLICATION_TYPE_5_NUM_STATES 8 |
40 |
| -#define ZB_MULTISTATE_APPLICATION_TYPE_5_STATE_NAMES (const char* const[]){"Auto", "Warm-up", "Water Flush", "Autocalibration", "Shutdown Open", "Shutdown Closed", "Low Limit", "Test and Balance"} |
| 53 | +#define ZB_MULTISTATE_APPLICATION_TYPE_5_INDEX 0x0005 |
| 54 | +#define ZB_MULTISTATE_APPLICATION_TYPE_5_NUM_STATES 8 |
| 55 | +#define ZB_MULTISTATE_APPLICATION_TYPE_5_STATE_NAMES \ |
| 56 | + (const char *const[]) { \ |
| 57 | + "Auto", "Warm-up", "Water Flush", "Autocalibration", "Shutdown Open", "Shutdown Closed", "Low Limit", "Test and Balance" \ |
| 58 | + } |
41 | 59 |
|
42 |
| -#define ZB_MULTISTATE_APPLICATION_TYPE_6_INDEX 0x0006 |
43 |
| -#define ZB_MULTISTATE_APPLICATION_TYPE_6_NUM_STATES 6 |
44 |
| -#define ZB_MULTISTATE_APPLICATION_TYPE_6_STATE_NAMES (const char* const[]){"Off", "Auto", "Heat Cool", "Heat Only", "Cool Only", "Fan Only"} |
| 60 | +#define ZB_MULTISTATE_APPLICATION_TYPE_6_INDEX 0x0006 |
| 61 | +#define ZB_MULTISTATE_APPLICATION_TYPE_6_NUM_STATES 6 |
| 62 | +#define ZB_MULTISTATE_APPLICATION_TYPE_6_STATE_NAMES \ |
| 63 | + (const char *const[]) { \ |
| 64 | + "Off", "Auto", "Heat Cool", "Heat Only", "Cool Only", "Fan Only" \ |
| 65 | + } |
45 | 66 |
|
46 |
| -#define ZB_MULTISTATE_APPLICATION_TYPE_7_INDEX 0x0007 |
47 |
| -#define ZB_MULTISTATE_APPLICATION_TYPE_7_NUM_STATES 3 |
48 |
| -#define ZB_MULTISTATE_APPLICATION_TYPE_7_STATE_NAMES (const char* const[]){"High", "Normal", "Low"} |
| 67 | +#define ZB_MULTISTATE_APPLICATION_TYPE_7_INDEX 0x0007 |
| 68 | +#define ZB_MULTISTATE_APPLICATION_TYPE_7_NUM_STATES 3 |
| 69 | +#define ZB_MULTISTATE_APPLICATION_TYPE_7_STATE_NAMES \ |
| 70 | + (const char *const[]) { \ |
| 71 | + "High", "Normal", "Low" \ |
| 72 | + } |
49 | 73 |
|
50 |
| -#define ZB_MULTISTATE_APPLICATION_TYPE_8_INDEX 0x0008 |
51 |
| -#define ZB_MULTISTATE_APPLICATION_TYPE_8_NUM_STATES 4 |
52 |
| -#define ZB_MULTISTATE_APPLICATION_TYPE_8_STATE_NAMES (const char* const[]){"Occupied", "Unoccupied", "Startup", "Shutdown"} |
| 74 | +#define ZB_MULTISTATE_APPLICATION_TYPE_8_INDEX 0x0008 |
| 75 | +#define ZB_MULTISTATE_APPLICATION_TYPE_8_NUM_STATES 4 |
| 76 | +#define ZB_MULTISTATE_APPLICATION_TYPE_8_STATE_NAMES \ |
| 77 | + (const char *const[]) { \ |
| 78 | + "Occupied", "Unoccupied", "Startup", "Shutdown" \ |
| 79 | + } |
53 | 80 |
|
54 |
| -#define ZB_MULTISTATE_APPLICATION_TYPE_9_INDEX 0x0009 |
55 |
| -#define ZB_MULTISTATE_APPLICATION_TYPE_9_NUM_STATES 3 |
56 |
| -#define ZB_MULTISTATE_APPLICATION_TYPE_9_STATE_NAMES (const char* const[]){"Night", "Day", "Hold"} |
| 81 | +#define ZB_MULTISTATE_APPLICATION_TYPE_9_INDEX 0x0009 |
| 82 | +#define ZB_MULTISTATE_APPLICATION_TYPE_9_NUM_STATES 3 |
| 83 | +#define ZB_MULTISTATE_APPLICATION_TYPE_9_STATE_NAMES \ |
| 84 | + (const char *const[]) { \ |
| 85 | + "Night", "Day", "Hold" \ |
| 86 | + } |
57 | 87 |
|
58 |
| -#define ZB_MULTISTATE_APPLICATION_TYPE_10_INDEX 0x000A |
59 |
| -#define ZB_MULTISTATE_APPLICATION_TYPE_10_NUM_STATES 5 |
60 |
| -#define ZB_MULTISTATE_APPLICATION_TYPE_10_STATE_NAMES (const char* const[]){"Off", "Cool", "Heat", "Auto", "Emergency Heat"} |
| 88 | +#define ZB_MULTISTATE_APPLICATION_TYPE_10_INDEX 0x000A |
| 89 | +#define ZB_MULTISTATE_APPLICATION_TYPE_10_NUM_STATES 5 |
| 90 | +#define ZB_MULTISTATE_APPLICATION_TYPE_10_STATE_NAMES \ |
| 91 | + (const char *const[]) { \ |
| 92 | + "Off", "Cool", "Heat", "Auto", "Emergency Heat" \ |
| 93 | + } |
61 | 94 |
|
62 |
| -#define ZB_MULTISTATE_APPLICATION_TYPE_11_INDEX 0x000B |
63 |
| -#define ZB_MULTISTATE_APPLICATION_TYPE_11_NUM_STATES 7 |
64 |
| -#define ZB_MULTISTATE_APPLICATION_TYPE_11_STATE_NAMES (const char* const[]){"Shutdown Closed", "Shutdown Open", "Satisfied", "Mixing", "Cooling", "Heating", "Suppl Heat"} |
| 95 | +#define ZB_MULTISTATE_APPLICATION_TYPE_11_INDEX 0x000B |
| 96 | +#define ZB_MULTISTATE_APPLICATION_TYPE_11_NUM_STATES 7 |
| 97 | +#define ZB_MULTISTATE_APPLICATION_TYPE_11_STATE_NAMES \ |
| 98 | + (const char *const[]) { \ |
| 99 | + "Shutdown Closed", "Shutdown Open", "Satisfied", "Mixing", "Cooling", "Heating", "Suppl Heat" \ |
| 100 | + } |
65 | 101 |
|
66 |
| -#define ZB_MULTISTATE_APPLICATION_TYPE_OTHER_INDEX 0xFFFF |
| 102 | +#define ZB_MULTISTATE_APPLICATION_TYPE_OTHER_INDEX 0xFFFF |
67 | 103 |
|
68 | 104 | //enum for bits set to check what multistate cluster were added
|
69 | 105 | enum zigbee_multistate_clusters {
|
@@ -113,7 +149,7 @@ class ZigbeeMultistate : public ZigbeeEP {
|
113 | 149 | uint16_t getMultistateOutput() {
|
114 | 150 | return _output_state;
|
115 | 151 | }
|
116 |
| - |
| 152 | + |
117 | 153 | // Get state names and length
|
118 | 154 | uint16_t getMultistateInputStateNamesLength() {
|
119 | 155 | return _input_state_names_length;
|
@@ -141,13 +177,12 @@ class ZigbeeMultistate : public ZigbeeEP {
|
141 | 177 | uint8_t _multistate_clusters;
|
142 | 178 | uint16_t _output_state;
|
143 | 179 | uint16_t _input_state;
|
144 |
| - |
| 180 | + |
145 | 181 | // Local storage for state names
|
146 | 182 | uint16_t _input_state_names_length;
|
147 | 183 | uint16_t _output_state_names_length;
|
148 | 184 | // const char* const* _input_state_names;
|
149 | 185 | // const char* const* _output_state_names;
|
150 |
| - |
151 | 186 | };
|
152 | 187 |
|
153 | 188 | #endif // CONFIG_ZB_ENABLED
|
0 commit comments