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
a615faf9
Commit
a615faf9
authored
Sep 18, 2020
by
陈伟灿
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'yjq' into 'master'
Yjq See merge request chenweican/k-sdk!11
parents
d6172530
2a352fcf
Changes
9
Show whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
1284 additions
and
589 deletions
+1284
-589
common/curl/README.txt
common/curl/README.txt
+8
-8
common/curl/example_curl.c
common/curl/example_curl.c
+51
-51
common/curl/include/libcurl_ubuntu.so
common/curl/include/libcurl_ubuntu.so
+0
-0
midware/midware/dm/kk_property_db.c
midware/midware/dm/kk_property_db.c
+0
-1
platform/zigbee/app/builder/Z3GatewayHost/ZB/dev_config_table/device_3001.json
...uilder/Z3GatewayHost/ZB/dev_config_table/device_3001.json
+0
-4
platform/zigbee/app/builder/Z3GatewayHost/ZB/kk_tsl_property_report.c
...bee/app/builder/Z3GatewayHost/ZB/kk_tsl_property_report.c
+473
-473
platform/zigbee/app/builder/Z3GatewayHost/ZB/kk_tsl_property_report.h
...bee/app/builder/Z3GatewayHost/ZB/kk_tsl_property_report.h
+52
-52
platform/zigbee/app/builder/Z3GatewayHost/ZB/kk_zigbee_api.c
platform/zigbee/app/builder/Z3GatewayHost/ZB/kk_zigbee_api.c
+499
-0
platform/zigbee/app/builder/Z3GatewayHost/ZB/kk_zigbee_api.h
platform/zigbee/app/builder/Z3GatewayHost/ZB/kk_zigbee_api.h
+201
-0
No files found.
common/curl/README.txt
View file @
a615faf9
common/curl/example_curl.c
View file @
a615faf9
common/curl/include/libcurl_ubuntu.so
0 → 100644
View file @
a615faf9
File added
midware/midware/dm/kk_property_db.c
View file @
a615faf9
...
...
@@ -141,7 +141,6 @@ int kk_property_db_insert(const char *deviceCode,const char *identifier,kk_tsl_d
char
*
zErrMsg
=
0
;
kk_property_db_ctx_t
*
ctx
=
_kk_property_db_get_ctx
();
if
(
_kk_check_property_exist
(
deviceCode
,
identifier
)
==
1
)
{
WARNING_PRINT
(
"[%s][%d] DATA ALREADY EXIST!!!
\n
"
,
__FUNCTION__
,
__LINE__
);
...
...
platform/zigbee/app/builder/Z3GatewayHost/ZB/dev_config_table/device_3001.json
View file @
a615faf9
...
...
@@ -8,7 +8,3 @@
"attribute"
:
"0x0000"
,
"reportFunc"
:
"kk_tsl_report_global_onoff"
,
"controlFunc"
:
"zclOnOff"
}
]
}
\ No newline at end of file
platform/zigbee/app/builder/Z3GatewayHost/ZB/kk_tsl_property_report.c
View file @
a615faf9
platform/zigbee/app/builder/Z3GatewayHost/ZB/kk_tsl_property_report.h
View file @
a615faf9
platform/zigbee/app/builder/Z3GatewayHost/ZB/kk_zigbee_api.c
View file @
a615faf9
...
...
@@ -1417,3 +1417,502 @@ EmberStatus zclThermostat_GetRelayStatusLog(uint16_t node,
/*********************************************************************************************/
EmberStatus
zone_enroll_response_command
(
uint16_t
node
,
uint8_t
ep
,
EnrollResponseCode
code
,
uint8_t
id
)
{
EmberStatus
status
;
zcl_clu_client_cmd_buffer_setup
(
ZCL_IAS_ZONE_CLUSTER_ID
,
ZCL_ZONE_ENROLL_RESPONSE_COMMAND_ID
);
zclBufferAddByte
(
code
);
zclBufferAddByte
(
id
);
status
=
rpcSendCommand
(
node
,
1
,
ep
,
false
);
emberAfCorePrintln
(
"[zone_enroll_response_command] status:0x%02x
\r\n
"
,
status
);
return
status
;
}
EmberStatus
initiate_normal_operation_mode_command
(
uint16_t
node
,
uint8_t
ep
)
{
EmberStatus
status
;
zcl_clu_client_cmd_buffer_setup
(
ZCL_IAS_ZONE_CLUSTER_ID
,
ZCL_INITIATE_NORMAL_OPERATION_MODE_COMMAND_ID
);
status
=
rpcSendCommand
(
node
,
1
,
ep
,
false
);
emberAfCorePrintln
(
"[initiate_normal_operation_mode_command] status:0x%02x
\r\n
"
,
status
);
return
status
;
}
EmberStatus
initiate_test_mode_command
(
uint16_t
node
,
uint8_t
ep
,
uint8_t
duration
,
uint8_t
level
)
{
EmberStatus
status
;
zcl_clu_client_cmd_buffer_setup
(
ZCL_IAS_ZONE_CLUSTER_ID
,
ZCL_INITIATE_TEST_MODE_COMMAND_ID
);
zclBufferAddByte
(
duration
);
zclBufferAddByte
(
level
);
status
=
rpcSendCommand
(
node
,
1
,
ep
,
false
);
emberAfCorePrintln
(
"[initiate_test_mode_command] status:0x%02x
\r\n
"
,
status
);
return
status
;
}
EmberStatus
zone_status_change_notification
(
uint16_t
node
,
uint8_t
ep
,
uint16_t
zoneStatus
,
uint8_t
extStatus
,
uint8_t
id
,
uint16_t
delay
)
{
EmberStatus
status
;
zcl_clu_client_cmd_buffer_setup
(
ZCL_IAS_ZONE_CLUSTER_ID
,
ZCL_ZONE_STATUS_CHANGE_NOTIFICATION_COMMAND_ID
);
zclBufferAddWord
(
zoneStatus
);
zclBufferAddByte
(
extStatus
);
zclBufferAddByte
(
id
);
zclBufferAddWord
(
delay
);
status
=
rpcSendCommand
(
node
,
1
,
ep
,
false
);
emberAfCorePrintln
(
"[zone_status_change_notification] status:0x%02x
\r\n
"
,
status
);
return
status
;
}
EmberStatus
zone_enroll_request_command
(
uint16_t
node
,
uint8_t
ep
,
uint16_t
type
,
uint16_t
code
)
{
EmberStatus
status
;
zcl_clu_client_cmd_buffer_setup
(
ZCL_IAS_ZONE_CLUSTER_ID
,
ZCL_ZONE_ENROLL_REQUEST_COMMAND_ID
);
zclBufferAddWord
(
type
);
zclBufferAddWord
(
code
);
status
=
rpcSendCommand
(
node
,
1
,
ep
,
false
);
emberAfCorePrintln
(
"[zone_enroll_request_command] status:0x%02x
\r\n
"
,
status
);
return
status
;
}
///////////////////////////
EmberStatus
arm_command
(
uint16_t
node
,
uint8_t
ep
,
ArmMode
mode
,
char
*
code
,
uint8_t
id
)
{
int
i
;
EmberStatus
status
;
zcl_clu_client_cmd_buffer_setup
(
ZCL_IAS_ACE_CLUSTER_ID
,
ZCL_ARM_COMMAND_ID
);
zclBufferAddByte
(
mode
);
for
(
i
=
0
;
i
<
strlen
(
code
);
i
++
){
zclBufferAddByte
(
code
[
i
]);
}
zclBufferAddByte
(
id
);
status
=
rpcSendCommand
(
node
,
1
,
ep
,
false
);
emberAfCorePrintln
(
"[arm_command] status:0x%02x
\r\n
"
,
status
);
return
status
;
}
EmberStatus
bypass_command
(
uint16_t
node
,
uint8_t
ep
,
uint8_t
num
,
uint8_t
*
id
,
char
*
code
)
{
int
i
;
EmberStatus
status
;
zcl_clu_client_cmd_buffer_setup
(
ZCL_IAS_ACE_CLUSTER_ID
,
ZCL_BYPASS_COMMAND_ID
);
zclBufferAddByte
(
num
);
for
(
i
=
0
;
i
<
num
;
i
++
){
zclBufferAddByte
(
id
[
i
]);
}
for
(
i
=
0
;
i
<
strlen
(
code
);
i
++
){
zclBufferAddByte
(
code
[
i
]);
}
status
=
rpcSendCommand
(
node
,
1
,
ep
,
false
);
emberAfCorePrintln
(
"[bypass_command] status:0x%02x
\r\n
"
,
status
);
return
status
;
}
EmberStatus
emergency_command
(
uint16_t
node
,
uint8_t
ep
)
{
EmberStatus
status
;
zcl_clu_client_cmd_buffer_setup
(
ZCL_IAS_ACE_CLUSTER_ID
,
ZCL_EMERGENCY_COMMAND_ID
);
status
=
rpcSendCommand
(
node
,
1
,
ep
,
false
);
emberAfCorePrintln
(
"[emergency_command] status:0x%02x
\r\n
"
,
status
);
return
status
;
}
EmberStatus
fire_command
(
uint16_t
node
,
uint8_t
ep
)
{
EmberStatus
status
;
zcl_clu_client_cmd_buffer_setup
(
ZCL_IAS_ACE_CLUSTER_ID
,
ZCL_FIRE_COMMAND_ID
);
status
=
rpcSendCommand
(
node
,
1
,
ep
,
false
);
emberAfCorePrintln
(
"[fire_command] status:0x%02x
\r\n
"
,
status
);
return
status
;
}
EmberStatus
panic_command
(
uint16_t
node
,
uint8_t
ep
)
{
EmberStatus
status
;
zcl_clu_client_cmd_buffer_setup
(
ZCL_IAS_ACE_CLUSTER_ID
,
ZCL_PANIC_COMMAND_ID
);
status
=
rpcSendCommand
(
node
,
1
,
ep
,
false
);
emberAfCorePrintln
(
"[panic_command] status:0x%02x
\r\n
"
,
status
);
return
status
;
}
EmberStatus
get_zone_id_command
(
uint16_t
node
,
uint8_t
ep
)
{
EmberStatus
status
;
zcl_clu_client_cmd_buffer_setup
(
ZCL_IAS_ACE_CLUSTER_ID
,
ZCL_GET_ZONE_ID_MAP_COMMAND_ID
);
status
=
rpcSendCommand
(
node
,
1
,
ep
,
false
);
emberAfCorePrintln
(
"[get_zone_id_command] status:0x%02x
\r\n
"
,
status
);
return
status
;
}
EmberStatus
get_zone_information_command
(
uint16_t
node
,
uint8_t
ep
,
uint8_t
id
)
{
EmberStatus
status
;
zcl_clu_client_cmd_buffer_setup
(
ZCL_IAS_ACE_CLUSTER_ID
,
ZCL_GET_ZONE_INFORMATION_COMMAND_ID
);
zclBufferAddByte
(
id
);
status
=
rpcSendCommand
(
node
,
1
,
ep
,
false
);
emberAfCorePrintln
(
"[get_zone_information_command] status:0x%02x
\r\n
"
,
status
);
return
status
;
}
EmberStatus
get_panel_status_command
(
uint16_t
node
,
uint8_t
ep
)
{
EmberStatus
status
;
zcl_clu_client_cmd_buffer_setup
(
ZCL_IAS_ACE_CLUSTER_ID
,
ZCL_GET_PANEL_STATUS_COMMAND_ID
);
status
=
rpcSendCommand
(
node
,
1
,
ep
,
false
);
emberAfCorePrintln
(
"[get_panel_status_command] status:0x%02x
\r\n
"
,
status
);
return
status
;
}
EmberStatus
get_bypassed_zone_list_command
(
uint16_t
node
,
uint8_t
ep
)
{
EmberStatus
status
;
zcl_clu_client_cmd_buffer_setup
(
ZCL_IAS_ACE_CLUSTER_ID
,
ZCL_GET_BYPASSED_ZONE_LIST_COMMAND_ID
);
status
=
rpcSendCommand
(
node
,
1
,
ep
,
false
);
emberAfCorePrintln
(
"[get_bypassed_zone_list_command] status:0x%02x
\r\n
"
,
status
);
return
status
;
}
EmberStatus
get_zone_status_command
(
uint16_t
node
,
uint8_t
ep
,
uint8_t
statrId
,
uint8_t
maxNum
,
bool
flag
,
uint16_t
mask
)
{
EmberStatus
status
;
zcl_clu_client_cmd_buffer_setup
(
ZCL_IAS_ACE_CLUSTER_ID
,
ZCL_GET_ZONE_STATUS_COMMAND_ID
);
zclBufferAddByte
(
statrId
);
zclBufferAddByte
(
maxNum
);
zclBufferAddByte
(
flag
);
zclBufferAddWord
(
mask
);
status
=
rpcSendCommand
(
node
,
1
,
ep
,
false
);
emberAfCorePrintln
(
"[get_zone_status_command] status:0x%02x
\r\n
"
,
status
);
return
status
;
}
EmberStatus
arm_response
(
uint16_t
node
,
uint8_t
ep
,
ArmNotification
arm
)
{
EmberStatus
status
;
zcl_clu_client_cmd_buffer_setup
(
ZCL_IAS_ACE_CLUSTER_ID
,
ZCL_ARM_RESPONSE_COMMAND_ID
);
zclBufferAddByte
(
arm
);
status
=
rpcSendCommand
(
node
,
1
,
ep
,
false
);
emberAfCorePrintln
(
"[arm_response] status:0x%02x
\r\n
"
,
status
);
return
status
;
}
EmberStatus
get_zone_id_map_response
(
uint16_t
node
,
uint8_t
ep
,
uint16_t
*
map
)
//16
{
int
i
=
0
;
EmberStatus
status
;
zcl_clu_client_cmd_buffer_setup
(
ZCL_IAS_ACE_CLUSTER_ID
,
ZCL_GET_ZONE_ID_MAP_RESPONSE_COMMAND_ID
);
for
(
int
i
=
0
;
i
<
16
;
i
++
){
zclBufferAddWord
(
map
[
i
]);
}
status
=
rpcSendCommand
(
node
,
1
,
ep
,
false
);
emberAfCorePrintln
(
"[get_zone_id_map_response] status:0x%02x
\r\n
"
,
status
);
return
status
;
}
EmberStatus
get_zone_information_response
(
uint16_t
node
,
uint8_t
ep
,
uint8_t
id
,
uint16_t
type
,
uint8_t
*
ieee
,
char
*
label
)
{
int
i
=
0
;
EmberStatus
status
;
zcl_clu_client_cmd_buffer_setup
(
ZCL_IAS_ACE_CLUSTER_ID
,
ZCL_GET_ZONE_INFORMATION_RESPONSE_COMMAND_ID
);
zclBufferAddByte
(
id
);
zclBufferAddWord
(
type
);
for
(;
i
<
8
;
i
++
){
zclBufferAddByte
(
ieee
[
i
]);
}
for
(
i
=
0
;
i
<
strlen
(
label
);
i
++
){
zclBufferAddByte
(
label
[
i
]);
}
status
=
rpcSendCommand
(
node
,
1
,
ep
,
false
);
emberAfCorePrintln
(
"[get_zone_information_response] status:0x%02x
\r\n
"
,
status
);
return
status
;
}
EmberStatus
zone_status_changed
(
uint16_t
node
,
uint8_t
ep
,
uint8_t
id
,
uint16_t
zonestatus
,
uint8_t
audible
,
char
*
label
)
{
int
i
=
0
;
EmberStatus
status
;
zcl_clu_client_cmd_buffer_setup
(
ZCL_IAS_ACE_CLUSTER_ID
,
ZCL_ZONE_STATUS_CHANGED_COMMAND_ID
);
zclBufferAddByte
(
id
);
zclBufferAddWord
(
zonestatus
);
zclBufferAddByte
(
audible
);
for
(
i
=
0
;
i
<
strlen
(
label
);
i
++
){
zclBufferAddByte
(
label
[
i
]);
}
status
=
rpcSendCommand
(
node
,
1
,
ep
,
false
);
emberAfCorePrintln
(
"[zone_status_changed] status:0x%02x
\r\n
"
,
status
);
return
status
;
}
EmberStatus
panel_status_changed
(
uint16_t
node
,
uint8_t
ep
,
PanelStatus
panel
,
uint8_t
remain
,
uint8_t
audible
,
AlarmStatus
alarm
)
{
EmberStatus
status
;
zcl_clu_client_cmd_buffer_setup
(
ZCL_IAS_ACE_CLUSTER_ID
,
ZCL_PANEL_STATUS_CHANGED_COMMAND_ID
);
zclBufferAddByte
(
panel
);
zclBufferAddByte
(
remain
);
zclBufferAddByte
(
audible
);
zclBufferAddByte
(
alarm
);
status
=
rpcSendCommand
(
node
,
1
,
ep
,
false
);
emberAfCorePrintln
(
"[panel_status_changed] status:0x%02x
\r\n
"
,
status
);
return
status
;
}
EmberStatus
get_panel_status_response
(
uint16_t
node
,
uint8_t
ep
,
PanelStatus
panel
,
uint8_t
remain
,
uint8_t
audible
,
AlarmStatus
alarm
)
{
EmberStatus
status
;
zcl_clu_client_cmd_buffer_setup
(
ZCL_IAS_ACE_CLUSTER_ID
,
ZCL_GET_PANEL_STATUS_RESPONSE_COMMAND_ID
);
zclBufferAddByte
(
panel
);
zclBufferAddByte
(
remain
);
zclBufferAddByte
(
audible
);
zclBufferAddByte
(
alarm
);
status
=
rpcSendCommand
(
node
,
1
,
ep
,
false
);
emberAfCorePrintln
(
"[get_panel_status_response] status:0x%02x
\r\n
"
,
status
);
return
status
;
}
EmberStatus
set_bypassed_zone_list
(
uint16_t
node
,
uint8_t
ep
,
uint8_t
num
,
uint8_t
*
id
)
{
EmberStatus
status
;
zcl_clu_client_cmd_buffer_setup
(
ZCL_IAS_ACE_CLUSTER_ID
,
ZCL_SET_BYPASSED_ZONE_LIST_COMMAND_ID
);
zclBufferAddByte
(
num
);
for
(
int
i
=
0
;
i
<
num
;
i
++
){
zclBufferAddByte
(
id
[
i
]);
}
status
=
rpcSendCommand
(
node
,
1
,
ep
,
false
);
emberAfCorePrintln
(
"[set_bypassed_zone_list] status:0x%02x
\r\n
"
,
status
);
return
status
;
}
EmberStatus
bypass_response
(
uint16_t
node
,
uint8_t
ep
,
uint8_t
num
,
BypassResult
*
id
)
{
EmberStatus
status
;
zcl_clu_client_cmd_buffer_setup
(
ZCL_IAS_ACE_CLUSTER_ID
,
ZCL_BYPASS_RESPONSE_COMMAND_ID
);
zclBufferAddByte
(
num
);
for
(
int
i
=
0
;
i
<
num
;
i
++
){
zclBufferAddByte
(
id
[
i
]);
}
status
=
rpcSendCommand
(
node
,
1
,
ep
,
false
);
emberAfCorePrintln
(
"[bypass_response] status:0x%02x
\r\n
"
,
status
);
return
status
;
}
EmberStatus
get_zone_status_response
(
uint16_t
node
,
uint8_t
ep
,
bool
complete
,
uint8_t
num
,
ZoneStatus_s
**
ZoneStatus
)
{
EmberStatus
status
;
zcl_clu_client_cmd_buffer_setup
(
ZCL_IAS_ACE_CLUSTER_ID
,
ZCL_GET_ZONE_STATUS_RESPONSE_COMMAND_ID
);
zclBufferAddByte
(
complete
);
zclBufferAddByte
(
num
);
for
(
int
i
=
0
;
i
<
num
;
i
++
){
zclBufferAddByte
(
ZoneStatus
[
i
]
->
zoneId
);
zclBufferAddWord
(
ZoneStatus
[
i
]
->
zoneStatus
);
}
status
=
rpcSendCommand
(
node
,
1
,
ep
,
false
);
emberAfCorePrintln
(
"[get_zone_status_response] status:0x%02x
\r\n
"
,
status
);
return
status
;
}
EmberStatus
start_warning
(
uint16_t
node
,
uint8_t
ep
,
WarningModes
mode
,
StrobeField
strobe
,
SirenLevel
siren
,
uint16_t
duration
,
uint8_t
cycle
,
StrobeLevel
level
)
{
uint8_t
map
;
EmberStatus
status
;
zcl_clu_client_cmd_buffer_setup
(
ZCL_IAS_WD_CLUSTER_ID
,
ZCL_START_WARNING_COMMAND_ID
);
map
=
(
mode
<<
4
)
|
(
strobe
<<
2
)
|
siren
;
zclBufferAddByte
(
map
);
zclBufferAddWord
(
duration
);
zclBufferAddByte
(
cycle
);
zclBufferAddByte
(
level
);
status
=
rpcSendCommand
(
node
,
1
,
ep
,
false
);
emberAfCorePrintln
(
"[start_warning] status:0x%02x
\r\n
"
,
status
);
return
status
;
}
EmberStatus
squawk_command
(
uint16_t
node
,
uint8_t
ep
,
WarningModes
mode
,
StrobeField
strobe
,
SquawkModeField
squawk
)
{
uint8_t
map
;
EmberStatus
status
;
zcl_clu_client_cmd_buffer_setup
(
ZCL_IAS_WD_CLUSTER_ID
,
ZCL_SQUAWK_COMMAND_ID
);
map
=
(
mode
<<
4
)
|
(
strobe
<<
3
)
|
squawk
;
zclBufferAddByte
(
map
);
status
=
rpcSendCommand
(
node
,
1
,
ep
,
false
);
emberAfCorePrintln
(
"[squawk_command] status:0x%02x
\r\n
"
,
status
);
return
status
;
}
platform/zigbee/app/builder/Z3GatewayHost/ZB/kk_zigbee_api.h
View file @
a615faf9
...
...
@@ -40,6 +40,96 @@ kk_rpc_report_api_s kk_rpc_report_api[];
uint8_t
kk_get_rpc_set_api_size
(
void
);
uint8_t
kk_get_rpc_report_api_size
(
void
);
typedef
enum
{
EnrollResponseCode_Success
=
0x00
,
EnrollResponseCode_NoSupported
=
0x01
,
EnrollResponseCode_NoEnrollPermit
=
0x02
,
EnrollResponseCode_TooManyZones
=
0x03
,
}
EnrollResponseCode
;
typedef
enum
{
ArmMode_Disarm
=
0x00
,
ArmMode_ArmDayOrHomeZonesOnly
=
0x01
,
ArmMode_ArmNightOrSleepZonesOnly
=
0x02
,
ArmMode_ArmAllZones
=
0x03
,
}
ArmMode
;
typedef
enum
{
ArmNotification_AllZonesDisarmed
=
0x01
,
ArmNotification_OnlyDayOrHomeZonesArmed
=
0x02
,
ArmNotification_OnlyNightOrSleepZonesArmed
=
0x03
,
ArmNotification_AllZonesArmed
=
0x04
,
ArmNotification_InvalidArmOrDisarmCode
=
0x05
,
ArmNotification_NotReadyToArm
=
0x06
,
ArmNotification_AlreadyDisarmed
}
ArmNotification
;
typedef
enum
{
PanelStatus_PanelDisarmedAndReadyToArm
=
0x00
,
PanelStatus_ArmedStay
=
0x01
,
PanelStatus_ArmedNight
=
0x02
,
PanelStatus_ArmedAway
=
0x03
,
PanelStatus_ExitDelay
=
0x04
,
PanelStatus_EntryDelay
=
0x05
,
PanelStatus_NotReadyToArm
=
0x06
,
PanelStatus_InAlarm
=
0x07
,
PanelStatus_ArmingStay
=
0x08
,
PanelStatus_ArmingNight
=
0x09
,
PanelStatus_ArmingAway
=
0x0a
,
}
PanelStatus
;
typedef
enum
{
AlarmStatus_NoAlarm
=
0x00
,
AlarmStatus_Burglar
=
0x01
,
AlarmStatus_Fire
=
0x02
,
AlarmStatus_Emergency
=
0x03
,
AlarmStatus_PolicePanic
=
0x04
,
AlarmStatus_FirePanic
=
0x05
,
AlarmStatus_EmergencyPanic
=
0x06
,
}
AlarmStatus
;
typedef
enum
{
BypassResult_ZoneBypassed
=
0x00
,
BypassResult_ZoneNotBypassed
=
0x01
,
BypassResult_NotAllowed
=
0x02
,
BypassResult_InvalidZoneID
=
0x03
,
BypassResult_UnknownZoneID
=
0x04
,
BypassResult_InvalidArmOrDisarmCode
=
0x05
,
}
BypassResult
;
typedef
struct
{
uint8_t
zoneId
;
uint16_t
zoneStatus
;
}
ZoneStatus_s
;
typedef
enum
{
WarningModes_Stop
=
0x00
,
WarningModes_Burglar
=
0x01
,
WarningModes_Fire
=
0x02
,
WarningModes_Emergency
=
0x03
,
WarningModes_PolicePanic
=
0x04
,
WarningModes_FirePanic
=
0x05
,
WarningModes_EmergencyPanic
=
0x06
,
}
WarningModes
;
typedef
enum
{
StrobeField_NoStrobe
=
0x00
,
StrobeField_UseStrobe
=
0x01
,
}
StrobeField
;
typedef
enum
{
SirenLevel_LowLevelSound
=
0x00
,
SirenLevel_MediumLevelSound
=
0x01
,
SirenLevel_HighLevelSound
=
0x02
,
SirenLevel_VeryHighLevelSound
=
0x03
,
}
SirenLevel
;
typedef
enum
{
StrobeLevel_LowLevelSound
=
0x00
,
StrobeLevel_MediumLevelSound
=
0x01
,
StrobeLevel_HighLevelSound
=
0x02
,
StrobeLevel_VeryHighLevelSound
=
0x03
,
}
StrobeLevel
;
typedef
enum
{
SquawkModeField_Arm
=
0x00
,
SquawkModeField_Disarmed
=
0x01
,
}
SquawkModeField
;
EmberStatus
kk_network_leave
(
void
);
...
...
@@ -418,4 +508,115 @@ EmberStatus zclThermostat_GetRelayStatusLog(uint16_t node,
uint8_t
ep
);
//IAS
EmberStatus
arm_command
(
uint16_t
node
,
uint8_t
ep
,
ArmMode
mode
,
char
*
code
,
uint8_t
id
);
EmberStatus
bypass_command
(
uint16_t
node
,
uint8_t
ep
,
uint8_t
num
,
uint8_t
*
id
,
char
*
code
);
EmberStatus
emergency_command
(
uint16_t
node
,
uint8_t
ep
);
EmberStatus
fire_command
(
uint16_t
node
,
uint8_t
ep
);
EmberStatus
panic_command
(
uint16_t
node
,
uint8_t
ep
);
EmberStatus
get_zone_id_command
(
uint16_t
node
,
uint8_t
ep
);
EmberStatus
get_zone_information_command
(
uint16_t
node
,
uint8_t
ep
,
uint8_t
id
);
EmberStatus
get_panel_status_command
(
uint16_t
node
,
uint8_t
ep
);
EmberStatus
get_bypassed_zone_list_command
(
uint16_t
node
,
uint8_t
ep
);
EmberStatus
get_zone_status_command
(
uint16_t
node
,
uint8_t
ep
,
uint8_t
statrId
,
uint8_t
maxNum
,
bool
flag
,
uint16_t
mask
);
EmberStatus
arm_response
(
uint16_t
node
,
uint8_t
ep
,
ArmNotification
arm
);
EmberStatus
get_zone_id_map_response
(
uint16_t
node
,
uint8_t
ep
,
uint16_t
*
map
);
//16
EmberStatus
get_zone_information_response
(
uint16_t
node
,
uint8_t
ep
,
uint8_t
id
,
uint16_t
type
,
uint8_t
*
ieee
,
char
*
label
);
EmberStatus
zone_status_changed
(
uint16_t
node
,
uint8_t
ep
,
uint8_t
id
,
uint16_t
zonestatus
,
uint8_t
audible
,
char
*
label
);
EmberStatus
panel_status_changed
(
uint16_t
node
,
uint8_t
ep
,
PanelStatus
panel
,
uint8_t
remain
,
uint8_t
audible
,
AlarmStatus
alarm
);
EmberStatus
get_panel_status_response
(
uint16_t
node
,
uint8_t
ep
,
PanelStatus
panel
,
uint8_t
remain
,
uint8_t
audible
,
AlarmStatus
alarm
);
EmberStatus
set_bypassed_zone_list
(
uint16_t
node
,
uint8_t
ep
,
uint8_t
num
,
uint8_t
*
id
);
EmberStatus
bypass_response
(
uint16_t
node
,
uint8_t
ep
,
uint8_t
num
,
BypassResult
*
id
);
EmberStatus
get_zone_status_response
(
uint16_t
node
,
uint8_t
ep
,
bool
complete
,
uint8_t
num
,
ZoneStatus_s
**
ZoneStatus
);
EmberStatus
start_warning
(
uint16_t
node
,
uint8_t
ep
,
WarningModes
mode
,
StrobeField
strobe
,
SirenLevel
siren
,
uint16_t
duration
,
uint8_t
cycle
,
StrobeLevel
level
);
EmberStatus
squawk_command
(
uint16_t
node
,
uint8_t
ep
,
WarningModes
mode
,
StrobeField
strobe
,
SquawkModeField
squawk
);
#endif
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