Z-Wave Protocol Controller Reference
zwave_command_class_notification.h
Go to the documentation of this file.
1/******************************************************************************
2 * # License
3 * <b>Copyright 2021 Silicon Laboratories Inc. www.silabs.com</b>
4 ******************************************************************************
5 * The licensor of this software is Silicon Laboratories Inc. Your use of this
6 * software is governed by the terms of Silicon Labs Master Software License
7 * Agreement (MSLA) available at
8 * www.silabs.com/about-us/legal/master-software-license-agreement. This
9 * software is distributed to you in Source Code format and is governed by the
10 * sections of the MSLA applicable to Source Code.
11 *
12 *****************************************************************************/
13
32#ifndef ZWAVE_COMMAND_CLASS_NOTIFICATION_H
33#define ZWAVE_COMMAND_CLASS_NOTIFICATION_H
34
35#ifdef __cplusplus
36extern "C" {
37#endif
38
39#include "sl_status.h"
41#include "zwave_rx.h"
42#include "attribute_store.h"
43
44
45// Following defines are created using the notification.py
46#define NOTIFICATION_SMOKE_ALARM (0x1)
47#define NOTIFICATION_CO_ALARM (0x2)
48#define NOTIFICATION_CO2_ALARM (0x3)
49#define NOTIFICATION_HEAT_ALARM (0x4)
50#define NOTIFICATION_WATER_ALARM (0x5)
51#define NOTIFICATION_ACCESS_CONTROL (0x6)
52#define NOTIFICATION_HOME_SECURITY (0x7)
53#define NOTIFICATION_POWER_MANAGEMENT (0x8)
54#define NOTIFICATION_SYSTEM (0x9)
55#define NOTIFICATION_APPLIANCE (0xc)
56#define NOTIFICATION_HOME_HEALTH (0xd)
57#define NOTIFICATION_SIREN (0xe)
58#define NOTIFICATION_WATER_VALVE (0xf)
59#define NOTIFICATION_WEATHER_ALARM (0x10)
60#define NOTIFICATION_IRRIGATION (0x11)
61#define NOTIFICATION_GAS_ALARM (0x12)
62#define NOTIFICATION_PEST_CONTROL (0x13)
63#define NOTIFICATION_LIGHT_SENSOR (0x14)
64#define NOTIFICATION_WATER_QUALITY_MONITORING (0x15)
65#define NOTIFICATION_HOME_MONITORING (0x16)
66
67#define NOTIFICATION_STATE_LAST_EVENT (0xff)
68#define NOTIFICATION_STATE_SMOKE_ALARM_SENSOR_STATUS (0x0)
69#define NOTIFICATION_STATE_SMOKE_ALARM_ALARM_STATUS (0x1)
70#define NOTIFICATION_STATE_SMOKE_ALARM_MAINTENANCE_STATUS (0x2)
71#define NOTIFICATION_STATE_SMOKE_ALARM_PERIODIC_INSPECTION_STATUS (0x3)
72#define NOTIFICATION_STATE_SMOKE_ALARM_DUST_IN_DEVICE_STATUS (0x4)
73#define NOTIFICATION_STATE_CO_ALARM_SENSOR_STATUS (0x0)
74#define NOTIFICATION_STATE_CO_ALARM_TEST_STATUS (0x1)
75#define NOTIFICATION_STATE_CO_ALARM_MAINTENANCE_STATUS (0x2)
76#define NOTIFICATION_STATE_CO_ALARM_ALARM_STATUS (0x3)
77#define NOTIFICATION_STATE_CO_ALARM_PERIODIC_INSPECTION_STATUS (0x4)
78#define NOTIFICATION_STATE_CO2_ALARM_SENSOR_STATUS (0x0)
79#define NOTIFICATION_STATE_CO2_ALARM_TEST_STATUS (0x1)
80#define NOTIFICATION_STATE_CO2_ALARM_MAINTENANCE_STATUS (0x2)
81#define NOTIFICATION_STATE_CO2_ALARM_ALARM_STATUS (0x3)
82#define NOTIFICATION_STATE_CO2_ALARM_PERIODIC_INSPECTION_STATUS (0x4)
83#define NOTIFICATION_STATE_HEAT_ALARM_HEAT_SENSOR_STATUS (0x0)
84#define NOTIFICATION_STATE_HEAT_ALARM_ALARM_STATUS (0x1)
85#define NOTIFICATION_STATE_HEAT_ALARM_MAINTENANCE_STATUS (0x2)
86#define NOTIFICATION_STATE_HEAT_ALARM_DUST_IN_DEVICE_STATUS (0x3)
87#define NOTIFICATION_STATE_HEAT_ALARM_PERIODIC_INSPECTION_STATUS (0x4)
88#define NOTIFICATION_STATE_WATER_ALARM_SENSOR_STATUS (0x0)
89#define NOTIFICATION_STATE_WATER_ALARM_MAINTENANCE_STATUS (0x1)
90#define NOTIFICATION_STATE_WATER_ALARM_WATER_FLOW_ALARM_STATUS (0x2)
91#define NOTIFICATION_STATE_WATER_ALARM_WATER_PRESSURE_ALARM_STATUS (0x3)
92#define NOTIFICATION_STATE_WATER_ALARM_WATER_TEMPERATURE_ALARM_STATUS (0x4)
93#define NOTIFICATION_STATE_WATER_ALARM_WATER_LEVEL_ALARM_STATUS (0x5)
94#define NOTIFICATION_STATE_WATER_ALARM_PUMP_STATUS (0x6)
95#define NOTIFICATION_STATE_ACCESS_CONTROL_LOCK_STATE (0x0)
96#define NOTIFICATION_STATE_ACCESS_CONTROL_KEYPAD_STATE (0x1)
97#define NOTIFICATION_STATE_ACCESS_CONTROL_DOOR_STATE (0x2)
98#define NOTIFICATION_STATE_ACCESS_CONTROL_DOOR_HANDLE_STATE (0x3)
99#define NOTIFICATION_STATE_ACCESS_CONTROL_BARRIER_UL_DISABLING_STATUS (0x4)
100#define NOTIFICATION_STATE_ACCESS_CONTROL_BARRIER_VACATION_MODE_STATUS (0x5)
101#define NOTIFICATION_STATE_ACCESS_CONTROL_BARRIER_SAFETY_BEARM_OBSTACLE_STATUS \
102 (0x6)
103#define NOTIFICATION_STATE_ACCESS_CONTROL_BARRIER_SENSOR_STATUS (0x7)
104#define NOTIFICATION_STATE_ACCESS_CONTROL_BARRIER_BATTERY_STATUS (0x8)
105#define NOTIFICATION_STATE_ACCESS_CONTROL_BARRIER_SHORTCIRCUIT_STATUS (0x9)
106#define NOTIFICATION_STATE_ACCESS_CONTROL_BARRIER_CONTROL_STATUS (0xa)
107#define NOTIFICATION_STATE_HOME_SECURITY_SENSOR_STATUS (0x0)
108#define NOTIFICATION_STATE_HOME_SECURITY_COVER_STATUS (0x1)
109#define NOTIFICATION_STATE_HOME_SECURITY_MOTION_SENSOR_STATUS (0x2)
110#define NOTIFICATION_STATE_HOME_SECURITY_MAGNETIC_INTERFERENCE_STATUS (0x3)
111#define NOTIFICATION_STATE_POWER_MANAGEMENT_POWER_STATUS (0x0)
112#define NOTIFICATION_STATE_POWER_MANAGEMENT_MAINS_STATUS (0x1)
113#define NOTIFICATION_STATE_POWER_MANAGEMENT_OVERCURRENT_STATUS (0x2)
114#define NOTIFICATION_STATE_POWER_MANAGEMENT_OVERVOLTAGE_STATUS (0x3)
115#define NOTIFICATION_STATE_POWER_MANAGEMENT_OVERLOAD_STATUS (0x4)
116#define NOTIFICATION_STATE_POWER_MANAGEMENT_LOAD_ERROR_STATUS (0x5)
117#define NOTIFICATION_STATE_POWER_MANAGEMENT_BATTERY_MAINTENANCE_STATUS (0x6)
118#define NOTIFICATION_STATE_POWER_MANAGEMENT_BATTERY_LOAD_STATUS (0x7)
119#define NOTIFICATION_STATE_POWER_MANAGEMENT_BATTERY_LEVEL_STATUS (0x8)
120#define NOTIFICATION_STATE_POWER_MANAGEMENT_BACKUP_BATTERY_LEVEL_STATUS (0x9)
121#define NOTIFICATION_STATE_SYSTEM_HW_STATUS (0x0)
122#define NOTIFICATION_STATE_SYSTEM_SW_STATUS (0x1)
123#define NOTIFICATION_STATE_SYSTEM_COVER_STATUS (0x2)
124#define NOTIFICATION_STATE_SYSTEM_EMERGENCY_SHUTOFF_STATUS (0x3)
125#define NOTIFICATION_STATE_SYSTEM_DIGITAL_INPUT_STATE (0x4)
126#define NOTIFICATION_STATE_APPLIANCE_PROGRAM_STATUS (0x0)
127#define NOTIFICATION_STATE_APPLIANCE_MAINTENANCE_STATUS (0x1)
128#define NOTIFICATION_STATE_APPLIANCE_APPLIANCE_STATUS (0x2)
129#define NOTIFICATION_STATE_APPLIANCE_TARGET_TEMPERATURE_FAILURE_STATUS (0x3)
130#define NOTIFICATION_STATE_APPLIANCE_WATER_SUPPLY_FAILURE_STATUS (0x4)
131#define NOTIFICATION_STATE_APPLIANCE_BOILING_FAILURE_STATUS (0x5)
132#define NOTIFICATION_STATE_APPLIANCE_WASHING_FAILURE_STATUS (0x6)
133#define NOTIFICATION_STATE_APPLIANCE_RINSING_FAILURE_STATUS (0x7)
134#define NOTIFICATION_STATE_APPLIANCE_DRAINING_FAILURE_STATUS (0x8)
135#define NOTIFICATION_STATE_APPLIANCE_SPINNING_FAILURE_STATUS (0x9)
136#define NOTIFICATION_STATE_APPLIANCE_DRYING_FAILURE_STATUS (0xa)
137#define NOTIFICATION_STATE_APPLIANCE_FAN_FAILURE_STATUS (0xb)
138#define NOTIFICATION_STATE_APPLIANCE_COMPRESSOR_FAILURE_STATUS (0xc)
139#define NOTIFICATION_STATE_HOME_HEALTH_POSITION_STATUS (0x0)
140#define NOTIFICATION_STATE_HOME_HEALTH_SLEEP_APNEA_STATUS (0x1)
141#define NOTIFICATION_STATE_HOME_HEALTH_SLEEP_STAGE_STATUS (0x2)
142#define NOTIFICATION_STATE_SIREN_SIREN_STATUS (0x0)
143#define NOTIFICATION_STATE_WATER_VALVE_VALVE_OPERATION_STATUS (0x0)
144#define NOTIFICATION_STATE_WATER_VALVE_MASTER_VALVE_OPERATION_STATUS (0x1)
145#define NOTIFICATION_STATE_WATER_VALVE_VALVE_SHORT_CIRCUIT_STATUS (0x2)
146#define NOTIFICATION_STATE_WATER_VALVE_MASTER_VALVE_SHORT_CIRCUIT_STATUS (0x3)
147#define NOTIFICATION_STATE_WATER_VALVE_VALVE_CURRENT_ALARM_STATUS (0x4)
148#define NOTIFICATION_STATE_WATER_VALVE_MASTER_VALVE_CURRENT_ALARM_STATUS (0x5)
149#define NOTIFICATION_STATE_WEATHER_ALARM_RAIN_ALARM_STATUS (0x0)
150#define NOTIFICATION_STATE_WEATHER_ALARM_MOISTURE_ALARM_STATUS (0x1)
151#define NOTIFICATION_STATE_WEATHER_ALARM_FREEZE_ALARM_STATUS (0x2)
152#define NOTIFICATION_STATE_IRRIGATION_SCHEDULE_ID_STATUS (0x0)
153#define NOTIFICATION_STATE_IRRIGATION_VALVE_RUN_STATUS (0x1)
154#define NOTIFICATION_STATE_IRRIGATION_DEVICE_CONFIGURATION_STATUS (0x2)
155#define NOTIFICATION_STATE_GAS_ALARM_COMBUSTIBLE_GAS_STATUS (0x0)
156#define NOTIFICATION_STATE_GAS_ALARM_TOXIC_GAS_STATUS (0x1)
157#define NOTIFICATION_STATE_GAS_ALARM_ALARM_STATUS (0x2)
158#define NOTIFICATION_STATE_GAS_ALARM_MAINTENANCE_STATUS (0x3)
159#define NOTIFICATION_STATE_PEST_CONTROL_TRAP_STATUS (0x0)
160#define NOTIFICATION_STATE_LIGHT_SENSOR_LIGHT_DETECTION_STATUS (0x0)
161#define NOTIFICATION_STATE_WATER_QUALITY_MONITORING_CHLORINE_ALARM_STATUS (0x0)
162#define NOTIFICATION_STATE_WATER_QUALITY_MONITORING_ACIDITY_PH_STATUS (0x1)
163#define NOTIFICATION_STATE_WATER_QUALITY_MONITORING_WATER_OXIDATION_ALARM_STATUS \
164 (0x2)
165#define NOTIFICATION_STATE_WATER_QUALITY_MONITORING_CHLORINE_SENSOR_STATUS (0x3)
166#define NOTIFICATION_STATE_WATER_QUALITY_MONITORING_ACIDITY_PH_SENSOR_STATUS \
167 (0x4)
168#define NOTIFICATION_STATE_WATER_QUALITY_MONITORING_WATERFLOW_MEASURING_STATION_SENSOR \
169 (0x5)
170#define NOTIFICATION_STATE_WATER_QUALITY_MONITORING_WATERFLOW_CLEAR_WATER_SENSOR \
171 (0x6)
172#define NOTIFICATION_STATE_WATER_QUALITY_MONITORING_DISINFECTION_SYSTEM_STATUS \
173 (0x7)
174#define NOTIFICATION_STATE_WATER_QUALITY_MONITORING_FILTER_CLEANING_STATUS (0x8)
175#define NOTIFICATION_STATE_WATER_QUALITY_MONITORING_HEATING_STATUS (0x9)
176#define NOTIFICATION_STATE_WATER_QUALITY_MONITORING_FILTER_PUMP_STATUS (0xa)
177#define NOTIFICATION_STATE_WATER_QUALITY_MONITORING_FRESHWATER_FLOW_STATUS (0xb)
178#define NOTIFICATION_STATE_WATER_QUALITY_MONITORING_DRY_PROTECTION_STATUS (0xc)
179#define NOTIFICATION_STATE_WATER_QUALITY_MONITORING_COLLECTIVE_DISORDER_STATUS \
180 (0xd)
181#define NOTIFICATION_STATE_HOME_MONITORING_HOME_OCCUPANCY_STATUS (0x0)
182
192
195
196#ifdef __cplusplus
197}
198#endif
199
200#endif //ZWAVE_COMMAND_CLASS_NOTIFICATION_H
void zwave_command_class_notification_pull_push_discovery(zwave_node_id_t node_id, zwave_endpoint_id_t endpoint_id)
sl_status_t zwave_command_class_notification_init()
Intitialize the Notification command class control APIs.
uint32_t sl_status_t
Definition: sl_status.h:139
uint8_t zwave_endpoint_id_t
Z-Wave Endpoint ID type.
Definition: zwave_node_id_definitions.h:125
uint16_t zwave_node_id_t
Z-Wave NodeID type.
Definition: zwave_node_id_definitions.h:84
SL Status Codes.
const zwave_endpoint_id_t endpoint_id
const zwave_node_id_t node_id