Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
K
k-sdk
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
陈伟灿
k-sdk
Commits
ea981073
Commit
ea981073
authored
Sep 02, 2020
by
尹佳钦
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
20200902
parent
ecde4c19
Changes
14
Show whitespace changes
Inline
Side-by-side
Showing
14 changed files
with
929 additions
and
24 deletions
+929
-24
platform/zigbee/app/builder/Z3GatewayHost/Makefile
platform/zigbee/app/builder/Z3GatewayHost/Makefile
+6
-1
platform/zigbee/app/builder/Z3GatewayHost/ZB/kk_device_control.c
...m/zigbee/app/builder/Z3GatewayHost/ZB/kk_device_control.c
+1
-0
platform/zigbee/app/builder/Z3GatewayHost/ZB/kk_device_control.h
...m/zigbee/app/builder/Z3GatewayHost/ZB/kk_device_control.h
+25
-0
platform/zigbee/app/builder/Z3GatewayHost/ZB/kk_device_manager.c
...m/zigbee/app/builder/Z3GatewayHost/ZB/kk_device_manager.c
+284
-0
platform/zigbee/app/builder/Z3GatewayHost/ZB/kk_device_manager.h
...m/zigbee/app/builder/Z3GatewayHost/ZB/kk_device_manager.h
+47
-0
platform/zigbee/app/builder/Z3GatewayHost/ZB/kk_product_code.c
...orm/zigbee/app/builder/Z3GatewayHost/ZB/kk_product_code.c
+63
-0
platform/zigbee/app/builder/Z3GatewayHost/ZB/kk_product_code.h
...orm/zigbee/app/builder/Z3GatewayHost/ZB/kk_product_code.h
+179
-0
platform/zigbee/app/builder/Z3GatewayHost/ZB/zb_device_id.c
platform/zigbee/app/builder/Z3GatewayHost/ZB/zb_device_id.c
+125
-0
platform/zigbee/app/builder/Z3GatewayHost/ZB/zb_device_id.h
platform/zigbee/app/builder/Z3GatewayHost/ZB/zb_device_id.h
+123
-0
platform/zigbee/app/builder/Z3GatewayHost/callback-stub.c
platform/zigbee/app/builder/Z3GatewayHost/callback-stub.c
+2
-17
platform/zigbee/app/builder/Z3GatewayHost/kk_test.c
platform/zigbee/app/builder/Z3GatewayHost/kk_test.c
+33
-5
platform/zigbee/app/builder/Z3GatewayHost/kk_test.h
platform/zigbee/app/builder/Z3GatewayHost/kk_test.h
+5
-1
platform/zigbee/app/builder/Z3GatewayHost/kk_tsl_zigbee_map.c
...form/zigbee/app/builder/Z3GatewayHost/kk_tsl_zigbee_map.c
+4
-0
platform/zigbee/app/builder/Z3GatewayHost/yjq_ezsp.c
platform/zigbee/app/builder/Z3GatewayHost/yjq_ezsp.c
+32
-0
No files found.
platform/zigbee/app/builder/Z3GatewayHost/Makefile
View file @
ea981073
...
...
@@ -81,7 +81,8 @@ INCLUDES= \
-I
./../../../platform/base/hal/micro/generic
\
-I
./../../../platform/base/hal/micro/unix/host
\
-I
../../../platform/base/hal/micro/unix/host/board
\
-I
./rpc_api/inc
-I
./rpc_api/inc
\
-I
./ZB
\
APP_BUILDER_OUTPUT_DIRECTORY
=
.
...
...
@@ -272,6 +273,10 @@ APPLICATION_FILES= \
./jsonrpc/jsonrpc-c.c
\
./jsonrpc/rpccJSON.c
\
./yjq_ezsp.c
\
./ZB/zb_device_id.c
\
./ZB/kk_device_manager.c
\
./ZB/kk_product_code.c
\
./ZB/kk_device_control.c
\
./kk_test.c
\
./kk_sub_tsl.c
\
./kk_tsl_zigbee_map.c
\
...
...
platform/zigbee/app/builder/Z3GatewayHost/ZB/kk_device_control.c
0 → 100644
View file @
ea981073
platform/zigbee/app/builder/Z3GatewayHost/ZB/kk_device_control.h
0 → 100644
View file @
ea981073
#ifndef __KK_DEVICE_CONTROL_H
#define __KK_DEVICE_CONTROL_H
#endif
platform/zigbee/app/builder/Z3GatewayHost/ZB/kk_device_manager.c
0 → 100644
View file @
ea981073
#include "kk_device_manager.h"
/****************** ******************************************************************
* File Name : kk_device_manager.c
* Author : yjq
* data : 2020/09/01
*************************************************************************************/
#define KK_GP_EP 242
static
int
kk_get_device_ep_number
(
EmberEUI64
mac
,
uint8_t
*
buffer
,
uint8_t
maxLen
,
bool
*
over
);
kk_device_table_s
*
kk_zb_device_table
=
NULL
;
void
kk_print_device_table
(
void
)
{
int
i
,
cnt
=
0
;
kk_device_table_s
*
ptr
=
kk_zb_device_table
;
emberAfCorePrintln
(
"
\n
-----------kk device table-----------
\n
"
);
while
(
ptr
!=
NULL
){
emberAfAppPrint
(
"
\n
%d:"
,
++
cnt
);
emberAfAppPrint
(
"
\n
MAC = "
);
emberAfPrintBigEndianEui64
(
ptr
->
mac
);
emberAfAppPrint
(
"
\n
productCode = %s"
,(
ptr
->
productCode
!=
NULL
)
?
ptr
->
productCode
:
"unknow"
);
emberAfAppPrint
(
"
\n
EP Number = %d"
,
ptr
->
epNumber
);
for
(
i
=
0
;
i
<
ptr
->
epNumber
;
i
++
){
if
(
i
==
0
)
emberAfAppPrint
(
"
\n
EP="
);
emberAfAppPrint
(
"%d "
,
ptr
->
epValue
[
i
]);
}
ptr
=
ptr
->
next
;
}
}
static
kk_device_table_s
*
kk_device_table_create
()
{
emberAfCorePrintln
(
"[KK device table] create!"
);
kk_device_table_s
*
node
=
(
kk_device_table_s
*
)
malloc
(
sizeof
(
kk_device_table_s
));
if
(
node
==
NULL
){
emberAfCorePrintln
(
"[KK device table] malloc fail!!!%s"
,
__LINE__
);
return
node
;
}
MEMSET
(
node
,
0
,
sizeof
(
kk_device_table_s
));
return
node
;
}
static
kk_device_table_s
*
kk_device_table_find_next_empty
()
{
kk_device_table_s
*
ptr
=
kk_zb_device_table
;
if
(
ptr
==
NULL
)
return
ptr
;
while
(
ptr
!=
NULL
){
if
(
ptr
->
next
==
NULL
)
return
ptr
;
ptr
=
ptr
->
next
;
}
}
static
void
kk_device_fill
(
kk_device_table_s
*
ptr
,
EmberEUI64
mac
,
uint8_t
epNum
,
uint8_t
*
epVal
,
char
*
productCode
)
{
emberAfPrintBigEndianEui64
(
mac
);
memcpy
(
ptr
->
mac
,
mac
,
sizeof
(
EmberEUI64
));
ptr
->
epNumber
=
epNum
;
ptr
->
epValue
=
(
uint8_t
*
)
malloc
(
epNum
);
memcpy
(
ptr
->
epValue
,
epVal
,
epNum
);
ptr
->
productCode
=
productCode
;
}
kk_device_table_s
*
kk_device_find_by_mac
(
EmberEUI64
mac
)
{
kk_device_table_s
*
ptr
=
kk_zb_device_table
;
while
(
ptr
!=
NULL
){
if
(
MEMCOMPARE
(
ptr
->
mac
,
mac
,
sizeof
(
EmberEUI64
))
==
0
){
return
ptr
;
}
ptr
=
ptr
->
next
;
}
return
NULL
;
}
bool
kk_device_find_by_mac11111
(
EmberEUI64
mac
)
{
kk_device_table_s
*
ptr
=
kk_zb_device_table
;
while
(
ptr
!=
NULL
){
if
(
MEMCOMPARE
(
ptr
->
mac
,
mac
,
sizeof
(
EmberEUI64
))
==
0
){
return
true
;
}
ptr
=
ptr
->
next
;
}
return
false
;
}
void
kk_device_table_add
(
EmberEUI64
mac
,
uint8_t
epNum
,
uint8_t
*
epVal
,
char
*
productCode
)
{
kk_device_table_s
*
ptr
=
kk_zb_device_table
;
kk_device_table_s
*
newNode
;
if
(
ptr
==
NULL
){
kk_zb_device_table
=
kk_device_table_create
();
ptr
=
kk_zb_device_table
;
kk_device_fill
(
ptr
,
mac
,
epNum
,
epVal
,
productCode
);
return
;
}
ptr
=
kk_device_table_find_next_empty
();
if
(
ptr
!=
NULL
){
newNode
=
kk_device_table_create
();
if
(
newNode
!=
NULL
){
ptr
->
next
=
newNode
;
kk_device_fill
(
newNode
,
mac
,
epNum
,
epVal
,
productCode
);
}
}
else
{
emberAfCorePrintln
(
"[KK device table] fatal!!!%s"
,
__LINE__
);
}
}
void
kk_device_table_delete
(
EmberEUI64
mac
)
{
kk_device_table_s
*
ptr
=
kk_zb_device_table
;
kk_device_table_s
*
ptr_temp
=
kk_zb_device_table
;
if
(
ptr
==
NULL
){
emberAfCorePrintln
(
"[KK device table] is empty!!!"
);
return
;
}
while
(
ptr
!=
NULL
){
if
(
MEMCOMPARE
(
ptr
->
mac
,
mac
,
sizeof
(
EmberEUI64
))
==
0
){
if
(
ptr
->
next
==
NULL
){
free
(
ptr
->
epValue
);
free
(
ptr
);
kk_zb_device_table
=
NULL
;
emberAfCorePrintln
(
"[KK device table]delete,now is empty !!!"
);
return
;
}
else
{
if
(
ptr
==
kk_zb_device_table
){
kk_zb_device_table
=
ptr
->
next
;
emberAfCorePrintln
(
"[KK device table] delete list header"
);
free
(
ptr
->
epValue
);
free
(
ptr
);
return
;
}
else
{
ptr_temp
->
next
=
ptr
->
next
;
free
(
ptr
->
epValue
);
free
(
ptr
);
emberAfCorePrintln
(
"[KK device table] delete "
);
return
;
}
}
}
ptr_temp
=
ptr
;
ptr
=
ptr
->
next
;
}
}
static
void
kk_device_table_load
(
void
)
{
int
i
,
flag
;
uint8_t
epNum
=
0
;
kk_device_table_s
*
p
;
EmberAfPluginDeviceTableEntry
*
ptr
=
emberAfDeviceTablePointer
();
uint8_t
EP
[
KK_MAX_SUPPORT_ENDPOINT_NUMBER
]
=
{
0
};
emberAfCorePrintln
(
"
\n
-------------kk device table load.-------------
\n
"
);
for
(
i
=
0
;
i
<
EMBER_AF_PLUGIN_DEVICE_TABLE_DEVICE_TABLE_SIZE
;
i
++
)
{
if
(
ptr
[
i
].
state
!=
EMBER_AF_PLUGIN_DEVICE_TABLE_STATE_NULL
&&
ptr
[
i
].
nodeId
!=
EMBER_AF_PLUGIN_DEVICE_TABLE_NULL_NODE_ID
){
p
=
kk_device_find_by_mac
(
ptr
[
i
].
eui64
);
//todo
if
(
p
==
NULL
){
epNum
=
kk_get_device_ep_number
(
ptr
[
i
].
eui64
,
EP
,
KK_MAX_SUPPORT_ENDPOINT_NUMBER
,
NULL
);
kk_device_table_add
(
ptr
[
i
].
eui64
,
epNum
,
EP
,
TEST_PRODUCT_CODE
);
}
}
}
kk_print_device_table
();
}
////////////////////////////////////////////////////
void
emberAfPluginDeviceTableInitialized
(
void
)
{
kk_device_table_load
();
}
static
int
kk_match_device_id
(
uint16_t
deviceId
)
{
int
i
;
if
(
deviceId
==
0xffff
)
return
-
1
;
for
(
i
=
0
;
zb_device_id
[
i
].
deviceId
!=
0xffff
;
i
++
){
if
(
zb_device_id
[
i
].
deviceId
==
deviceId
){
#ifdef ZIGBEE_DEVICE_ID_STRING_ENABLE
emberAfDebugPrintln
(
"[device]%s"
,
zb_device_id
[
i
].
deviceIdString
);
#endif
}
}
return
-
2
;
}
static
int
kk_match_product_code
(
uint16_t
deviceId
,
uint8_t
num
,
uint8_t
*
ep
)
{
}
static
int
kk_get_device_ep_number
(
EmberEUI64
mac
,
uint8_t
*
buffer
,
uint8_t
maxLen
,
bool
*
over
)
{
uint16_t
i
;
uint8_t
num
=
0
;
EmberAfPluginDeviceTableEntry
*
ptr
=
emberAfDeviceTablePointer
();
for
(
i
=
0
;
i
<
EMBER_AF_PLUGIN_DEVICE_TABLE_DEVICE_TABLE_SIZE
;
i
++
)
{
if
(
MEMCOMPARE
(
ptr
[
i
].
eui64
,
mac
,
sizeof
(
EmberEUI64
))
==
0
&&
ptr
[
i
].
state
!=
EMBER_AF_PLUGIN_DEVICE_TABLE_STATE_NULL
&&
ptr
[
i
].
nodeId
!=
EMBER_AF_PLUGIN_DEVICE_TABLE_NULL_NODE_ID
){
if
(
ptr
[
i
].
endpoint
!=
KK_GP_EP
){
buffer
[
num
]
=
ptr
[
i
].
endpoint
;
++
num
;
if
(
num
>
maxLen
){
return
;
}
}
}
}
return
num
;
}
void
kk_dispatch_productCode
(
EmberEUI64
mac
)
{
uint16_t
deviceTableIndex
=
emberAfDeviceTableGetFirstIndexFromEui64
(
mac
);
EmberAfPluginDeviceTableEntry
*
deviceTable
=
emberAfDeviceTablePointer
();
uint16_t
deviceId
=
0xffff
;
bool
flag
=
0
;
uint8_t
epNum
=
0
;
uint8_t
EP
[
KK_MAX_SUPPORT_ENDPOINT_NUMBER
]
=
{
0
};
if
(
deviceTableIndex
!=
EMBER_AF_PLUGIN_DEVICE_TABLE_NULL_INDEX
){
deviceId
=
deviceTable
[
deviceTableIndex
].
deviceId
;
}
if
(
kk_match_device_id
(
deviceId
)
==
0
){
epNum
=
kk_get_device_ep_number
(
mac
,
EP
,
KK_MAX_SUPPORT_ENDPOINT_NUMBER
,
&
flag
);
if
(
flag
==
true
){
emberAfCorePrintln
(
"[Warring]device ep num= %d,max=%d"
,
epNum
,
KK_MAX_SUPPORT_ENDPOINT_NUMBER
);
}
kk_device_table_add
(
mac
,
epNum
,
EP
,
TEST_PRODUCT_CODE
);
}
}
platform/zigbee/app/builder/Z3GatewayHost/ZB/kk_device_manager.h
0 → 100644
View file @
ea981073
#ifndef __KK_DEVICE_MANAGER_H
#define __KK_DEVICE_MANAGER_H
#include "kk_test.h"
#include "kk_sub_tsl.h"
#include "kk_tsl_zigbee_map.h"
#include "kk_product_code.h"
/****************** ******************************************************************
* File Name : kk_device_manager.h
* Author : yjq
* data : 2020/09/01
*************************************************************************************/
typedef
struct
kk_device_table_s
{
EmberEUI64
mac
;
uint8_t
epNumber
;
uint8_t
*
epValue
;
char
*
productCode
;
struct
kk_device_table_s
*
next
;
}
kk_device_table_s
;
#define KK_MAX_SUPPORT_ENDPOINT_NUMBER 32
void
kk_print_device_table
(
void
);
kk_device_table_s
*
kk_device_find_by_mac
(
EmberEUI64
mac
);
void
kk_device_table_add
(
EmberEUI64
mac
,
uint8_t
epNum
,
uint8_t
*
epVal
,
char
*
productCode
);
void
kk_device_table_delete
(
EmberEUI64
mac
);
#endif
platform/zigbee/app/builder/Z3GatewayHost/ZB/kk_product_code.c
0 → 100644
View file @
ea981073
#include "kk_product_code.h"
/****************** ******************************************************************
* File Name : kk_product_code.c
* Author : yjq
* data : 2020/09/01
*************************************************************************************/
#ifndef NULL
#define NULL (void *)0
#endif
#ifdef KK_PRODUCT_CODE_STRING_ENABLE
kk_product_code_s
kk_product_code
[]
=
{
{
_2EP_ZERO_FIRE_LIGHTING_MODULE_CODE
,
NULL
,
_2EP_ZERO_FIRE_LIGHTING_MODULE_NAME
},
{
DOOYA_CURTAIN_MOTOR_CODE
,
DOOYA_CURTAIN_MOTOR_MODEL_ID
,
DOOYA_CURTAIN_MOTOR_NAME
},
{
_1EP_ZERO_FIRE_PANEL_CODE
,
NULL
,
_1EP_ZERO_FIRE_PANEL_NAME
},
{
_2EP_ZERO_FIRE_PANEL_CODE
,
NULL
,
_2EP_ZERO_FIRE_PANEL_NAME
},
{
_3EP_ZERO_FIRE_PANEL_CODE
,
NULL
,
_3EP_ZERO_FIRE_PANE_NAME
},
{
ADJUSTABLE_LIGHT_KNOB_PANEL_CODE
,
NULL
,
ADJUSTABLE_LIGHT_KNOB_PANEL_NAME
},
{
CHOPIN_WALL_OUTLET_10A_CODE
,
CHOPIN_WALL_OUTLET_10A_CODE_NAME_MODEL_ID
,
CHOPIN_WALL_OUTLET_10A_CODE_NAME
},
{
CHOPIN_WALL_OUTLET_16A_CODE
,
CHOPIN_WALL_OUTLET_16A_CODE_NAME_MODEL_ID
,
CHOPIN_WALL_OUTLET_16A_CODE_NAME
},
{
_1EP_STARS_ZERO_FIRE_PANEL_CODE
,
_1EP_STARS_ZERO_FIRE_PANEL_MODEL_ID
,
_1EP_STARS_ZERO_FIRE_PANEL_NAME
},
{
_2EP_STARS_ZERO_FIRE_PANEL_CODE
,
_2EP_STARS_ZERO_FIRE_PANEL_MODEL_ID
,
_2EP_STARS_ZERO_FIRE_PANEL_NAME
},
{
_3EP_STARS_ZERO_FIRE_PANEL_CODE
,
_3EP_STARS_ZERO_FIRE_PANEL_MODEL_ID
,
_3EP_STARS_ZERO_FIRE_PANEL_NAME
},
{
_1EP_CHOPIN_ZERO_FIRE_PANEL_CODE
,
_1EP_CHOPIN_ZERO_FIRE_PANEL_MODEL_ID
,
_1EP_CHOPIN_ZERO_FIRE_PANEL_NAME
},
{
_2EP_CHOPIN_ZERO_FIRE_PANEL_CODE
,
_2EP_CHOPIN_ZERO_FIRE_PANEL_MODEL_ID
,
_2EP_CHOPIN_ZERO_FIRE_PANEL_NAME
},
{
_3EP_CHOPIN_ZERO_FIRE_PANEL_CODE
,
_3EP_CHOPIN_ZERO_FIRE_PANEL_MODEL_ID
,
_3EP_CHOPIN_ZERO_FIRE_PANEL_NAME
},
{
_1EP_CHOPIN_CURTAIN_MOTOR_CODE
,
_1EP_CHOPIN_CURTAIN_MOTOR_MODEL_ID
,
_1EP_CHOPIN_CURTAIN_MOTOR_NAME
},
{
_2EP_CHOPIN_CURTAIN_MOTOR_CODE
,
_2EP_CHOPIN_CURTAIN_MOTOR_MODEL_ID
,
_2EP_CHOPIN_CURTAIN_MOTOR_NAME
},
{
_1EP_PLATINUM_SWITCH_CODE
,
_1EP_PLATINUM_SWITCH_MODEL_ID
,
_1EP_PLATINUM_SWITCH_NAME
},
{
_2EP_PLATINUM_SWITCH_CODE
,
_2EP_PLATINUM_SWITCH_MODEL_ID
,
_2EP_PLATINUM_SWITCH_NAME
},
{
_3EP_PLATINUM_SWITCH_CODE
,
_3EP_PLATINUM_SWITCH_MODEL_ID
,
_3EP_PLATINUM_SWITCH_NAME
},
{
PLATINUM_ACTUATOR_PANEL_CODE
,
NULL
,
PLATINUM_ACTUATOR_PANEL_NAME
},
{
RGB_LIGHT_CODE
,
RGB_LIGHT_NAME_MODEL_ID
,
RGB_LIGHT_NAME
},
{
NULL
,
NULL
,
NULL
}
};
#else
kk_product_code_s
kk_product_code
[]
=
{
{
_2EP_ZERO_FIRE_LIGHTING_MODULE_CODE
,
NULL
},
{
DOOYA_CURTAIN_MOTOR_CODE
,
DOOYA_CURTAIN_MOTOR_MODEL_ID
},
{
_1EP_ZERO_FIRE_PANEL_CODE
,
NULL
},
{
_2EP_ZERO_FIRE_PANEL_CODE
,
NULL
},
{
_3EP_ZERO_FIRE_PANEL_CODE
,
NULL
},
{
ADJUSTABLE_LIGHT_KNOB_PANEL_CODE
,
NULL
},
{
CHOPIN_WALL_OUTLET_10A_CODE
,
CHOPIN_WALL_OUTLET_10A_CODE_NAME_MODEL_ID
},
{
CHOPIN_WALL_OUTLET_16A_CODE
,
CHOPIN_WALL_OUTLET_16A_CODE_NAME_MODEL_ID
},
{
_1EP_STARS_ZERO_FIRE_PANEL_CODE
,
_1EP_STARS_ZERO_FIRE_PANEL_MODEL_ID
},
{
_2EP_STARS_ZERO_FIRE_PANEL_CODE
,
_2EP_STARS_ZERO_FIRE_PANEL_MODEL_ID
},
{
_3EP_STARS_ZERO_FIRE_PANEL_CODE
,
_3EP_STARS_ZERO_FIRE_PANEL_MODEL_ID
},
{
_1EP_CHOPIN_ZERO_FIRE_PANEL_CODE
,
_1EP_CHOPIN_ZERO_FIRE_PANEL_MODEL_ID
},
{
_2EP_CHOPIN_ZERO_FIRE_PANEL_CODE
,
_2EP_CHOPIN_ZERO_FIRE_PANEL_MODEL_ID
},
{
_3EP_CHOPIN_ZERO_FIRE_PANEL_CODE
,
_3EP_CHOPIN_ZERO_FIRE_PANEL_MODEL_ID
},
{
_1EP_CHOPIN_CURTAIN_MOTOR_CODE
,
_1EP_CHOPIN_CURTAIN_MOTOR_MODEL_ID
},
{
_2EP_CHOPIN_CURTAIN_MOTOR_CODE
,
_2EP_CHOPIN_CURTAIN_MOTOR_MODEL_ID
},
{
_1EP_PLATINUM_SWITCH_CODE
,
_1EP_PLATINUM_SWITCH_MODEL_ID
},
{
_2EP_PLATINUM_SWITCH_CODE
,
_2EP_PLATINUM_SWITCH_MODEL_ID
},
{
_3EP_PLATINUM_SWITCH_CODE
,
_3EP_PLATINUM_SWITCH_MODEL_ID
},
{
PLATINUM_ACTUATOR_PANEL_CODE
,
NULL
},
{
RGB_LIGHT_CODE
,
RGB_LIGHT_NAME_MODEL_ID
},
{
NULL
,
NULL
}
};
#endif
\ No newline at end of file
platform/zigbee/app/builder/Z3GatewayHost/ZB/kk_product_code.h
0 → 100644
View file @
ea981073
#ifndef __KK_PRODUCT_CODE_H
#define __KK_PRODUCT_CODE_H
/****************** ******************************************************************
* File Name : kk_product_code.h
* Author : yjq
* data : 2020/09/01
*************************************************************************************/
#define KK_PRODUCT_CODE_STRING_ENABLE
typedef
struct
{
char
*
code
;
char
*
modelId
;
#ifdef KK_PRODUCT_CODE_STRING_ENABLE
char
*
name
;
#endif
}
kk_product_code_s
;
#define _2EP_ZERO_FIRE_LIGHTING_MODULE_CODE "11"
#define DOOYA_CURTAIN_MOTOR_CODE "24"
#define _1EP_ZERO_FIRE_PANEL_CODE "83"
#define _2EP_ZERO_FIRE_PANEL_CODE "84"
#define _3EP_ZERO_FIRE_PANEL_CODE "85"
#define ADJUSTABLE_LIGHT_KNOB_PANEL_CODE "89"
#define CHOPIN_WALL_OUTLET_10A_CODE "90"
#define CHOPIN_WALL_OUTLET_16A_CODE "91"
#define _1EP_STARS_ZERO_FIRE_PANEL_CODE "96"
#define _2EP_STARS_ZERO_FIRE_PANEL_CODE "97"
#define _3EP_STARS_ZERO_FIRE_PANEL_CODE "98"
#define _1EP_CHOPIN_ZERO_FIRE_PANEL_CODE "102"
#define _2EP_CHOPIN_ZERO_FIRE_PANEL_CODE "103"
#define _3EP_CHOPIN_ZERO_FIRE_PANEL_CODE "104"
#define _1EP_CHOPIN_CURTAIN_MOTOR_CODE "105"
#define _2EP_CHOPIN_CURTAIN_MOTOR_CODE "106"
#define _1EP_PLATINUM_SWITCH_CODE "1002"
#define _2EP_PLATINUM_SWITCH_CODE "1003"
#define _3EP_PLATINUM_SWITCH_CODE "1004"
#define PLATINUM_ACTUATOR_PANEL_CODE "1007"
#define RGB_LIGHT_CODE "1022"
#define DOOYA_CURTAIN_MOTOR_MODEL_ID "02020000"
#define CHOPIN_WALL_OUTLET_10A_CODE_NAME_MODEL_ID "00518620"
#define CHOPIN_WALL_OUTLET_16A_CODE_NAME_MODEL_ID "00518626"
#define _1EP_STARS_ZERO_FIRE_PANEL_MODEL_ID "00068611"
#define _2EP_STARS_ZERO_FIRE_PANEL_MODEL_ID "00068612"
#define _3EP_STARS_ZERO_FIRE_PANEL_MODEL_ID "00068613"
#define _1EP_PLATINUM_SWITCH_MODEL_ID "00068601"
#define _2EP_PLATINUM_SWITCH_MODEL_ID "00068602"
#define _3EP_PLATINUM_SWITCH_MODEL_ID "00068603"
#define PLATINUM_ACTUATOR_PANEL_NAME_MODEL_ID "00038603"
#define RGB_LIGHT_NAME_MODEL_ID "01020001"
#define _1EP_CHOPIN_ZERO_FIRE_PANEL_MODEL_ID "00068621"
#define _2EP_CHOPIN_ZERO_FIRE_PANEL_MODEL_ID "00068622"
#define _3EP_CHOPIN_ZERO_FIRE_PANEL_MODEL_ID "00068623"
#define _1EP_CHOPIN_CURTAIN_MOTOR_MODEL_ID "00038621"
#define _2EP_CHOPIN_CURTAIN_MOTOR_MODEL_ID "00038622"
#ifdef KK_PRODUCT_CODE_STRING_ENABLE
#define _2EP_ZERO_FIRE_LIGHTING_MODULE_NAME "两路零火灯光模块"
#define DOOYA_CURTAIN_MOTOR_NAME "智能窗帘电机(杜亚)"
#define _1EP_ZERO_FIRE_PANEL_NAME "一路零火面板(肖邦系列)"
#define _2EP_ZERO_FIRE_PANEL_NAME "两路零火面板(肖邦系列)"
#define _3EP_ZERO_FIRE_PANE_NAME "三路零火面板(肖邦系列)"
#define ADJUSTABLE_LIGHT_KNOB_PANEL_NAME "可调光旋钮面板(肖邦系列)"
#define CHOPIN_WALL_OUTLET_10A_CODE_NAME "入墙插座10A(肖邦系列)"
#define CHOPIN_WALL_OUTLET_16A_CODE_NAME "入墙插座16A(肖邦系列)"
#define _1EP_STARS_ZERO_FIRE_PANEL_NAME "星辰一路零火面板"
#define _2EP_STARS_ZERO_FIRE_PANEL_NAME "星辰两路零火面板"
#define _3EP_STARS_ZERO_FIRE_PANEL_NAME "星辰三路零火面板"
#define _1EP_CHOPIN_ZERO_FIRE_PANEL_NAME "一路零火面板(肖邦系列)定制版"
#define _2EP_CHOPIN_ZERO_FIRE_PANEL_NAME "两路零火面板(肖邦系列)定制版"
#define _3EP_CHOPIN_ZERO_FIRE_PANEL_NAME "三路零火面板(肖邦系列)定制版"
#define _1EP_CHOPIN_CURTAIN_MOTOR_NAME "一路窗帘面板(肖邦系列)定制版"
#define _2EP_CHOPIN_CURTAIN_MOTOR_NAME "两路窗帘面板(肖邦系列)定制版"
#define _1EP_PLATINUM_SWITCH_NAME "铂金系列一路灯控"
#define _2EP_PLATINUM_SWITCH_NAME "铂金系列两路灯控"
#define _3EP_PLATINUM_SWITCH_NAME "铂金系列三路灯控"
#define PLATINUM_ACTUATOR_PANEL_NAME "铂金系列推窗面板"
#define RGB_LIGHT_NAME "RGBW灯带"
#endif
/*
Z3D_IASZONE = 0x04020000, // IAS Zone 设备ID,不表示具体设备
Z3D_IASWD = 0x04030000, // IAS WD 设备ID,不表示具体设备
// 高级别状态指示类设备,APP客户端中显示状态需要和设备实际状态保持高度一致!状态上报不允许丢失,所以需要尝试多次上报!
Z3D_SMARTPLUG = 0x00510000, // 智能插座插座
Z3D_IAS_CONTACT_SWITCH = 0x04020015, // 门磁: IAS Zone device id + device type
Z3D_IAS_FIRE_SENSOR = 0x04020028, // 烟雾传感器: IAS Zone device id + device type
Z3D_IAS_WATER_SENSOR = 0x0402002A, // 水浸传感器: IAS Zone device id + device type
Z3D_IAS_GAS_SENSOR = 0x0402002B, // 气体传感器: IAS Zone device id + device type
Z3D_IAS_WD = 0x04030225, // 标准报警器(声光报警等): IAS WD device id + device type[in IAS Zone]
Z3D_WINDOW_COVERING = 0x02020000, // 窗帘电机(杜亚)
// Serial - 铂金
Z3D_BJSP_S1G = 0x00068601, // 铂金开关面板1路
Z3D_BJSP_S2G = 0x00068602, // 铂金开关面板2路
Z3D_BJSP_S3G = 0x00068603, // 铂金开关面板3路
Z3D_BJPP_C20 = 0x00518610, // 铂金墙插面板10A
Z3D_BJPP_C26 = 0x00518616, // 铂金墙插面板16A
Z3D_BJCP_S1G = 0x00038601, // 铂金窗帘面板1路
Z3D_BJOWP_S1G = 0x00038603, // 铂金一路推窗器面板
Z3D_BJDLP_S1G = 0x01018601, // 铂金调光面板
Z3D_BJSCP_S3G = 0x00048601, // 铂金情景面板(3路)
Z3D_BJQKP_S3G = 0x00048602, // 铂金快捷面板(3路)
Z3D_BJSOS_PANEL = 0X0402802C, // 铂金SOS面板(零火线)
Z3D_BJSOS_BUTTON= 0X0402812C, // 铂金SOS按钮(电池)
// Serial - 星辰
Z3D_XCSP_S1G = 0x00068611, // 星辰开关面板1路
Z3D_XCSP_S2G = 0x00068612, // 星辰开关面板2路
Z3D_XCSP_S3G = 0x00068613, // 星辰开关面板3路
Z3D_XCCP_S1G = 0x00038611, // 星辰窗帘面板1路
Z3D_XCCP_S2G = 0x00038612, // 星辰窗帘面板2路
Z3D_XCSCP_S4G = 0x00048611, // 星辰情景面板(4路)
// Serial - 肖邦
Z3D_XBSP_S1G = 0x00068621, // 肖邦开关面板1路
Z3D_XBSP_S2G = 0x00068622, // 肖邦开关面板2路
Z3D_XBSP_S3G = 0x00068623, // 肖邦开关面板3路
Z3D_XBPP_D20 = 0x00518620, // 肖邦墙插面板10A
Z3D_XBPP_D26 = 0x00518626, // 肖邦墙插面板16A
Z3D_XBCP_S1G = 0x00038621, // 肖邦窗帘面板1路
Z3D_XBCP_S2G = 0x00038622, // 肖邦窗帘面板2路
Z3D_XBSCP_S4G = 0x00048621, // 肖邦情景面板(4路)
Z3D_LMCW_LOCK0 = 0x01018000, // 创维门锁不带指纹
Z3D_LMCW_LOCK1 = 0x01018001, // 创维门锁带指纹
// 低等级状态指示类设备,APP客户端中仅记录历史状态,状态上报允许存在丢失
Z3D_ENVI_SENSOR = 0x03020000, // 温度传感器: Temperature device id + model id,注意控客环境同时存在温度和湿度,为了兼容其他厂家仅有温度的传感,这里设备类型仅使用温度device_id+model_id来确定!
// 动作触发类设备,APP客户端中仅记录历史操作,动作触发上报为实时,且允许存在丢失
Z3D_SWITCH = 0x00510001, // 快捷按钮
Z3D_IAS_MOTION_SENSOR = 0x0402000D, // 移动传感器: IAS Zone device id + device type
Z3D_UNKNOW = 0xFFFFFFFF, // 未知类型
*/
extern
kk_product_code_s
kk_product_code
[];
#endif
platform/zigbee/app/builder/Z3GatewayHost/ZB/zb_device_id.c
0 → 100644
View file @
ea981073
#include "zb_device_id.h"
/****************** ******************************************************************
* File Name : zb_device_id.c
* Author : yjq
* data : 2020/09/01
*************************************************************************************/
#ifdef ZIGBEE_DEVICE_ID_STRING_ENABLE
zb_device_id_s
zb_device_id
[]
=
{
{
DEVICE_ID_HA_ON_OFF_SWITCH
,
DEVICE_ID_HA_ON_OFF_SWITCH_STRING
},
{
DEVICE_ID_HA_LEVEL_SWITCH
,
DEVICE_ID_HA_LEVEL_SWITCH_STRING
},
{
DEVICE_ID_HA_ON_OFF_OUTPUT
,
DEVICE_ID_HA_ON_OFF_OUTPUT_STRING
},
{
DEVICE_ID_HA_LEVEL_OUTPUT
,
DEVICE_ID_HA_LEVEL_OUTPUT_STRING
},
{
DEVICE_ID_HA_SCENE_SELECTOR
,
DEVICE_ID_HA_SCENE_SELECTOR_STRING
},
{
DEVICE_ID_HA_CONFIGURATION_TOOL
,
DEVICE_ID_HA_CONFIGURATION_TOOL_STRING
},
{
DEVICE_ID_HA_REMOTE_CONTROL
,
DEVICE_ID_HA_REMOTE_CONTROL_STRING
},
{
DEVICE_ID_HA_COMBINED_INTERFACE
,
DEVICE_ID_HA_COMBINED_INTERFACE_STRING
},
{
DEVICE_ID_HA_RANGE_EXTENDER
,
DEVICE_ID_HA_RANGE_EXTENDER_STRING
},
{
DEVICE_ID_HA_MAINS_POWER_OUTLET
,
DEVICE_ID_HA_MAINS_POWER_OUTLET_STRING
},
{
DEVICE_ID_HA_DOOR_LOCK
,
DEVICE_ID_HA_DOOR_LOCK_STRING
},
{
DEVICE_ID_HA_DOOR_LOCK_CONTROLER
,
DEVICE_ID_HA_DOOR_LOCK_CONTROLER_STRING
},
{
DEVICE_ID_HA_SIMPLE_SENSOR
,
DEVICE_ID_HA_SIMPLE_SENSOR_STRING
},
{
DEVICE_ID_HA_CONSUMPTION_AWARE
,
DEVICE_ID_HA_CONSUMPTION_AWARE_STRING
},
{
DEVICE_ID_HA_HOME_GATEWAY
,
DEVICE_ID_HA_HOME_GATEWAY_STRING
},
{
DEVICE_ID_HA_SMART_PLUG
,
DEVICE_ID_HA_SMART_PLUG_STRING
},
{
DEVICE_ID_HA_WHITE_GOODS
,
DEVICE_ID_HA_WHITE_GOODS_STRING
},
{
DEVICE_ID_HA_METER_INTERFACE
,
DEVICE_ID_HA_METER_INTERFACE_STRING
},
{
DEVICE_ID_HA_ON_OFF_LIGHT
,
DEVICE_ID_HA_ON_OFF_LIGHT_STRING
},
{
DEVICE_ID_HA_DIMMABLE_LIGHT
,
DEVICE_ID_HA_DIMMABLE_LIGHT_STRING
},
{
DEVICE_ID_HA_COLOR_DIMMABLE_LIGHT
,
DEVICE_ID_HA_COLOR_DIMMABLE_LIGHT_STRING
},
{
DEVICE_ID_HA_ON_OFF_LIGHT_SWITCH
,
DEVICE_ID_HA_ON_OFF_LIGHT_SWITCH_STRING
},
{
DEVICE_ID_HA_DIMMER_SWITCH
,
DEVICE_ID_HA_DIMMER_SWITCH_STRING
},
{
DEVICE_ID_HA_COLOR_DIMMAER_SWITCH
,
DEVICE_ID_HA_COLOR_DIMMAER_SWITCH_STRING
},
{
DEVICE_ID_HA_LIGHT_SENSOR
,
DEVICE_ID_HA_LIGHT_SENSOR_STRING
},
{
DEVICE_ID_HA_OCCUPANCY_SENSOR
,
DEVICE_ID_HA_OCCUPANCY_SENSOR_STRING
},
{
DEVICE_ID_HA_SHADE
,
DEVICE_ID_HA_SHADE_STRING
},
{
DEVICE_ID_HA_SHADE_CONTROL
,
DEVICE_ID_HA_SHADE_CONTROL_STRING
},
{
DEVICE_ID_HA_WINDOW_COVERING_DEVICE
,
DEVICE_ID_HA_WINDOW_COVERING_DEVICE_STRING
},
{
DEVICE_ID_HA_WINDOW_COVERING_CONTROL
,
DEVICE_ID_HA_WINDOW_COVERING_CONTROL_STRING
},
{
DEVICE_ID_HA_HEATING_COOLING_UNIT
,
DEVICE_ID_HA_HEATING_COOLING_UNIT_STRING
},
{
DEVICE_ID_HA_THERMOSTAT
,
DEVICE_ID_HA_THERMOSTAT_STRING
},
{
DEVICE_ID_HA_TEMPERATURE_SENSOR
,
DEVICE_ID_HA_TEMPERATURE_SENSOR_STRING
},
{
DEVICE_ID_HA_PUMP
,
DEVICE_ID_HA_PUMP_STRING
},
{
DEVICE_ID_HA_PUMP_CONTROL
,
DEVICE_ID_HA_PUMP_CONTROL_STRING
},
{
DEVICE_ID_HA_PRESSURE_SENSOR
,
DEVICE_ID_HA_PRESSURE_SENSOR_STRING
},
{
DEVICE_ID_HA_FLOW_SENSOR
,
DEVICE_ID_HA_FLOW_SENSOR_STRING
},
{
DEVICE_ID_HA_MINI_SPLIT_AC
,
DEVICE_ID_HA_MINI_SPLIT_AC_STRING
},
{
DEVICE_ID_HA_IAS_CIE
,
DEVICE_ID_HA_IAS_CIE_STRING
},
{
DEVICE_ID_HA_IAS_ACE
,
DEVICE_ID_HA_IAS_ACE_STRING
},
{
DEVICE_ID_HA_IAS_ZONE
,
DEVICE_ID_HA_IAS_ZONE_STRING
},
{
DEVICE_ID_HA_IAS_WARNING_DEVICE
,
DEVICE_ID_HA_IAS_WARNING_DEVICE_STRING
},
{
0xffff
,(
void
*
)
0
}
};
#else
zb_device_id_s
zb_device_id
[]
=
{
{
DEVICE_ID_HA_ON_OFF_SWITCH
},
{
DEVICE_ID_HA_LEVEL_SWITCH
},
{
DEVICE_ID_HA_ON_OFF_OUTPUT
},
{
DEVICE_ID_HA_LEVEL_OUTPUT
},
{
DEVICE_ID_HA_SCENE_SELECTOR
},
{
DEVICE_ID_HA_CONFIGURATION_TOOL
},
{
DEVICE_ID_HA_REMOTE_CONTROL
},
{
DEVICE_ID_HA_COMBINED_INTERFACE
},
{
DEVICE_ID_HA_RANGE_EXTENDER
},
{
DEVICE_ID_HA_MAINS_POWER_OUTLET
},
{
DEVICE_ID_HA_DOOR_LOCK
},
{
DEVICE_ID_HA_DOOR_LOCK_CONTROLER
},
{
DEVICE_ID_HA_SIMPLE_SENSOR
},
{
DEVICE_ID_HA_CONSUMPTION_AWARE
},
{
DEVICE_ID_HA_HOME_GATEWAY
},
{
DEVICE_ID_HA_SMART_PLUG
},
{
DEVICE_ID_HA_WHITE_GOODS
},
{
DEVICE_ID_HA_METER_INTERFACE
},
{
DEVICE_ID_HA_ON_OFF_LIGHT
},
{
DEVICE_ID_HA_DIMMABLE_LIGHT
},
{
DEVICE_ID_HA_COLOR_DIMMABLE_LIGHT
},
{
DEVICE_ID_HA_ON_OFF_LIGHT_SWITCH
},
{
DEVICE_ID_HA_DIMMER_SWITCH
},
{
DEVICE_ID_HA_COLOR_DIMMAER_SWITCH
},
{
DEVICE_ID_HA_LIGHT_SENSOR
},
{
DEVICE_ID_HA_OCCUPANCY_SENSOR
},
{
DEVICE_ID_HA_SHADE
},
{
DEVICE_ID_HA_SHADE_CONTROL
},
{
DEVICE_ID_HA_WINDOW_COVERING_DEVICE
},
{
DEVICE_ID_HA_WINDOW_COVERING_CONTROL
},
{
DEVICE_ID_HA_HEATING_COOLING_UNIT
},
{
DEVICE_ID_HA_THERMOSTAT
},
{
DEVICE_ID_HA_TEMPERATURE_SENSOR
},
{
DEVICE_ID_HA_PUMP
},
{
DEVICE_ID_HA_PUMP_CONTROL
},
{
DEVICE_ID_HA_PRESSURE_SENSOR
},
{
DEVICE_ID_HA_FLOW_SENSOR
},
{
DEVICE_ID_HA_MINI_SPLIT_AC
},
{
DEVICE_ID_HA_IAS_CIE
},
{
DEVICE_ID_HA_IAS_ACE
},
{
DEVICE_ID_HA_IAS_ZONE
},
{
DEVICE_ID_HA_IAS_WARNING_DEVICE
},
{
0xffff
}
}
#endif
platform/zigbee/app/builder/Z3GatewayHost/ZB/zb_device_id.h
0 → 100644
View file @
ea981073
#ifndef __ZB_DEVICE_ID_H
#define __ZB_DEVICE_ID_H
/****************** ******************************************************************
* File Name : zb_device_id.h
* Author : yjq
* data : 2020/09/01
*************************************************************************************/
#define ZIGBEE_DEVICE_ID_STRING_ENABLE
//Generic
#define DEVICE_ID_HA_ON_OFF_SWITCH 0x0000
#define DEVICE_ID_HA_LEVEL_SWITCH 0x0001
#define DEVICE_ID_HA_ON_OFF_OUTPUT 0x0002
#define DEVICE_ID_HA_LEVEL_OUTPUT 0x0003
#define DEVICE_ID_HA_SCENE_SELECTOR 0x0004
#define DEVICE_ID_HA_CONFIGURATION_TOOL 0x0005
#define DEVICE_ID_HA_REMOTE_CONTROL 0x0006
#define DEVICE_ID_HA_COMBINED_INTERFACE 0x0007
#define DEVICE_ID_HA_RANGE_EXTENDER 0x0008
#define DEVICE_ID_HA_MAINS_POWER_OUTLET 0x0009
#define DEVICE_ID_HA_DOOR_LOCK 0x000A
#define DEVICE_ID_HA_DOOR_LOCK_CONTROLER 0x000B
#define DEVICE_ID_HA_SIMPLE_SENSOR 0x000C
#define DEVICE_ID_HA_CONSUMPTION_AWARE 0x000D
#define DEVICE_ID_HA_HOME_GATEWAY 0x0050
#define DEVICE_ID_HA_SMART_PLUG 0x0051
#define DEVICE_ID_HA_WHITE_GOODS 0x0052
#define DEVICE_ID_HA_METER_INTERFACE 0x0053
//Lighting
#define DEVICE_ID_HA_ON_OFF_LIGHT 0x0100
#define DEVICE_ID_HA_DIMMABLE_LIGHT 0x0101
#define DEVICE_ID_HA_COLOR_DIMMABLE_LIGHT 0x0102
#define DEVICE_ID_HA_ON_OFF_LIGHT_SWITCH 0x0103
#define DEVICE_ID_HA_DIMMER_SWITCH 0x0104
#define DEVICE_ID_HA_COLOR_DIMMAER_SWITCH 0x0105
#define DEVICE_ID_HA_LIGHT_SENSOR 0x0106
#define DEVICE_ID_HA_OCCUPANCY_SENSOR 0x0107
//Closures
#define DEVICE_ID_HA_SHADE 0x0200
#define DEVICE_ID_HA_SHADE_CONTROL 0x0201
#define DEVICE_ID_HA_WINDOW_COVERING_DEVICE 0x0202
#define DEVICE_ID_HA_WINDOW_COVERING_CONTROL 0x0203
//HVAC
#define DEVICE_ID_HA_HEATING_COOLING_UNIT 0x0300
#define DEVICE_ID_HA_THERMOSTAT 0x0301
#define DEVICE_ID_HA_TEMPERATURE_SENSOR 0x0302
#define DEVICE_ID_HA_PUMP 0x0303
#define DEVICE_ID_HA_PUMP_CONTROL 0x0304
#define DEVICE_ID_HA_PRESSURE_SENSOR 0x0305
#define DEVICE_ID_HA_FLOW_SENSOR 0x0306
#define DEVICE_ID_HA_MINI_SPLIT_AC 0x0307
//IAS
#define DEVICE_ID_HA_IAS_CIE 0x0400
#define DEVICE_ID_HA_IAS_ACE 0x0401
#define DEVICE_ID_HA_IAS_ZONE 0x0402
#define DEVICE_ID_HA_IAS_WARNING_DEVICE 0x0403
/***********************device id string****************************************/
//{device id string define start
#ifdef ZIGBEE_DEVICE_ID_STRING_ENABLE
//Generic
#define DEVICE_ID_HA_ON_OFF_SWITCH_STRING "On/Off Switch"
#define DEVICE_ID_HA_LEVEL_SWITCH_STRING "Level Control Switch"
#define DEVICE_ID_HA_ON_OFF_OUTPUT_STRING "On/Off Output"
#define DEVICE_ID_HA_LEVEL_OUTPUT_STRING "Level Controllable Output"
#define DEVICE_ID_HA_SCENE_SELECTOR_STRING "Scene Selector"
#define DEVICE_ID_HA_CONFIGURATION_TOOL_STRING "Configuration Tool"
#define DEVICE_ID_HA_REMOTE_CONTROL_STRING "Remote Control"
#define DEVICE_ID_HA_COMBINED_INTERFACE_STRING "Combined Interface"
#define DEVICE_ID_HA_RANGE_EXTENDER_STRING "Range Extender"
#define DEVICE_ID_HA_MAINS_POWER_OUTLET_STRING "Mains Power Outlet"
#define DEVICE_ID_HA_DOOR_LOCK_STRING "Door Lock"
#define DEVICE_ID_HA_DOOR_LOCK_CONTROLER_STRING "Door Lock Controller"
#define DEVICE_ID_HA_SIMPLE_SENSOR_STRING "Simple Sensor"
#define DEVICE_ID_HA_CONSUMPTION_AWARE_STRING "Consumption Awareness Device"
#define DEVICE_ID_HA_HOME_GATEWAY_STRING "Home Gateway"
#define DEVICE_ID_HA_SMART_PLUG_STRING "Smart plug"
#define DEVICE_ID_HA_WHITE_GOODS_STRING "White Goods"
#define DEVICE_ID_HA_METER_INTERFACE_STRING "Meter Interface"
//Lighting
#define DEVICE_ID_HA_ON_OFF_LIGHT_STRING "On/Off Light"
#define DEVICE_ID_HA_DIMMABLE_LIGHT_STRING "Dimmable Light"
#define DEVICE_ID_HA_COLOR_DIMMABLE_LIGHT_STRING "Color Dimmable Light"
#define DEVICE_ID_HA_ON_OFF_LIGHT_SWITCH_STRING "On/Off Light Switch"
#define DEVICE_ID_HA_DIMMER_SWITCH_STRING "Dimmable Light"
#define DEVICE_ID_HA_COLOR_DIMMAER_SWITCH_STRING "Color Dimmable Light"
#define DEVICE_ID_HA_LIGHT_SENSOR_STRING "Light Sensor"
#define DEVICE_ID_HA_OCCUPANCY_SENSOR_STRING "Occupancy Sensor"
//Closures
#define DEVICE_ID_HA_SHADE_STRING "Shade"
#define DEVICE_ID_HA_SHADE_CONTROL_STRING "Shade Controller"
#define DEVICE_ID_HA_WINDOW_COVERING_DEVICE_STRING "Window Covering Device"
#define DEVICE_ID_HA_WINDOW_COVERING_CONTROL_STRING "Window Covering Controller"
//HVAC
#define DEVICE_ID_HA_HEATING_COOLING_UNIT_STRING "Heating/Cooling Unit"
#define DEVICE_ID_HA_THERMOSTAT_STRING "Thermostat"
#define DEVICE_ID_HA_TEMPERATURE_SENSOR_STRING "Temperature Sensor"
#define DEVICE_ID_HA_PUMP_STRING "Pump"
#define DEVICE_ID_HA_PUMP_CONTROL_STRING "Pump Control"
#define DEVICE_ID_HA_PRESSURE_SENSOR_STRING "Pressure Sensor"
#define DEVICE_ID_HA_FLOW_SENSOR_STRING "Flow Sensor"
#define DEVICE_ID_HA_MINI_SPLIT_AC_STRING "Mini Split AC"
//IAS
#define DEVICE_ID_HA_IAS_CIE_STRING "IAS Control and Indicating Equipment"
#define DEVICE_ID_HA_IAS_ACE_STRING "IAS Ancillary Control Equipment"
#define DEVICE_ID_HA_IAS_ZONE_STRING "IAS Zone"
#define DEVICE_ID_HA_IAS_WARNING_DEVICE_STRING "IAS Warning Device"
#endif
//}device id string define end
typedef
struct
{
unsigned
short
deviceId
;
#ifdef ZIGBEE_DEVICE_ID_STRING_ENABLE
char
*
deviceIdString
;
#endif
}
zb_device_id_s
;
extern
zb_device_id_s
zb_device_id
[];
#endif
platform/zigbee/app/builder/Z3GatewayHost/callback-stub.c
View file @
ea981073
...
...
@@ -799,15 +799,7 @@ void emberAfMainInitCallback(void)
{
}
/** @brief Main Tick
*
* Whenever main application tick is called, this callback will be called at the
* end of the main tick execution.
*
*/
void
emberAfMainTickCallback
(
void
)
{
}
/** @brief Scenes Cluster Make Invalid
*
...
...
@@ -1290,14 +1282,7 @@ void emberAfPluginDeviceTableIndexRemovedCallback(uint16_t currentIndex)
{
}
/*
*
* Called when the device table has been initialized.
*
*/
void
emberAfPluginDeviceTableInitialized
(
void
)
{
}
/** @brief Client Complete
*
...
...
platform/zigbee/app/builder/Z3GatewayHost/kk_test.c
View file @
ea981073
...
...
@@ -3,6 +3,7 @@
#include "kk_tsl_zigbee_map.h"
extern
kk_tsl_zigbee_map_t
g_tsl_zigbee_map
[];
extern
int
kk_get_map_Num
(
void
);
static
void
kk_rpc_send_message
(
cJSON
*
data
,
char
*
msgtype
,
char
*
method
,
EmberEUI64
mac
)
{
...
...
@@ -90,7 +91,17 @@ int kk_sendData2CCU(char* data, int len){
}
//void kk_dispatch_report_attribute(EmberEUI64 eui64, uint8_t EP, EmberAfClusterId clusterId, EmberAfAttributeId attributeId, uint8_t dataType, uint8_t len, uint8_t * data);
void
kk_rpc_reportDevices
(
EmberEUI64
mac
)
{
...
...
@@ -632,6 +643,17 @@ int kk_report_windowCovering_position_attribute(EmberEUI64 eui64,uint8_t EP,Embe
return
-
3
;
}
void
emberAfMainTickCallback
(
void
)
{
static
int
last_time
;
int
time
=
halCommonGetInt32uMillisecondTick
();
if
((
time
-
last_time
)
>=
3000
){
last_time
=
time
;
//printf("loop 3 test!\n");
}
}
void
kk_dispatch_report_attribute
(
EmberEUI64
eui64
,
uint8_t
EP
,
...
...
@@ -644,9 +666,14 @@ void kk_dispatch_report_attribute(EmberEUI64 eui64,
emberAfAppPrintln
(
"kk_dispatch_report_attribute"
);
int
i
,
j
,
result
;
int
map_num
,
property_num
;
kk_tsl_zigbee_map_t
*
device_item
;
kk_zigbee_ctrl_map_t
*
report_item
;
for
(
i
=
0
;
i
<
PROPERTIES_MAX_NUM
;
i
++
){
map_num
=
kk_get_map_Num
();
emberAfAppPrintln
(
"map_num=%d"
,
map_num
);
for
(
i
=
0
;
i
<
map_num
;
i
++
){
emberAfAppPrintln
(
"i=%d"
,
i
);
device_item
=
&
g_tsl_zigbee_map
[
i
];
if
(
device_item
!=
NULL
){
report_item
=
&
device_item
->
zigbee_ctrl
;
...
...
@@ -658,11 +685,12 @@ void kk_dispatch_report_attribute(EmberEUI64 eui64,
emberAfAppPrintln
(
"not find in map table-1"
);
return
;
}
for
(
j
=
0
;
j
<
device_item
->
num
;
j
++
){
property_num
=
(
device_item
->
num
>
PROPERTIES_MAX_NUM
)
?
PROPERTIES_MAX_NUM
:
device_item
->
num
;
for
(
j
=
0
;
j
<
property_num
;
j
++
){
emberAfAppPrintln
(
"i=%d,j=%d,num=%d"
,
i
,
j
,
device_item
->
num
);
if
(
report_item
[
j
].
clusterId
==
clusterId
&&
report_item
[
j
].
attributeId
==
attributeId
){
emberAfAppPrintln
(
"i=%d,j=%d"
,
i
,
j
);
if
(
report_item
[
j
].
zigbee_report
!=
NULL
){
result
=
report_item
[
j
].
zigbee_report
(
eui64
,
EP
,
clusterId
,
attributeId
,
dataType
,
len
,
data
);
if
(
!
result
){
...
...
platform/zigbee/app/builder/Z3GatewayHost/kk_test.h
View file @
ea981073
...
...
@@ -5,7 +5,8 @@
#include "network-creator-security.h"
#include "RPC_API.h"
#include "com_api.h"
#include "zb_device_id.h"
#include "kk_device_manager.h"
#define KK_REPORT_DEVICE_JOINED_TYPE "/thing/topo/add"
#define KK_REPORT_DEVICE_LEFT_TYPE "/thing/topo/delete"
...
...
@@ -92,4 +93,7 @@ enum {
#endif
platform/zigbee/app/builder/Z3GatewayHost/kk_tsl_zigbee_map.c
View file @
ea981073
...
...
@@ -39,6 +39,10 @@ int kk_get_Identity_Num(int index)
{
return
g_tsl_zigbee_map
[
index
].
num
;
}
int
kk_get_map_Num
(
void
)
{
return
sizeof
(
g_tsl_zigbee_map
)
/
sizeof
(
kk_tsl_zigbee_map_t
);
}
platform/zigbee/app/builder/Z3GatewayHost/yjq_ezsp.c
View file @
ea981073
...
...
@@ -86,6 +86,10 @@ void kk_read_ncp_configuration_without_memory_allocation(void)
}
extern
void
kk_print_device_table
(
void
);
extern
void
kk_device_table_add
(
EmberEUI64
mac
,
uint8_t
epNum
,
uint8_t
*
epVal
,
char
*
productCode
);
extern
void
kk_device_table_delete
(
EmberEUI64
mac
);
extern
bool
kk_device_find_by_mac11111
(
EmberEUI64
mac
);
void
kk_message_process
(
char
*
messageString
)
{
...
...
@@ -97,7 +101,35 @@ void kk_message_process(char *messageString)
emberAfAppPrint
(
"set txpower = 10
\r\n
"
);
setTxPower
(
10
);
}
if
(
MEMCOMPARE
(
messageString
,
"AT+123
\r\n
"
,
len
)
==
0
){
kk_print_device_table
();
}
if
(
MEMCOMPARE
(
messageString
,
"AT+KKTEST1
\r\n
"
,
len
)
==
0
){
uint8_t
ep
[
2
]
=
{
1
,
242
};
static
uint8_t
aaa
=
0x00
;
EmberEUI64
mac
=
{
0x00
,
0x11
,
0x22
,
0x33
,
0x44
,
0x55
,
0x66
,
0x77
};
mac
[
0
]
=++
aaa
;
kk_device_table_add
(
mac
,
2
,
ep
,
"24"
);
}
if
(
MEMCOMPARE
(
messageString
,
"AT+456
\r\n
"
,
len
)
==
0
){
uint8_t
ep
[
2
]
=
{
1
,
242
};
static
uint8_t
aaa
=
0x01
;
EmberEUI64
mac
=
{
0x00
,
0x11
,
0x22
,
0x33
,
0x44
,
0x55
,
0x66
,
0x77
};
mac
[
0
]
=
aaa
++%
5
;
kk_device_table_delete
(
mac
);
}
if
(
MEMCOMPARE
(
messageString
,
"AT+678
\r\n
"
,
len
)
==
0
){
uint8_t
ep
[
2
]
=
{
1
,
242
};
EmberEUI64
mac
=
{
0x01
,
0x11
,
0x22
,
0x33
,
0x44
,
0x55
,
0x66
,
0x77
};
if
(
kk_device_find_by_mac11111
(
mac
)
==
true
){
emberAfAppPrint
(
" Exist!!!
\r\n
"
);
}
else
{
emberAfAppPrint
(
" not Exist!!!
\r\n
"
);
}
}
if
(
MEMCOMPARE
(
messageString
,
"AT+GETINFO
\r\n
"
,
len
)
==
0
){
emberAfAppPrint
(
"
\r\n
MAC Address = "
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment