Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/Flipper-Zero/STM32CubeWB.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'Middlewares/ST/STM32_WPAN/zigbee/stack/include/zcl/zcl.illum.level.h')
-rw-r--r--Middlewares/ST/STM32_WPAN/zigbee/stack/include/zcl/zcl.illum.level.h70
1 files changed, 70 insertions, 0 deletions
diff --git a/Middlewares/ST/STM32_WPAN/zigbee/stack/include/zcl/zcl.illum.level.h b/Middlewares/ST/STM32_WPAN/zigbee/stack/include/zcl/zcl.illum.level.h
new file mode 100644
index 000000000..83143ed27
--- /dev/null
+++ b/Middlewares/ST/STM32_WPAN/zigbee/stack/include/zcl/zcl.illum.level.h
@@ -0,0 +1,70 @@
+/* Copyright [2019 - 2019] Exegin Technologies Limited. All rights reserved. */
+
+#ifndef ZCL_ILLUM_LEVEL_H
+#define ZCL_ILLUM_LEVEL_H
+
+#include "zcl/zcl.h"
+
+/*--------------------------------------------------------------------------
+ * DESCRIPTION
+ * Interface definition for the ZCL Illuminance Level Sensing
+ * cluster. This cluster's "level status" attribute is expected
+ * to change depending on the current value of the "target level"
+ * attribute and the illuminance measurement cluster's "measured
+ * value" attribute. This behaviour should be implemented in the
+ * application.
+ *--------------------------------------------------------------------------
+ */
+
+/* PICS.ZCL.Illuminance_Level_Sensing
+ * ILLVL.S | True
+ * ILLVL.C | True
+ *
+ * Server Attributes
+ * ILLVL.S.A0000 | True
+ * ILLVL.S.A0001 | False
+ * ILLVL.S.A0010 | True
+ * ILLVL.S.Afffd | True
+ * ILLVL.S.Afffe | False
+ *
+ * Client Attributes
+ * ILLVL.C.Afffd | True
+ * ILLVL.C.Afffe | False
+ */
+
+/* Attribute Identifiers */
+enum {
+ ZCL_ILLUM_LEVEL_ATTR_LEVEL_STATUS = 0x0000,
+ ZCL_ILLUM_LEVEL_ATTR_LIGHT_SENSOR_TYPE = 0x0001,
+ ZCL_ILLUM_LEVEL_ATTR_ILLUM_TARGET_LEVEL = 0x0010
+};
+
+/* Level Status values */
+#define ZCL_ILLUM_LEVEL_STATUS_ON_TARGET 0x00U
+#define ZCL_ILLUM_LEVEL_STATUS_BELOW_TARGET 0x01U
+#define ZCL_ILLUM_LEVEL_STATUS_ABOVE_TARGET 0x02U
+
+/* Light Sensor Type values */
+#define ZCL_ILLUM_LEVEL_SENSOR_TYPE_PHOTODIODE 0x00U
+#define ZCL_ILLUM_LEVEL_SENSOR_TYPE_CMOS 0x01U
+#define ZCL_ILLUM_LEVEL_SENSOR_TYPE_UNKNOWN 0xffU
+
+/* Illuminance Target Level values */
+#define ZCL_ILLUM_LEVEL_TARGET_INVALID 0xffff
+
+/* Illum Level Sensing Defines */
+#define ZCL_ILLUM_LEVEL_STATUS_MIN 0x00
+#define ZCL_ILLUM_LEVEL_STATUS_MAX 0xfe
+#define ZCL_ILLUM_LEVEL_SEN_TYPE_MIN 0x00
+#define ZCL_ILLUM_LEVEL_SEN_TYPE_MAX 0xff
+#define ZCL_ILLUM_LEVEL_TARGET_MIN 0x0000
+#define ZCL_ILLUM_LEVEL_TARGET_MAX 0xffff
+
+/*---------------------------------------------------------------
+ * Illumination Level Sensing Cluster Definitions
+ *---------------------------------------------------------------
+ */
+struct ZbZclClusterT * ZbZclIllumLevelClientAlloc(struct ZigBeeT *zb, uint8_t endpoint);
+struct ZbZclClusterT * ZbZclIllumLevelServerAlloc(struct ZigBeeT *zb, uint8_t endpoint);
+
+#endif /* __ZCL_ILLUM_LEVEL_H */