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
fda1de55
Commit
fda1de55
authored
Sep 07, 2020
by
尹佳钦
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://172.17.3.10:17001/chenweican/k-sdk
parents
326a6eec
af90a653
Changes
9
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
96 additions
and
125 deletions
+96
-125
midware/midware/midware.c
midware/midware/midware.c
+1
-1
platform/zigbee/app/builder/Z3GatewayHost/ZB/kk_device_manager.c
...m/zigbee/app/builder/Z3GatewayHost/ZB/kk_device_manager.c
+10
-3
platform/zigbee/app/builder/Z3GatewayHost/ZB/kk_device_manager.h
...m/zigbee/app/builder/Z3GatewayHost/ZB/kk_device_manager.h
+1
-1
platform/zigbee/app/builder/Z3GatewayHost/ZB/kk_tsl_property_report.c
...bee/app/builder/Z3GatewayHost/ZB/kk_tsl_property_report.c
+21
-2
platform/zigbee/app/builder/Z3GatewayHost/ZB/kk_tsl_property_set.c
...zigbee/app/builder/Z3GatewayHost/ZB/kk_tsl_property_set.c
+3
-3
platform/zigbee/app/builder/Z3GatewayHost/kk_sub_tsl.c
platform/zigbee/app/builder/Z3GatewayHost/kk_sub_tsl.c
+33
-85
platform/zigbee/app/builder/Z3GatewayHost/kk_sub_tsl.h
platform/zigbee/app/builder/Z3GatewayHost/kk_sub_tsl.h
+1
-2
platform/zigbee/app/builder/Z3GatewayHost/kk_test.c
platform/zigbee/app/builder/Z3GatewayHost/kk_test.c
+26
-27
platform/zigbee/app/builder/Z3GatewayHost/kk_test.h
platform/zigbee/app/builder/Z3GatewayHost/kk_test.h
+0
-1
No files found.
midware/midware/midware.c
View file @
fda1de55
...
@@ -136,7 +136,7 @@ void mid2p_cb(void* data, int len, char* chalMark){
...
@@ -136,7 +136,7 @@ void mid2p_cb(void* data, int len, char* chalMark){
queue_msg
->
data
=
buf
;
queue_msg
->
data
=
buf
;
memset
(
queue_msg
->
chalMark
,
0
,
sizeof
(
queue_msg
->
chalMark
));
memset
(
queue_msg
->
chalMark
,
0
,
sizeof
(
queue_msg
->
chalMark
));
if
(
chalMark
!=
NULL
){
if
(
chalMark
!=
NULL
){
memcpy
(
queue_msg
->
chalMark
,
chalMark
,
s
izeof
(
chalMark
));
memcpy
(
queue_msg
->
chalMark
,
chalMark
,
s
trlen
(
chalMark
));
}
}
res
=
dm_queue_msg_insert2
((
void
*
)
queue_msg
);
res
=
dm_queue_msg_insert2
((
void
*
)
queue_msg
);
if
(
res
!=
SUCCESS_RETURN
)
{
if
(
res
!=
SUCCESS_RETURN
)
{
...
...
platform/zigbee/app/builder/Z3GatewayHost/ZB/kk_device_manager.c
View file @
fda1de55
...
@@ -70,7 +70,8 @@ static void kk_device_fill(kk_device_table_s *ptr,EmberEUI64 mac,EmberNodeId nod
...
@@ -70,7 +70,8 @@ static void kk_device_fill(kk_device_table_s *ptr,EmberEUI64 mac,EmberNodeId nod
ptr
->
deviceId
=
deviceId
;
ptr
->
deviceId
=
deviceId
;
ptr
->
identifyCnt
=
KK_MAX_READ_MODLE_ID_COUNT
;
ptr
->
identifyCnt
=
KK_MAX_READ_MODLE_ID_COUNT
;
ptr
->
productCode
=
productCode
;
memcpy
(
ptr
->
productCode
,
productCode
,
strlen
(
productCode
));
}
}
kk_device_table_s
*
kk_device_find_by_mac
(
EmberEUI64
mac
)
kk_device_table_s
*
kk_device_find_by_mac
(
EmberEUI64
mac
)
...
@@ -120,6 +121,7 @@ void kk_device_table_add(EmberEUI64 mac,EmberNodeId nodeId,const char *productCo
...
@@ -120,6 +121,7 @@ void kk_device_table_add(EmberEUI64 mac,EmberNodeId nodeId,const char *productCo
UTIL_LOG_INFO
(
"
\n
********************kk device table add********************
\n
"
);
UTIL_LOG_INFO
(
"
\n
********************kk device table add********************
\n
"
);
emberAfAppPrint
(
"mac:"
);
emberAfAppPrint
(
"mac:"
);
emberAfPrintBigEndianEui64
(
mac
);
emberAfPrintBigEndianEui64
(
mac
);
kk_sub_tsl_add
(
mac
,
productCode
);
if
(
kk_device_find_by_node
(
nodeId
)
!=
NULL
){
if
(
kk_device_find_by_node
(
nodeId
)
!=
NULL
){
emberAfAppPrintln
(
" is already in device table!!!"
);
emberAfAppPrintln
(
" is already in device table!!!"
);
return
;
return
;
...
@@ -368,6 +370,7 @@ static void kk_device_modle_id_identify(EmberNodeId nodeId,
...
@@ -368,6 +370,7 @@ static void kk_device_modle_id_identify(EmberNodeId nodeId,
kk_device_table_s
*
ptr
=
kk_zb_device_table
;
kk_device_table_s
*
ptr
=
kk_zb_device_table
;
EmberEUI64
eui64
;
EmberEUI64
eui64
;
uint8_t
modelID
[
33
]
=
{
0
};
uint8_t
modelID
[
33
]
=
{
0
};
char
*
pCode
=
NULL
;
while
(
ptr
!=
NULL
){
while
(
ptr
!=
NULL
){
if
(
ptr
->
nodeId
==
nodeId
){
if
(
ptr
->
nodeId
==
nodeId
){
emberAfCorePrintln
(
"[match tsl]node:0x%04X,status:0x%02x,dataType:0x%02x"
,
nodeId
,
status
,
dataType
);
emberAfCorePrintln
(
"[match tsl]node:0x%04X,status:0x%02x,dataType:0x%02x"
,
nodeId
,
status
,
dataType
);
...
@@ -378,8 +381,12 @@ static void kk_device_modle_id_identify(EmberNodeId nodeId,
...
@@ -378,8 +381,12 @@ static void kk_device_modle_id_identify(EmberNodeId nodeId,
emberAfCorePrintln
(
"[warring]modle id size = %d,max = 32!!!"
);
emberAfCorePrintln
(
"[warring]modle id size = %d,max = 32!!!"
);
}
}
memcpy
(
modelID
,
data
,
dataSize
);
memcpy
(
modelID
,
data
,
dataSize
);
pCode
=
kk_match_tsl_productCode
(
modelID
);
ptr
->
productCode
=
kk_match_tsl_productCode
(
modelID
);
if
(
pCode
==
NULL
){
emberAfCorePrintln
(
"not match pCode!!!"
);
return
;
}
memcpy
(
ptr
->
productCode
,
pCode
,
strlen
(
pCode
));
if
(
ptr
->
productCode
!=
NULL
){
if
(
ptr
->
productCode
!=
NULL
){
if
(
emberAfDeviceTableGetEui64FromNodeId
(
ptr
->
nodeId
,
eui64
)){
if
(
emberAfDeviceTableGetEui64FromNodeId
(
ptr
->
nodeId
,
eui64
)){
kk_rpc_reportDevices
(
eui64
,
ptr
->
productCode
);
kk_rpc_reportDevices
(
eui64
,
ptr
->
productCode
);
...
...
platform/zigbee/app/builder/Z3GatewayHost/ZB/kk_device_manager.h
View file @
fda1de55
...
@@ -15,7 +15,7 @@ typedef struct kk_device_table_s{
...
@@ -15,7 +15,7 @@ typedef struct kk_device_table_s{
EmberNodeId
nodeId
;
EmberNodeId
nodeId
;
uint16_t
deviceId
;
uint16_t
deviceId
;
uint16_t
identifyCnt
;
uint16_t
identifyCnt
;
char
*
productCode
;
char
productCode
[
33
]
;
struct
kk_device_table_s
*
next
;
struct
kk_device_table_s
*
next
;
}
kk_device_table_s
;
}
kk_device_table_s
;
#define KK_MAX_SUPPORT_ENDPOINT_NUMBER 32
#define KK_MAX_SUPPORT_ENDPOINT_NUMBER 32
...
...
platform/zigbee/app/builder/Z3GatewayHost/ZB/kk_tsl_property_report.c
View file @
fda1de55
...
@@ -53,11 +53,12 @@ void kk_tsl_report_attribute(EmberEUI64 eui64,
...
@@ -53,11 +53,12 @@ void kk_tsl_report_attribute(EmberEUI64 eui64,
uint8_t
*
data
)
uint8_t
*
data
)
{
{
int
i
,
j
,
num
,
status
;
int
i
,
j
,
num
,
status
;
char
macString
[
19
]
=
{
0
};
sub_dev_node_t
*
node
=
NULL
;
int
res
=
0
;
UTIL_LOG_INFO
(
"
\n
********************kk tsl report attribute********************
\n
"
);
UTIL_LOG_INFO
(
"
\n
********************kk tsl report attribute********************
\n
"
);
emberAfDebugPrint
(
"mac:"
);
emberAfDebugPrint
(
"mac:"
);
emberAfGetEui64
(
eui64
);
emberAfPrintBigEndianEui64
(
eui64
);
emberAfDebugPrintln
(
",ep:%d,clu:0x%04X,attr:0x%04X,dataType=0x%02x,len=%d,data:"
,
emberAfDebugPrintln
(
",ep:%d,clu:0x%04X,attr:0x%04X,dataType=0x%02x,len=%d,data:"
,
EP
,
clusterId
,
attributeId
,
dataType
,
len
);
EP
,
clusterId
,
attributeId
,
dataType
,
len
);
emberAfDebugPrintBuffer
(
data
,
len
,
true
);
emberAfDebugPrintBuffer
(
data
,
len
,
true
);
...
@@ -72,6 +73,24 @@ void kk_tsl_report_attribute(EmberEUI64 eui64,
...
@@ -72,6 +73,24 @@ void kk_tsl_report_attribute(EmberEUI64 eui64,
return
;
return
;
}
}
}
}
rpc_eui64ToString
(
eui64
,
macString
);
res
=
kk_sub_tsl_get_device_by_mac
(
macString
,
&
node
);
if
(
res
!=
tsl_rpt_success
){
emberAfAppPrintln
(
"[kk_tsl_report_attribute] error~~~~~~~~~
\n
"
);
return
;
}
num
=
kk_get_tsl_glb_num
();
for
(
i
=
0
;
i
<
num
;
i
++
){
if
(
g_tsl_zigbee_map_glb
[
i
].
map
.
clusterId
==
clusterId
&&
g_tsl_zigbee_map_glb
[
i
].
map
.
attributeId
==
attributeId
&&
strncmp
(
node
->
productCode
,
g_tsl_zigbee_map_glb
[
i
].
ProductCode
,
strlen
(
node
->
productCode
))
==
0
&&
g_tsl_zigbee_map_glb
[
i
].
map
.
zigbee_report
!=
NULL
){
status
=
g_tsl_zigbee_map_glb
[
i
].
map
.
zigbee_report
(
eui64
,
EP
,
clusterId
,
attributeId
,
dataType
,
len
,
data
);
emberAfDebugPrintln
(
"--report status:%s"
,
kk_tsl_rpt_status_string
[
status
]);
return
;
}
}
}
}
...
...
platform/zigbee/app/builder/Z3GatewayHost/ZB/kk_tsl_property_set.c
View file @
fda1de55
...
@@ -38,7 +38,7 @@ cJSON *kk_tsl_property_operation(jrpc_context * ctx, cJSON *params, cJSON *id,cJ
...
@@ -38,7 +38,7 @@ cJSON *kk_tsl_property_operation(jrpc_context * ctx, cJSON *params, cJSON *id,cJ
break
;
break
;
}
}
}
}
if
(
findFlag
==
false
){
if
(
findFlag
==
0xff
){
num
=
kk_get_tsl_glb_num
();
num
=
kk_get_tsl_glb_num
();
for
(
index
=
0
;
index
<
num
;
index
++
){
for
(
index
=
0
;
index
<
num
;
index
++
){
propertyItem
=
rpc_cJSON_GetObjectItem
(
params
,
g_tsl_zigbee_map_glb
[
index
].
map
.
Identity
);
propertyItem
=
rpc_cJSON_GetObjectItem
(
params
,
g_tsl_zigbee_map_glb
[
index
].
map
.
Identity
);
...
@@ -68,9 +68,9 @@ cJSON *kk_tsl_property_operation(jrpc_context * ctx, cJSON *params, cJSON *id,cJ
...
@@ -68,9 +68,9 @@ cJSON *kk_tsl_property_operation(jrpc_context * ctx, cJSON *params, cJSON *id,cJ
emberAfPrintBigEndianEui64
(
eui64
);
emberAfPrintBigEndianEui64
(
eui64
);
emberAfDebugPrintln
(
",node:0x%04X"
,
nodeId
);
emberAfDebugPrintln
(
",node:0x%04X"
,
nodeId
);
if
(
findFlag
==
1
)
if
(
findFlag
==
1
)
res
=
g_tsl_zigbee_map
[
index
].
zigbee_set
(
ctx
,
mac
->
valuestring
,
g_tsl_zigbee_map
[
index
].
endpoint
,
&
value
);
res
=
g_tsl_zigbee_map
[
index
].
zigbee_set
(
ctx
,
nodeId
,
g_tsl_zigbee_map
[
index
].
endpoint
,
&
value
);
else
if
(
findFlag
==
2
)
else
if
(
findFlag
==
2
)
res
=
g_tsl_zigbee_map_glb
[
index
].
map
.
zigbee_set
(
ctx
,
mac
->
valuestring
,
g_tsl_zigbee_map
[
index
]
.
endpoint
,
&
value
);
res
=
g_tsl_zigbee_map_glb
[
index
].
map
.
zigbee_set
(
ctx
,
nodeId
,
g_tsl_zigbee_map_glb
[
index
].
map
.
endpoint
,
&
value
);
if
(
res
<
0
)
if
(
res
<
0
)
{
{
...
...
platform/zigbee/app/builder/Z3GatewayHost/kk_sub_tsl.c
View file @
fda1de55
...
@@ -14,71 +14,12 @@ static kk_sub_dev_ctx_t * _sub_dev_get_ctx(void)
...
@@ -14,71 +14,12 @@ static kk_sub_dev_ctx_t * _sub_dev_get_ctx(void)
{
{
return
&
g_sub_dev_mgr
;
return
&
g_sub_dev_mgr
;
}
}
static
void
*
_sub_MutexCreate
(
void
)
{
int
err_num
;
pthread_mutex_t
*
mutex
=
(
pthread_mutex_t
*
)
malloc
(
sizeof
(
pthread_mutex_t
));
if
(
NULL
==
mutex
)
{
return
NULL
;
}
if
(
0
!=
(
err_num
=
pthread_mutex_init
(
mutex
,
NULL
)))
{
printf
(
"create mutex failed
\n
"
);
free
(
mutex
);
return
NULL
;
}
return
mutex
;
}
static
void
_sub_MutexLock
(
void
*
mutex
)
{
int
err_num
;
if
(
0
!=
(
err_num
=
pthread_mutex_lock
((
pthread_mutex_t
*
)
mutex
)))
{
printf
(
"lock mutex failed: - '%s' (%d)
\n
"
,
strerror
(
err_num
),
err_num
);
}
}
static
void
_sub_MutexUnLock
(
void
*
mutex
)
{
int
err_num
;
if
(
0
!=
(
err_num
=
pthread_mutex_unlock
((
pthread_mutex_t
*
)
mutex
)))
{
printf
(
"unlock mutex failed - '%s' (%d)
\n
"
,
strerror
(
err_num
),
err_num
);
}
}
static
void
_sub_MutexDestroy
(
void
*
mutex
)
{
int
err_num
;
if
(
!
mutex
)
{
printf
(
"mutex want to destroy is NULL!
\n
"
);
return
;
}
if
(
0
!=
(
err_num
=
pthread_mutex_destroy
((
pthread_mutex_t
*
)
mutex
)))
{
printf
(
"destroy mutex failed
\n
"
);
}
free
(
mutex
);
}
static
int
_sub_tsl_next_devid
(
void
)
{
kk_sub_dev_ctx_t
*
ctx
=
_sub_dev_get_ctx
();
return
ctx
->
sub_devid
++
;
}
static
void
_sub_dev_mutex_lock
(
void
)
static
void
_sub_dev_mutex_lock
(
void
)
{
{
kk_sub_dev_ctx_t
*
ctx
=
_sub_dev_get_ctx
();
kk_sub_dev_ctx_t
*
ctx
=
_sub_dev_get_ctx
();
if
(
ctx
->
mutex
)
{
if
(
ctx
->
mutex
)
{
_sub
_MutexLock
(
ctx
->
mutex
);
HAL
_MutexLock
(
ctx
->
mutex
);
}
}
}
}
...
@@ -86,26 +27,43 @@ static void _sub_dev_mutex_unlock(void)
...
@@ -86,26 +27,43 @@ static void _sub_dev_mutex_unlock(void)
{
{
kk_sub_dev_ctx_t
*
ctx
=
_sub_dev_get_ctx
();
kk_sub_dev_ctx_t
*
ctx
=
_sub_dev_get_ctx
();
if
(
ctx
->
mutex
)
{
if
(
ctx
->
mutex
)
{
_sub_MutexUnL
ock
(
ctx
->
mutex
);
HAL_MutexUnl
ock
(
ctx
->
mutex
);
}
}
}
}
int
kk_tsl_init
(
void
)
int
kk_tsl_init
(
EmberEUI64
mac
)
{
{
int
res
=
0
;
int
res
=
0
;
EmberEUI64
testMac
=
{
0x88
,
0x77
,
0x66
,
0x55
,
0x44
,
0x33
,
0x22
,
0x11
};
kk_sub_dev_ctx_t
*
ctx
=
_sub_dev_get_ctx
();
kk_sub_dev_ctx_t
*
ctx
=
_sub_dev_get_ctx
();
ctx
->
mutex
=
_sub
_MutexCreate
();
ctx
->
mutex
=
HAL
_MutexCreate
();
if
(
ctx
->
mutex
==
NULL
)
{
if
(
ctx
->
mutex
==
NULL
)
{
return
FAIL_RETURN
;
return
FAIL_RETURN
;
}
}
ctx
->
sub_devid
=
1
;
ctx
->
sub_devid
=
1
;
INIT_LIST_HEAD
(
&
ctx
->
dev_list
);
INIT_LIST_HEAD
(
&
ctx
->
dev_list
);
kk_sub_tsl_add
(
testMac
,
"2"
);
kk_sub_tsl_add
(
mac
,
"2"
);
//usleep(1000000);
//usleep(1000000);
//kk_test();
//kk_test();
return
SUCCESS_RETURN
;
return
SUCCESS_RETURN
;
}
}
static
int
_kk_tsl_check_exist
(
const
char
*
deviceCode
)
{
sub_dev_node_t
*
search_node
=
NULL
;
kk_sub_dev_ctx_t
*
ctx
=
_sub_dev_get_ctx
();
if
(
deviceCode
==
NULL
){
return
INVALID_PARAMETER
;
}
list_for_each_entry
(
search_node
,
&
ctx
->
dev_list
,
linked_list
,
sub_dev_node_t
)
{
if
(
(
strlen
(
search_node
->
deviceCode
)
==
strlen
(
deviceCode
))
&&
(
memcmp
(
search_node
->
deviceCode
,
deviceCode
,
strlen
(
deviceCode
))
==
0
))
{
/* dm_log_debug("Device Found, Product Key: %s, Device Name: %s", product_key, device_name); */
return
SUCCESS_RETURN
;
}
}
return
FAIL_RETURN
;
}
int
kk_sub_tsl_add
(
EmberEUI64
device_mac
,
const
char
*
productCode
)
int
kk_sub_tsl_add
(
EmberEUI64
device_mac
,
const
char
*
productCode
)
{
{
sub_dev_node_t
*
node
=
NULL
;
sub_dev_node_t
*
node
=
NULL
;
...
@@ -117,19 +75,19 @@ int kk_sub_tsl_add(EmberEUI64 device_mac,const char *productCode)
...
@@ -117,19 +75,19 @@ int kk_sub_tsl_add(EmberEUI64 device_mac,const char *productCode)
{
{
return
INVALID_PARAMETER
;
return
INVALID_PARAMETER
;
}
}
rpc_eui64ToString
(
device_mac
,
macString
);
rpc_eui64ToString
(
device_mac
,
macString
);
if
(
_kk_tsl_check_exist
(
device_mac
)
==
SUCCESS_RETURN
){
return
SUCCESS_RETURN
;
}
node
=
malloc
(
sizeof
(
sub_dev_node_t
));
node
=
malloc
(
sizeof
(
sub_dev_node_t
));
if
(
node
==
NULL
)
{
if
(
node
==
NULL
)
{
return
MEMORY_NOT_ENOUGH
;
return
MEMORY_NOT_ENOUGH
;
}
}
_sub_dev_mutex_lock
();
_sub_dev_mutex_lock
();
memset
(
node
,
0
,
sizeof
(
sub_dev_node_t
)
);
memset
(
node
,
0
,
sizeof
(
sub_dev_node_t
)
);
memcpy
(
node
->
device_mac
,
macString
,
strlen
(
macString
));
memcpy
(
node
->
deviceCode
,
macString
,
strlen
(
macString
));
memcpy
(
node
->
productCode
,
productCode
,
strlen
(
productCode
));
memcpy
(
node
->
productCode
,
productCode
,
strlen
(
productCode
));
node
->
devid
=
_sub_tsl_next_devid
();
INIT_LIST_HEAD
(
&
node
->
linked_list
);
INIT_LIST_HEAD
(
&
node
->
linked_list
);
list_add_tail
(
&
node
->
linked_list
,
&
ctx
->
dev_list
);
list_add_tail
(
&
node
->
linked_list
,
&
ctx
->
dev_list
);
...
@@ -159,32 +117,22 @@ int kk_sub_tsl_delete(EmberEUI64 device_mac)
...
@@ -159,32 +117,22 @@ int kk_sub_tsl_delete(EmberEUI64 device_mac)
return
SUCCESS_RETURN
;
return
SUCCESS_RETURN
;
}
}
int
kk_sub_tsl_get_device_by_mac
(
_IN_
c
har
device_mac
[
DEVICE_MAC_MAXLEN
]
,
_OU_
sub_dev_node_t
**
node
)
int
kk_sub_tsl_get_device_by_mac
(
_IN_
c
onst
char
*
deviceCode
,
_OU_
sub_dev_node_t
**
node
)
{
{
kk_sub_dev_ctx_t
*
ctx
=
_sub_dev_get_ctx
();
kk_sub_dev_ctx_t
*
ctx
=
_sub_dev_get_ctx
();
sub_dev_node_t
*
search_node
=
NULL
;
sub_dev_node_t
*
search_node
=
NULL
;
list_for_each_entry
(
search_node
,
&
ctx
->
dev_list
,
linked_list
,
sub_dev_node_t
)
{
list_for_each_entry
(
search_node
,
&
ctx
->
dev_list
,
linked_list
,
sub_dev_node_t
)
{
if
((
strlen
(
search_node
->
device
_mac
)
==
strlen
(
device_mac
))
&&
if
((
strlen
(
search_node
->
device
Code
)
==
strlen
(
deviceCode
))
&&
(
memcmp
(
search_node
->
device
_mac
,
device_mac
,
strlen
(
device_mac
))
==
0
))
{
(
memcmp
(
search_node
->
device
Code
,
deviceCode
,
strlen
(
deviceCode
))
==
0
))
{
if
(
node
)
{
if
(
node
)
{
*
node
=
search_node
;
*
node
=
search_node
;
}
}
_sub_dev_mutex_unlock
();
return
SUCCESS_RETURN
;
return
SUCCESS_RETURN
;
}
}
}
}
printf
(
"Device Not Found, device_mac: %s
\n
"
,
device
_mac
);
printf
(
"Device Not Found, device_mac: %s
\n
"
,
device
Code
);
return
FAIL_RETURN
;
return
FAIL_RETURN
;
}
}
int
kk_test
(
void
)
{
printf
(
"[%s][%d]
\n
"
,
__FUNCTION__
,
__LINE__
);
//kk_test_fuc("112233445566",DM_MSG_REQUEST);
//kk_get_Identity_Num(0);
return
0
;
}
platform/zigbee/app/builder/Z3GatewayHost/kk_sub_tsl.h
View file @
fda1de55
...
@@ -4,9 +4,8 @@
...
@@ -4,9 +4,8 @@
#include "klist.h"
#include "klist.h"
typedef
struct
{
typedef
struct
{
int
devid
;
char
productCode
[
PRODUCT_TYPE_MAXLEN
];
char
productCode
[
PRODUCT_TYPE_MAXLEN
];
char
device
_mac
[
DEVICE_MAC
_MAXLEN
];
char
device
Code
[
DEVICE_CODE
_MAXLEN
];
struct
list_head
linked_list
;
struct
list_head
linked_list
;
}
sub_dev_node_t
;
}
sub_dev_node_t
;
...
...
platform/zigbee/app/builder/Z3GatewayHost/kk_test.c
View file @
fda1de55
...
@@ -10,13 +10,20 @@ static void kk_rpc_send_message(cJSON *data,char *msgtype,char *method,EmberEUI6
...
@@ -10,13 +10,20 @@ static void kk_rpc_send_message(cJSON *data,char *msgtype,char *method,EmberEUI6
static
uint16_t
msgid
;
static
uint16_t
msgid
;
char
msgIdString
[
10
]
=
{
0
};
char
msgIdString
[
10
]
=
{
0
};
char
macString
[
19
]
=
{
0
};
char
macString
[
19
]
=
{
0
};
sub_dev_node_t
*
node
=
NULL
;
int
res
=
0
;
rpc_eui64ToString
(
mac
,
macString
);
res
=
kk_sub_tsl_get_device_by_mac
(
macString
,
&
node
);
if
(
res
!=
SUCCESS_RETURN
)
{
printf
(
"[%s][%d]kk_rpc_send_message error!!!
\n
"
,
__FUNCTION__
,
__LINE__
);
return
;
}
cJSON
*
info
=
rpc_cJSON_CreateObject
();
cJSON
*
info
=
rpc_cJSON_CreateObject
();
if
(
info
!=
NULL
){
if
(
info
!=
NULL
){
rpc_cJSON_AddStringToObject
(
info
,
"msgType"
,
msgtype
);
rpc_cJSON_AddStringToObject
(
info
,
"msgType"
,
msgtype
);
rpc_cJSON_AddStringToObject
(
info
,
"productCode"
,
"2"
);
rpc_cJSON_AddStringToObject
(
info
,
"productCode"
,
node
->
productCode
);
rpc_eui64ToString
(
mac
,
macString
);
rpc_cJSON_AddStringToObject
(
info
,
"deviceCode"
,
macString
);
rpc_cJSON_AddStringToObject
(
info
,
"deviceCode"
,
macString
);
}
}
cJSON
*
payload
=
rpc_cJSON_CreateObject
();
cJSON
*
payload
=
rpc_cJSON_CreateObject
();
...
@@ -66,19 +73,22 @@ typedef struct{
...
@@ -66,19 +73,22 @@ typedef struct{
void
kk_rpc_reportLeftDevices
(
EmberEUI64
mac
)
void
kk_rpc_reportLeftDevices
(
EmberEUI64
mac
)
{
{
cJSON
*
devicesJson
;
cJSON
*
devicesJson
;
//EmberEUI64 testMac = {0x4A,0x83,0xD3,0xFE,0xFF,0x81,0x8E,0x58};
EmberEUI64
testMac_GW
=
{
0x88
,
0x77
,
0x66
,
0x55
,
0x44
,
0x33
,
0x22
,
0x11
};
char
macString
[
RPC_EUI64_STRING_LENGTH
];
char
macString
[
RPC_EUI64_STRING_LENGTH
];
sub_dev_node_t
*
node
=
NULL
;
printf
(
"[%s][%d]
\n
"
,
__FUNCTION__
,
__LINE__
);
int
res
=
0
;
EmberEUI64
gw_eui64
=
{
0
};
rpc_eui64ToString
(
mac
,
macString
);
res
=
kk_sub_tsl_get_device_by_mac
(
macString
,
&
node
);
if
(
res
!=
SUCCESS_RETURN
)
{
printf
(
"[%s][%d]kk_rpc_send_message error!!!
\n
"
,
__FUNCTION__
,
__LINE__
);
return
;
}
devicesJson
=
rpc_cJSON_CreateObject
();
devicesJson
=
rpc_cJSON_CreateObject
();
rpc_eui64ToString
(
mac
,
macString
);
rpc_cJSON_AddStringToObject
(
devicesJson
,
"productCode"
,
node
->
productCode
);
printf
(
"[%s][%d]
\n
"
,
__FUNCTION__
,
__LINE__
);
rpc_cJSON_AddStringToObject
(
devicesJson
,
"productCode"
,
TEST_PRODUCT_CODE
);
rpc_cJSON_AddStringToObject
(
devicesJson
,
"deviceCode"
,
macString
);
rpc_cJSON_AddStringToObject
(
devicesJson
,
"deviceCode"
,
macString
);
emberAfGetEui64
(
gw_eui64
);
kk_rpc_report_left_devices
(
devicesJson
,
testMac_GW
);
kk_rpc_report_left_devices
(
devicesJson
,
gw_eui64
);
kk_sub_tsl_delete
(
mac
);
kk_sub_tsl_delete
(
mac
);
kk_device_table_delete
(
mac
);
kk_device_table_delete
(
mac
);
...
@@ -93,23 +103,11 @@ int kk_sendData2CCU(char* data, int len){
...
@@ -93,23 +103,11 @@ int kk_sendData2CCU(char* data, int len){
}
}
}
}
void
kk_rpc_reportDevices
(
EmberEUI64
mac
,
const
char
*
productCode
)
void
kk_rpc_reportDevices
(
EmberEUI64
mac
,
const
char
*
productCode
)
{
{
cJSON
*
devicesJson
;
cJSON
*
devicesJson
;
char
macString
[
19
]
=
{
0
};
char
macString
[
19
]
=
{
0
};
EmberEUI64
eui64
=
{
0
};
UTIL_LOG_WARNING
(
"report tsl product code:%s
\n
"
,
productCode
);
UTIL_LOG_WARNING
(
"report tsl product code:%s
\n
"
,
productCode
);
emberAfPrintBigEndianEui64
(
mac
);
emberAfPrintBigEndianEui64
(
mac
);
...
@@ -122,7 +120,8 @@ void kk_rpc_reportDevices(EmberEUI64 mac,const char* productCode)
...
@@ -122,7 +120,8 @@ void kk_rpc_reportDevices(EmberEUI64 mac,const char* productCode)
rpc_cJSON_AddStringToObject
(
devicesJson
,
"mac"
,
macString
);
rpc_cJSON_AddStringToObject
(
devicesJson
,
"mac"
,
macString
);
//
//
kk_sub_tsl_add
(
mac
,
productCode
);
kk_sub_tsl_add
(
mac
,
productCode
);
kk_rpc_report_devices
(
devicesJson
,
mac
);
emberAfGetEui64
(
eui64
);
kk_rpc_report_devices
(
devicesJson
,
eui64
);
}
}
...
...
platform/zigbee/app/builder/Z3GatewayHost/kk_test.h
View file @
fda1de55
...
@@ -25,7 +25,6 @@
...
@@ -25,7 +25,6 @@
#define TEST_PRODUCT_CODE "24"
#define TEST_PRODUCT_CODE "24"
#define GW2CCU_PROTOCOL "tcp"
#define GW2CCU_PROTOCOL "tcp"
#define GW_DEVICE_CODE "1122334455667788"
...
...
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