Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
A
ademco_hb
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
captainwong
ademco_hb
Commits
bd0995ff
Commit
bd0995ff
authored
Dec 06, 2023
by
captainwong
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
release 1.2.0
parent
b1221fd5
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
1919 additions
and
1612 deletions
+1919
-1612
CHANGELOG.md
CHANGELOG.md
+6
-0
ademco.c
ademco.c
+284
-234
ademco.h
ademco.h
+280
-257
ademco_config.h
ademco_config.h
+49
-0
ademco_version.h
ademco_version.h
+1
-1
README.md
docs/README.md
+54
-55
gen_event_md.cpp
examples/gen_event_md/gen_event_md.cpp
+15
-9
hb_com.c
hb_com.c
+845
-798
hb_com.h
hb_com.h
+384
-258
copy_from_hb.bat
tools/copy_from_hb.bat
+1
-0
No files found.
CHANGELOG.md
View file @
bd0995ff
# Ademco Change Log
## 1.2.0
-
add config
-
add
`offset`
for parse error
-
refactor parser
## 1.1.0
-
ADEMCO_PACKET_ACCT_MAX_LEN changed from 64 to 18
...
...
ademco.c
View file @
bd0995ff
This diff is collapsed.
Click to expand it.
ademco.h
View file @
bd0995ff
This diff is collapsed.
Click to expand it.
ademco_config.h
0 → 100644
View file @
bd0995ff
#ifndef __ADEMCO_CONFIG_H__
#define __ADEMCO_CONFIG_H__
#pragma once
#ifdef ADEMCO_EXPORTS
#if defined __GNUC__
#define ADEMCO_EXPORT_SYMBOL __attribute__((visibility("default")))
#elif defined(_MSC_VER)
#define ADEMCO_EXPORT_SYMBOL __declspec(dllexport)
#else
#define ADEMCO_EXPORT_SYMBOL
#endif
#else // ADEMCO_EXPORTS
#define ADEMCO_EXPORT_SYMBOL
#endif // ADEMCO_EXPORTS
#if defined(SWIGJAVA) || defined(SWIGCSHARP)
#define ademco_char_t uint8_t
#else
#define ademco_char_t char
#endif
#ifndef ADEMCO_ENABLE_CHINESE
#define ADEMCO_ENABLE_CHINESE 1
#endif
#ifndef ADEMCO_ENABLE_PARSE_ERROR
#define ADEMCO_ENABLE_PARSE_ERROR 1
#endif
#if ADEMCO_ENABLE_PARSE_ERROR
#define ADEMCO_FILL_PARSE_ERROR(err, offset_, msg_) \
do
{
\
if
(
err
)
{
\
err
->
line
=
__LINE__
;
\
err
->
offset
=
(
offset_
);
\
err
->
msg
=
(
msg_
);
\
}
\
}
while
(
0
);
#else
#define ADEMCO_FILL_PARSE_ERROR(err, offset_, msg_)
#endif // ADEMCO_ENABLE_PARSE_ERROR
#endif
ademco_version.h
View file @
bd0995ff
...
...
@@ -7,7 +7,7 @@
*/
#define ADEMCO_VERSION_MAJOR 1
#define ADEMCO_VERSION_MINOR
1
#define ADEMCO_VERSION_MINOR
2
#define ADEMCO_VERSION_PATCH 0
#define ADEMCO_VERSION_IS_RELEASE 1
#define ADEMCO_VERSION_SUFFIX ""
...
...
docs/README.md
View file @
bd0995ff
...
...
@@ -62,15 +62,14 @@
*
`1/3`
前缀,
`1`
表示打开,
`3`
表示关闭。如
`3400`
表示布防,
`1400`
表示撤防。
*
`E/R`
前缀,
`E`
表示打开,
`R`
表示关闭。如
`R400`
表示布防,
`E400`
表示撤防。
*
报警时
`1/E`
前缀表示警情触发,
`3/R`
表示警情恢复,如
`1387`
表示探测器受到强光干扰,
`3387`
表示防区从光扰状态恢复。
### 主机状态
|事件码|含义|en|
|-----|----|--|
|3400|布防|ARM|
|1400|撤防|DISARM|
|1456|半布防|HALFARM|
|3456|半布防|HALFARM|
|1456|半布防|HALFARM_1456|
|1120|紧急报警|EMERGENCY|
### 防区报警
...
...
@@ -83,93 +82,93 @@
|1121|胁迫|DURESS|
|1151|煤气|GAS|
|1113|水警|WATER|
|1137|防拆|TAMPER|
|1137|
主机
防拆|TAMPER|
|1383|防区防拆|ZONE_TAMPER|
|1570|旁路|BYPASS|
|3570|解除旁路|BYPASS_RESUME|
### 防区异常
|事件码|含义|en|
|-----|----|--|
|1301|主机AC掉电|AC BROKE|
|3301|主机AC恢复|AC RECOVER|
|1301|主机AC掉电|AC_BROKE|
|1302|低电|LOWBATTERY|
|3302|复电|BATATTERY_RECOVER|
|1311|坏电|BADBATTERY|
|3311|坏电恢复|BADBATTERY_RECOVER|
|1387|光扰|SOLARDISTURB|
|3387|光扰恢复|SOLARDISTURB_RECOVER|
|1381|失效|DISCONNECT|
|3381|恢复|RECONNECT|
|1384|防区电源故障|BATTERY_EXCEPTION|
|3384|防区电源故障恢复|BATTERY_EXCEPTION_RECOVER|
|1380|防区其他故障|OTHER_EXCEPTION|
|3380|防区其他故障恢复|OTHER_EXCEPTION_RECOVER|
|1393|失联|LOST|
|3393|恢复|LOST_RECOVER|
|3100|液晶主机清除异常指示|LCD CLEAR EXCEPTION|
|1384|电源故障|BATTERY_EXCEPTION|
|1380|其他故障|OTHER_EXCEPTION|
|3570|解除旁路|BYPASS_RESUME|
|3301|主机AC复电|AC_RECOVER|
|3302|低电恢复|BATTERY_RECOVER|
|3311|坏电恢复|BADBATTERY_RECOVER|
|3387|光扰恢复|SOLARDISTURB_RECOVER|
|3381|失效恢复|RECONNECT|
|3393|失联恢复|LOST_RECOVER|
|3384|电源故障恢复|BATTERY_EXCEPTION_RECOVER|
|3380|其他故障恢复|OTHER_EXCEPTION_RECOVER|
|3100|清除异常指示|CLEAR_EXCPTION|
### *恒博私有事件码*
|事件码|含义|en|
|-----|----|--|
|1485|485断开|485DIS|
|3485|485
恢复|
485CONN|
|1485|485断开|
SERIAL
485DIS|
|3485|485
连接|SERIAL
485CONN|
|1700|链路挂起|CONN_HANGUP|
|3700|链路恢复|CONN_RESUME|
|1701|撤防密码错误|DISARM_PWD_ERR|
|1702|分
防区异常|SUB
_SENSOR_EXCEPTION|
|3702|分
防区恢复|SUB
_SENSOR_RESUME|
|1703|分
防区电源异常|SUB
_POWER_EXCEPTION|
|3703|分
防区电源恢复|SUB
_POWER_RESUME|
|1702|分
机探头异常|SUB_MACHINE
_SENSOR_EXCEPTION|
|3702|分
机探头恢复|SUB_MACHINE
_SENSOR_RESUME|
|1703|分
机电源异常|SUB_MACHINE
_POWER_EXCEPTION|
|3703|分
机电源恢复|SUB_MACHINE
_POWER_RESUME|
|1704|串口透传|COM_PASSTHROUGH|
|2704|进入设置状态|ENTER_SET_MODE|
|3704|
拒绝/停止设置
|EXIT_SET_MODE|
|1705|查询
|QUERY
|
|3704|
退出设置状态
|EXIT_SET_MODE|
|1705|查询
分机信息|QUERY_SUB_MACHINE
|
|1706|写入主机信息|WRITE_TO_MACHINE|
|1707|
我是
网络模块|I_AM_NET_MODULE|
|1717|
我是GPRS主机|I_AM_GPRS_MACHINE
|
|1727|
我是
液晶主机|I_AM_LCD_MACHINE|
|1737|
我是
网线主机|I_AM_WIRE_MACHINE|
|1747|
我是WiFi主机
|I_AM_WIFI_MACHINE|
|1757|
我是
三区段主机|I_AM_3_SECTION_MACHINE|
|1767|
我是
物联卡主机|I_AM_IOT_MACHINE|
|1777|
我是
真彩主机|I_AM_TRUE_COLOR|
|1787|
我是简化版
物联卡主机|I_AM_GPRS_IOT|
|1797|
我是GPRS主机能打电话
|I_AM_GPRS_PHONE|
|1807|
我是
NB报警接收主机|I_AM_NB_MACHINE|
|1817|
我是WiFi主机新版
|I_AM_WIFI2_MACHINE|
|1709|手机用户SOS|SOS|
|1707|
主机类型--
网络模块|I_AM_NET_MODULE|
|1717|
主机类型--GPRS主机|I_AM_GPRS
|
|1727|
主机类型--
液晶主机|I_AM_LCD_MACHINE|
|1737|
主机类型--
网线主机|I_AM_WIRE_MACHINE|
|1747|
主机类型--WiFi主机(停用)
|I_AM_WIFI_MACHINE|
|1757|
主机类型--
三区段主机|I_AM_3_SECTION_MACHINE|
|1767|
主机类型--
物联卡主机|I_AM_IOT_MACHINE|
|1777|
主机类型--
真彩主机|I_AM_TRUE_COLOR|
|1787|
主机类型--
物联卡主机|I_AM_GPRS_IOT|
|1797|
主机类型--GRPS主机带电话功能
|I_AM_GPRS_PHONE|
|1807|
主机类型--
NB报警接收主机|I_AM_NB_MACHINE|
|1817|
主机类型--WiFi主机(新版)
|I_AM_WIFI2_MACHINE|
|1709|手机用户SOS|
PHONE_USER_
SOS|
|1711|手机用户消警|PHONE_USER_CANCLE_ALARM|
|1712|主机进入设置状态|ENTER_SETTING_MODE|
|3712|主机退出设置状态|EXIT_SETTING_MODE|
|1710|主机恢复出厂设置|RESTORE_FACTORY_SETTINGS|
|1710|主机恢复出厂设置|RESTORE_FACTORY_SETTINGS
_710
|
|1713|主机恢复出厂设置|RESTORE_FACTORY_SETTINGS|
|1756|
SIM卡为物联卡|SIM card is IOT
|
|2756|
SIM卡为平台物联卡|SIM card is Platform IOT
|
|3756|
SIM卡为非物联卡|SIM card is not IOT
|
|1756|
物联卡|SIM_IS_IOT_CARD
|
|2756|
平台物联卡|SIM_IS_IOT_PLATFORM_CARD
|
|3756|
非物联卡|SIM_IS_NOT_IOT_CARD
|
|1798|索要主机类型|WHAT_IS_YOUR_TYPE|
|1799|信号强度
变化
|SIGNAL_STRENGTH_CHANGED|
|1944|
上线|EVENT_
OFFLINE|
|1946|
离线|EVENT_
ONLINE|
|1799|信号强度|SIGNAL_STRENGTH_CHANGED|
|1944|
主机断线|
OFFLINE|
|1946|
主机上线|
ONLINE|
### *恒博主机类型对照表*
*SMS指主机自身是否可以拨打电话、发送短信,不是指通过阿里语音打电话*
|事件码类型|主机类型|布防|撤防|半布防|设置|信号强度|防区|有线防区|SMS|内核|网络|型号|
|---------|-------|----|----|-----|----|-------|----|-------|---|----|---|----|
|1707
我是网络模块|3 网络模块+工程
主机|√|√|√|√| |1~999|1~8| |jjf|qfm|
<ul><li>
G250
</li></ul>
|
|1717
我是GPRS主机|4
GPRS主机|√|√| |√|√|1~99| |√|wzq|qfm|
<ul><li>
4040G
</li><li>
5050G
</li><li>
5050G-4G
</li></ul>
|
|1727
我是液晶主机|5
液晶主机|√|√|√|√|√|1~249| |√|jjf|qfm|
<ul><li>
BJQ560
</li><li>
BJQ560B
</li></ul>
|
|1737
我是网线主机|6
网线主机|√|√| |√| |1~99| | |wzq|qfm|
<ul><li>
4040R
</li><li>
5050R
</li></ul>
|
|1757
我是三区段主机|8
三区段主机|√|√| |√|√|1~191|61~68|√|jjf|qfm|
<ul><li>
G1000
</li><li>
G1000-4G
</li></ul>
|
|1767
我是物联卡主机|9
物联卡主机|√|√| |√|√|1~60| | |jjf|qfm|
<ul><li>
2050-4GW
</li></ul>
|
|1777
我是真彩主机|7
真彩主机|√|√| |√|√|1~68|1~8|√|jjf|qfm|
<ul><li>
G1000
</li><li>
G1000-4G
</li></ul>
|
|1787
我是简化版物联卡主机|2 简化的
物联卡主机|√|√| |√|√|1~99| | |wzq|qfm|
<ul><li>
5050G-4GW
</li></ul>
|
|1797
我是GPRS主机能打电话|10 GPRS主机能打
电话|√|√| |√|√|1~60| |√|jjf|qfm|
<ul><li>
2050
</li></ul>
|
|1807
我是NB报警接收主机|11
NB报警接收主机| | | |√|√|1~999| | |||
<ul></ul>
|
|1817
我是WiFi主机新版|12 WiFi主机新版|√|√| |√|
|1~99| | |wzq|qfm|
<ul></ul>
|
|1707
主机类型--网络模块|网络模块
主机|√|√|√|√| |1~999|1~8| |jjf|qfm|
<ul><li>
G250
</li></ul>
|
|1717
主机类型--GPRS主机|
GPRS主机|√|√| |√|√|1~99| |√|wzq|qfm|
<ul><li>
4040G
</li><li>
5050G
</li><li>
5050G-4G
</li></ul>
|
|1727
主机类型--液晶主机|
液晶主机|√|√|√|√|√|1~249| |√|jjf|qfm|
<ul><li>
BJQ560
</li><li>
BJQ560B
</li></ul>
|
|1737
主机类型--网线主机|
网线主机|√|√| |√| |1~99| | |wzq|qfm|
<ul><li>
4040R
</li><li>
5050R
</li></ul>
|
|1757
主机类型--三区段主机|
三区段主机|√|√| |√|√|1~191|61~68|√|jjf|qfm|
<ul><li>
G1000
</li><li>
G1000-4G
</li></ul>
|
|1767
主机类型--物联卡主机|
物联卡主机|√|√| |√|√|1~60| | |jjf|qfm|
<ul><li>
2050-4GW
</li></ul>
|
|1777
主机类型--真彩主机|
真彩主机|√|√| |√|√|1~68|1~8|√|jjf|qfm|
<ul><li>
G1000
</li><li>
G1000-4G
</li></ul>
|
|1787
主机类型--物联卡主机|简化
物联卡主机|√|√| |√|√|1~99| | |wzq|qfm|
<ul><li>
5050G-4GW
</li></ul>
|
|1797
主机类型--GRPS主机带电话功能|GPRS主机可
电话|√|√| |√|√|1~60| |√|jjf|qfm|
<ul><li>
2050
</li></ul>
|
|1807
主机类型--NB报警接收主机|
NB报警接收主机| | | |√|√|1~999| | |||
<ul></ul>
|
|1817
主机类型--WiFi主机(新版)|WiFi主机新版|√|√| |√|√
|1~99| | |wzq|qfm|
<ul></ul>
|
### *恒博主机型号示例图片*
...
...
examples/gen_event_md/gen_event_md.cpp
View file @
bd0995ff
...
...
@@ -59,6 +59,12 @@ AdemcoEvent allEvents[] = {
#undef XX
};
HbZoneProperty
allZoneProperties
[]
=
{
#define XX(name, value, str) HZP_##name,
HB_ZONE_PROPERTY_MAP
(
XX
)
#undef XX
};
void
printEvents
(
const
AdemcoEvent
*
events
,
size_t
len
)
{
printf
(
"|事件码|含义|en|
\n
|-----|----|--|
\n
"
);
...
...
@@ -85,7 +91,7 @@ const char* get_core_author(HbMachineType t)
case
HMT_NETMOD
:
case
HMT_LCD
:
case
HMT_TRUE_COLOR
:
case
HMT_
3
_SECTION
:
case
HMT_
THREE
_SECTION
:
case
HMT_IOT
:
case
HMT_GPRS_PHONE
:
return
"jjf"
;
...
...
@@ -104,7 +110,7 @@ const char* get_net_author(HbMachineType t)
case
HMT_GPRS
:
case
HMT_LCD
:
case
HMT_TRUE_COLOR
:
case
HMT_
3
_SECTION
:
case
HMT_
THREE
_SECTION
:
case
HMT_IOT
:
case
HMT_GPRS_PHONE
:
case
HMT_WIFI2
:
...
...
@@ -125,7 +131,7 @@ std::vector<std::string> get_machine_brands(HbMachineType t)
case
HMT_LCD
:
return
{
"BJQ560"
,
"BJQ560B"
};
case
HMT_WIRED
:
return
{
"4040R"
,
"5050R"
};
case
HMT_TRUE_COLOR
:
return
{
"G1000"
,
"G1000-4G"
};
case
HMT_
3
_SECTION
:
return
{
"G1000"
,
"G1000-4G"
};
case
HMT_
THREE
_SECTION
:
return
{
"G1000"
,
"G1000-4G"
};
case
HMT_IOT
:
return
{
"2050-4GW"
};
case
HMT_GPRS_PHONE
:
return
{
"2050"
};
//case hb::common::Nb: return { "" };
...
...
@@ -247,19 +253,19 @@ void print_available_zone_props()
printf
(
"* 防区属性是否支持失联报告
\n\n
"
);
printf
(
"|"
);
for
(
auto
zp
:
hb
ZoneProperties
)
{
for
(
auto
zp
:
all
ZoneProperties
)
{
printf
(
"|"
);
print_prop
(
zp
);
}
printf
(
"|
\n
"
);
printf
(
"|----"
);
for
(
size_t
i
=
0
;
i
<
sizeof
(
hbZoneProperties
)
/
sizeof
(
hb
ZoneProperties
[
0
]);
i
++
)
{
for
(
size_t
i
=
0
;
i
<
sizeof
(
allZoneProperties
)
/
sizeof
(
all
ZoneProperties
[
0
]);
i
++
)
{
printf
(
"|----"
);
}
printf
(
"|
\n
"
);
printf
(
"|失联支持"
);
for
(
auto
zp
:
hb
ZoneProperties
)
{
for
(
auto
zp
:
all
ZoneProperties
)
{
printf
(
"|%s"
,
print_bool
(
hbZonePropCanReportLost
(
zp
)));
}
printf
(
"|
\n\n
"
);
...
...
@@ -267,14 +273,14 @@ void print_available_zone_props()
printf
(
"* 主机类型与支持的防区属性对照表
\n\n
"
);
printf
(
"|事件码|类型|型号"
);
for
(
auto
zp
:
hb
ZoneProperties
)
{
for
(
auto
zp
:
all
ZoneProperties
)
{
//printf("|"); print_prop(zp);
printf
(
"|%02X"
,
(
int
)
zp
);
}
printf
(
"|
\n
"
);
printf
(
"|----|----|----"
);
for
(
size_t
i
=
0
;
i
<
sizeof
(
hbZoneProperties
)
/
sizeof
(
hb
ZoneProperties
[
0
]);
i
++
)
{
for
(
size_t
i
=
0
;
i
<
sizeof
(
allZoneProperties
)
/
sizeof
(
all
ZoneProperties
[
0
]);
i
++
)
{
printf
(
"|----"
);
}
printf
(
"|
\n
"
);
...
...
@@ -288,7 +294,7 @@ void print_available_zone_props()
print_machine_brands
(
t
);
HbZoneProperty
avail_props
[
12
];
int
count
=
hbGetAvailableZoneProperties
(
t
,
avail_props
);
for
(
auto
zp
:
hb
ZoneProperties
)
{
for
(
auto
zp
:
all
ZoneProperties
)
{
printf
(
"|%s"
,
print_bool
(
zprop_is_contain
(
avail_props
,
count
,
zp
)));
}
printf
(
"|
\n
"
);
...
...
hb_com.c
View file @
bd0995ff
This diff is collapsed.
Click to expand it.
hb_com.h
View file @
bd0995ff
This diff is collapsed.
Click to expand it.
tools/copy_from_hb.bat
View file @
bd0995ff
...
...
@@ -3,4 +3,5 @@ xcopy /i /s /y G:\dev_libs\ademco\hb\ademco.c ..\
xcopy /i /s /y G:\dev_libs\ademco\hb\hb_com.h ..\
xcopy /i /s /y G:\dev_libs\ademco\hb\hb_com.c ..\
xcopy /i /s /y G:\dev_libs\ademco\hb\ademco_version.h ..\
xcopy /i /s /y G:\dev_libs\ademco\hb\ademco_config.h ..\
xcopy /i /s /y G:\dev_libs\ademco\hb\CHANGELOG.md ..\
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