Programming Manual for PP-85 / 6750V / 3702
NOTES:
- This protocol is applied for PP-6750V access controller. The manual commands are reserved for further expansion.
- Manual Functions Under F4
* 1. 0850 – To initialize PP-6750V
2. 0072 – To erase all "VM"
3. 0016 – To erase all “ZM”
4. 0018 – To erase all “HM”
5. 0019 – To erase all “LM”
* 6. 0000 – To erase all "PM"
7. 1500/1501 – Disable/Enable compare individual personal map
8. 1600/1601 – Disable/Enable compare personal time zone map
9. 8400/8401 – Disable/Enable store the error event
10. 8600/8601 – Disable/Enable direct printer output
11. 88aa – Change the controller’s address, aa is from “00” to “99”.
12. 3900/3901 – Anti-passback disable/enable.
13. 22TT – Alarm time for system general alarm output. 2200~2299 in unit of sec.
Notes: All funcodes under F4 in PP6750 manual could be set by “FE” command.
- Initial Procedures ( For Pc On-Line Mode )
Step 1. Please set the controller address by F4=88aa
Step 2. Clear or initial the read/write counters.
Step 3. To proceed further system parameters modification.
- PC Commands
Commands index:
1.“FE” Command for setting the F4 function
|
P.3
|
2.“WS” Command for setting the system clock (Week, Hour, Minute and second)
|
P.4
|
3.“WI” Command for inquiring the system clock (Week, Hour, Minute)
|
P.5
|
4.“YS” Command for setting the Year, Month and Date
|
P.7
|
5.“YI” Command for inquiring the Year, Month and Date
|
P.8
|
6."VM" Command for setting authorized doors and time zones for individual personal group (xx doors).
|
P.10
|
7."VI" Command for inquiring VM
|
P.13
|
8."PM" Command for defining personal map.
|
P.14
|
9."PI" Command for inquiring personal map.
|
P.18
|
10."ENQ" Command for reading a record from controller
|
P.21
|
11."ACK" Command for opening door to the controller
|
P.25
|
12.”SN” Command for inqruiry door opend/closed status
|
P.26
|
13."ZM" Command for programming the time zone map
|
P.28
|
14.“ZI” Command for inquiring time zone map
|
P.31
|
15.“HM” Command for setting holiday
|
P.32
|
16.“CI” Command for reading & writing counter inquiry
|
P.34
|
17.“BC” Command for adjusting the read/write counter
|
P.35
|
18.“DU” Command for dumping the events
|
P.37
|
19.Print out message under 8601
|
P.39
|
20.Inquire the card numbers which have been enroled from the controller by F4=8599
|
P.40
|
21.Setting the door pin code by F4=460n
|
P.43
|
22.”GV” Command for ask the reader’s version.
|
P.44
|
C.1 Events Related Commands
01. “CI” EVENT READING & WRITING COUNTER INQUIRY
*01 02. “DU” EVENT DUMP
C.2 Print Out Format
*** NOTE: The newly enhanced commands will be marked with “*” and number for date to be referred
*01 = 2008/03/01
=======================================================================
1. “FE” Command for setting the F4 function.(Total 12 bytes)
HT
|
FE a a
|
x x x x
|
G
|
CR
|
LF
|
Data Structure:
Field
|
Data
|
Description
|
Length
|
H T
|
0x09
|
Start code. Ctrl I
|
1 byte
|
F E
|
0x46 ,0x45
|
The Function execution command code.
|
2 bytes
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
x x x x
|
|
The numerical function code under F4. “x” should be to “0”~”9”, (0x30)~ (0x39)
|
4 bytes
|
G
|
0x47
|
The suffix check code. (0x47)
|
1 byte
|
C R
|
0x0D
|
Carriage return. (0x0D)
|
1 byte
|
L F
|
0x0A
|
Line feed. (0x0A)
|
1 byte
|
The command is used to set the system function codes included in F4. Usually, the Function codes are programmed thru the integral keypad at the reader. However, for some occasion, the programmer can program the function code by software program to the desired operation code, such as adjust the door release time etc., All of the function codes included under Function code 4 in the user’s manual can be programmed. However, the 88nn should be carefully executed during polling mode because it will change the polling address. For any reader, if address aa is forgot, the NW aa could be executed to modify the reader address as “aa”.
- Return message by “FE” command.(Total 7 bytes)
Data Structures:
Field
|
Data
|
Description
|
Length
|
T
|
0x54
|
Starting code for answering.
|
1 byte
|
S
|
If S= NAK (0x 15), it’s not setting ok.
If S=ACK (0x 06), it’s setting ok.
|
feed back state
|
1 byte
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
ETX
|
0x03
|
Ending code.
|
1 byte
|
C R
|
0x0D
|
Carriage return.
|
1 byte
|
L F
|
0x0A
|
Line feed.
|
1 byte
|
- “WS” Command for setting the system clock (Week, Hour, Minute and second)(Total 16 bytes)
Syntax:
BS
|
W S a a
|
W 0 h h m m s s
|
G
|
CR
|
LF
|
Data Structure:
Field
|
Data
|
Description
|
Length
|
B S
|
0x08
|
Start code. By Ctrl H.
|
1 byte
|
W S
|
0x 57, 0x53
|
The Week Set command code. “W” (0x 57), “S” (0x53). For setting weekday, hours, minutes & seconds.
|
2 bytes
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
w
|
“0”~”6”
|
The weekday code ranged from “0” till “6” (0x30) ~ (0x36), please refer to description for function code 2 in operational manual.
|
1 byte
|
0
|
0x30
|
Meaningless code. “0” (0x30)
|
1 byte
|
h h
|
“00”~”23”
|
The hour code. Ranged from “00” till “23”. “0”~”9” expressed as (0x30)~ (0x39).
|
2 bytes
|
m m
|
“00”~”59”
|
The minute code ranged from “00” till “59”. “0”~”9” expressed as (0x30)~ (0x39).
|
2 bytes
|
s s
|
“00”~”59”
|
The seconds ranged from “00”~”59”.
|
2 bytes
|
G
|
0x47
|
The suffix check code.
|
1 byte
|
C R
|
0x0D
|
Carriage return.
|
1 byte
|
L F
|
0x0A
|
Line feed.
|
1 byte
|
Description:
The command is used to set the system clock which include weekday, hour in 24 hour mode and minute, seconds.
2.1 Return message by “WS” command
Same with the return message by “FE”.
- “WI” Command for inquiring the system clock (Week, Hour, Minute)(Total 5 bytes)
Syntax:
Data Structure:
Field
|
Data
|
Description
|
Length
|
ACK
|
0x06
|
Decimal code 06 or Hex code 06
|
1 byte
|
W I
|
0x57, 0x49
|
The Week Set command code. “W” (0x 57), “I” (0x49). For inquiring weekday, hours, minutes.
|
2 bytes
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
Description:
The command is used to inquiry the system clock which include weekday, hour in 24 hour mode and minute, seconds.
- Return message by “WI” command.(Total 19 bytes)
3.1.1 Command well received
Data Structures:
Field
|
Data
|
Description
|
Length
|
T
|
0x54
|
Starting code for answering.
|
1 byte
|
S
|
If S= NAK (0x 15), it’s not setting ok.
If S=ACK (0x 06), it’s setting ok.
|
feed back state
|
1 byte
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
ETX
|
0x03
|
Ending code.
|
1 byte
|
C R
|
0x0D
|
Carriage return.
|
1 byte
|
L F
|
0x0A
|
Line feed.
|
1 byte
|
3.1.2 Result of command for inquiring the system clock (Week, Hour and Minute & second)
Field
|
Data
|
Description
|
Length
|
STX
|
0x02
|
Starting code.
|
1 byte
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
w
|
“0”~”6”
|
The weekday code ranged from “0” till “6” (0x30) ~ (0x36), please refer to description for function code 2 in operational manual.
|
1 byte
|
:
|
0x3A
|
Meaningless code. “:” (0x3A)
|
1 byte
|
h h
|
“00”~”23”
|
The hour code. Ranged from “00” till “23”. “0”~”9” expressed as (0x30)~ (0x39).
|
2 bytes
|
m m
|
“00”~”59”
|
The minute code ranged from “00” till “59”. “0”~”9” expressed as (0x30)~ (0x39).
|
2 bytes
|
G
|
0x47.
|
The suffix check code.
|
1 byte
|
CR
|
0x0D
|
Carriage return.
|
1 byte
|
LF
|
0x0A
|
Line feed.
|
1 byte
|
- “YS” Command for setting the Year, Month and Date.(Total 14 bytes)
Syntax:
BEL
|
Y S a a
|
y y m m d d
|
G
|
CR
|
LF
|
Data Structure:
Field
|
Data
|
Description
|
Length
|
B E L
|
0x07
|
Decimal code 07.
|
1 byte
|
Y S
|
0x59, 0x53
|
The command code for setting calendar year, month & date. “Y” (0x59), “S” (0x53)
|
2 bytes
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
y y
|
“00”~”99”
|
The last two digits of A.D. calendar year code (“00” till “99”)
|
2 bytes
|
m m
|
“00”~”12”
|
The month code ranged from “01” till “12” for January till December. “0”~“9” in(0x30) ~ (0x39)
|
2 bytes
|
dd
|
“01”~”31”
|
The date code ranged from “01” till “31” , “0”~”9” in (0x30) ~ (0x39)
|
2 bytes
|
G
|
0x47.
|
The suffix check code.
|
1 byte
|
C R
|
0x0D
|
Carriage return.
|
1 byte
|
L F
|
0x0A
|
Line feed.
|
1 byte
|
Description:
The command is used to set the system calendar which include the last two digits of year, month and date.
4.1 Return message by “YS”
Same with the return message by “FE”.
- “YI” Command for inquiring the Year, Month and Date.(Total 5 bytes)
Syntax:
Data Structure:
Field
|
Data
|
Description
|
Length
|
ACK
|
0x06
|
Decimal code 06 or Hex code 06
|
1 byte
|
Y I
|
0x 59, 0x49
|
The command code for inquiring calendar year, month & date. “Y” (0x59), “I” (0x49)
|
2 bytes
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
Description:
The command is used to inquiry the system calendar which include the last two digits of year, month and date.
- Return message by “YI” command.(Total 19 bytes)
5.1.1 Command well received
Data Structures:
Field
|
Data
|
Description
|
Length
|
T
|
0x54
|
Starting code for answering.
|
1 byte
|
S
|
If S= NAK (0x 15), it’s not setting ok.
If S=ACK (0x 06), it’s setting ok.
|
feed back state
|
1 byte
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
ETX
|
0x03
|
Ending code.
|
1 byte
|
C R
|
0x0D
|
Carriage return.
|
1 byte
|
L F
|
0x0A
|
Line feed.
|
1 byte
|
5.1.2 Result of command for inquiring the Year, Month and Date
Field
|
Data
|
Description
|
Length
|
STX
|
0x02
|
Starting code.
|
1 byte
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
y y
|
“00”~”99”
|
The last two digits of A.D. calendar year code (“00” till “99”)
|
2 bytes
|
m m
|
“00”~”12”
|
The month code ranged from “01” till “12” for January till December. “0”~“9” in(0x30) ~ (0x39)
|
2 bytes
|
dd
|
“01”~”31”
|
The date code ranged from “01” till “31” , “0”~”9” in (0x30) ~ (0x39)
|
2 bytes
|
G
|
0x47.
|
The suffix check code.
|
1 byte
|
CR
|
0x0D
|
Carriage return.
|
1 byte
|
LF
|
0x0A
|
Line feed.
|
1 byte
|
- “VM" command for setting authorized doors and time zones for individual personal group (xx doors)(Total 40 bytes)
|
VMaa
|
0 0 L L
|
ZZ
|
TT
|
A1 A2 A3 A4 ...... A16
|
GGGGGGGGG
|
|
|
A1..A16: 16 bytes for floors. ZZ: 8 bits for time zones in individual door.
Field
|
Data
|
Description
|
Length
|
DC3
|
0x13
|
Start code. Ctrl S . To receive 35 bytes after VMaa
|
1 byte
|
VM
|
0x56
0x4D
|
The command code for individual group map which includes ZZ for tome zone authorized by bit basis. A1-A16 defined for floors authorized. “V”(0x56 ), ”(0x4D )
|
2 bytes
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
00LL
|
“0001”~”0095”
|
LL: Personal group number from “01”~”90”, For “0”~”9” as “0” (0x30) to “9” (0x39).
|
4 bytes
|
“AAAA”
|
Fix code, to open the door by single floor.
|
ZZ
***
|
|
ZZ: Authorized time zones for the group. Defined by number (nn) of “81”~”88” thru the manual command 62LL.
ZZ is composed by b7-b0 in bits basis to represent Z8 ( zone 8), Z7, Z6, Z5, Z4, Z3, Z2, Z1(zone 1) . When bit=1, it means the corresponding Time zone is authorized. Also, by manual F4 + 72 nn, where nn=81-88 could delete the corresponding time zones.
Otherwise, If bit=0, The corresponding Time zone is prohibited.
Examples: ZZ = 1 0 0 1 0 1 1 0
Zone No: Z8 Z7 Z6 Z5 Z4 Z3 Z2 Z1
Where Z0= Time zone 1., Z7= Zone 08
Means door Z7,Z4,Z2,Z1 are authorized for this personal group. The corresponding code in ASCII for ZZ is “96” (0x 39, 0x36.)
|
2 bytes
|
TT
|
|
Reserved for further application.
Such as Time zones 09-16 .composed by d7-d0. When bit=1, it means all time pass, bit=0,it means not all time pass and defined by time zone setting..
Examples: T T (45) = 0 1 0 0 0 1 0 1
Door No: T1 T2 T3 T4 T5 T6 T7 T8
Where T1= Door nr 00., T8= Door nr. 07
Means door T2,T6,T8 are general authorized for this personal group. Don’t need toCheck the individual time zones.
( by manual command 66LL/77LL nn. nn=88-95
|
2 bytes
|
A1-....
A16
|
Open multi door by one group
|
For Lift (floors) control from 1st to 63th floors.
Every two bytes A1A2, A3A4,….A15.A16 convert as one hex byte and each hex byte represents for 8 floors. Totally 8 bytes are sent to external Relay Box for 64 floors control. If the bit=1, the corresponding floor is “ON”, otherwise, it is “OFF”. For example: If A1.A2 is “25” ( 0x32, 0x35) , it is convert as one byte 0x25. In binary as 0 0 1 0 . 0 1 0 1 to represent floors 3, 6, 8 are authorized.
In the same way, A3.A4 for floors 9 to floor 16 and so on.
|
16 bytes
|
Open door by single floor once
|
To open door by floor 1: 1000 0000 …….., it is convert to 0x80, 0x30………
To open door by floor 3: 0010 0000 …….. , it is convert to 0x20, 0x30………
|
|
GGGGGGGGG
|
0x47
|
Checking code.
|
9 bytes
|
C R
|
0x0D
|
Carriage return.
|
1 byte
|
L F
|
0x0A
|
Line feed.
|
1 byte
|
6.1 Return message by “VM”. (Total 13 bytes)
T
|
S
|
a a
|
ETX
|
CR
|
LF
|
T
|
G
|
a a
|
ETX
|
|
|
The 1st string for command received and the 2nd respond for command executed.
Data Structures:
Field
|
Data
|
Description
|
Length
|
T
|
0x54
|
Starting code for answering.
|
1 byte
|
ACK
|
0x06
|
Hex code. Answer back
|
1 byte
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
ETX
|
0x03
|
Ending code.
|
1 byte
|
CR :
|
0x0D
|
Carriage Return.
|
1 byte
|
LF :
|
0x 0A
|
Lind feed.
|
1 byte
|
TGaa
|
|
TG: the setting is ok, T(0x 54 ),G(0x 47 )
T : The setting is not ok,2 bytes, T(0x 54 ),NAK(0x 15)
aa:The controller’s address,2 bytes, “00” ~”99” .
|
2 bytes
|
ETX
|
0x 03
|
Ending code.
|
1 byte
|
CR :
|
0x 0D
|
Carriage Return.
|
1 byte
|
LF :
|
0x 0A
|
Lind feed.
|
1 byte
|
7. "VI" Command for inquiring VM. (Total 12 bytes)
Data Structure:
Field
|
Data
|
Description
|
Length
|
HT
|
0x09
|
Start code. Ctrl I .
|
1 byte
|
VIaa
|
0x56, 0x4D
|
Command for query VM contents.
“V”(0x 56 )
“I”(0x 4D )
aa: The controller’s address.
|
4 bytes
|
00LL
|
“0001”~”0095”
|
LL: Personal group number from “01”~”90”, For “0”~”9” as “0” (0x 30) to “9” (0x 39).
|
4 bytes
|
G :
|
0x47
|
Checking code.
|
1 bytes
|
CR :
|
0x0D
|
Carriage Return.
|
1 byte
|
LF :
|
0x0A
|
Lind feed.
|
1 byte
|
7.1 Return message by “VI” command.(Total 55 bytes)
|
aaP
|
xxxxx
|
ZZ
|
TT
|
A1 A2 A3 A4 ........... A16
|
E1 E2... E17
|
|
|
Data Structures:
Field
|
Data
|
Description
|
Length
|
T
|
0x54
|
Starting code for answering.
|
1 byte
|
ACK
|
0x06
|
Hex code. Answer back
|
1 byte
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
ETX
|
0x03
|
Ending code.
|
1 byte
|
C R
|
0x0D
|
Carriage return.
|
1 byte
|
L F
|
0x0A
|
Line feed.
|
1 byte
|
STX
|
0x02
|
Starting code.
|
1 byte
|
aaP
|
|
aa= address, P=0x50, means printing out.
|
3 bytes
|
xxxxx
|
|
Meaningless bytes
|
5 bytes
|
ZZ
|
|
Authorized Time Zones defined by number of 81-88 for manual command 66LL nn.... ZZ is composed by d7-d0. When bit=1, it means the corresponding time zone is authorized.
Same as defined in “VM”.
|
2 bytes
|
TT
|
|
Same as defined in “VM”.
|
2 bytes
|
A1-....A16
|
|
Same as defined in “VM”.
|
16 bytes
|
E1..E17
|
|
Meaningless.
|
17 bytes
|
CR :
|
0x0D
|
Carriage Return.
|
1 byte
|
LF :
|
0x0A
|
Lind feed.
|
1 byte
|
8. "PM" command for defining personal map. (Total 46 bytes)
Note:
- To enable personal access map function should be set up with 1501 first.
- To enroll a card number to controller with personal access map, please use “PM” command which the “G” of “LLGT” should be “1”.
- To delete a card number from controller with personal access map, please use “PM” command which the “G” of “LLGT” should be “0”.
- The general group LL is ranged from 00-90. For 91-98 are defined as special purpose such as patrol, etc.
|
PMaa
|
CCCCCCCC
|
LL GT
|
KKKK
|
SSSSSSSS
|
Only at F4=9601 extended PM mode could the name could be saved.
Field
|
Data
|
Description
|
Length
|
DC4
|
0x14
|
Starting code. Ctrl T
|
1 byte
|
PM
|
0x50,
0x4D
|
Command for personal map.
“P”(0x 50 )
“M”(0x 4D )
|
2 bytes
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
CCCCCCCC
|
|
Card number.
|
8 bytes
|
LL
|
“00”~”90”
|
Group number. The group detailed contents is defined by VM LL.
LL is from “00”~“90”.
|
2 bytes
|
GT
|
|
G=General Authorization Status) & T= General Time zone authorization status
which is consisted of bits b7-b0 and defied as following:
***Note: for general access control, only bit0 is needed to be defined. Other bits are cleared.
b7 -- General status for general APB (Anti-passback).
If =1, it is In/Out APB for individual door
If =0, APB for general doors ((Multiple doors in one area).
b6 -- out status for General APB, generated by access
b5 -- "in" status for General APB , generated by access
** b4 -- General legal/illegal card
If =1, legal card for the system, then check legal status for each door. Defined by VM according to belonging group. If =0, illegal
b3-b1 -- Dont care. Reserved now.
** b0 -- General time zone authorization.
If =1, Dont need check Time zone. If =0, Need check Time zones for access by referring to TT in VM.
|
2 bytes
|
KKKK
|
|
Personal password PIN number. The value is from “0001” to”9999”.
|
4 bytes
|
|
|
Meaningless two bytes.
|
2 bytes
|
SSSSSS / YYMMDD
|
|
As Staff number. To be displayed by enabling the code of F4,2901
|
6 bytes
|
|
Or as Expired Date by YYMMDD, enabled by F4,2601
|
NNNNNNNN
|
|
User name. For English name, with 8 characters
|
8 bytes
|
If the controller support Chinese words display, you may set 4 Chinese words in big-5 code.
Ex:林, big-5 code is “AA4C”, 0xAA,0x4C, then input the other 6 bytes.
|
GGGGGGG
|
0x47
|
Checking code.
|
7 bytes
|
CR :
|
0x0D
|
Carriage Return.
|
1 byte
|
LF :
|
0x0A
|
Lind feed.
|
1 byte
|
8.1 Return message by “PM” command. (Total 14 bytes)
For the response command, with two text as following:
8.1.1 Command well received
Field
|
Data
|
Description
|
Length
|
T
|
0x54
|
Starting code for answering.
|
1 byte
|
ACK
|
0x06
|
ASCII code. Answer back
|
1 byte
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
ETX
|
0x03
|
Ending code.
|
1 byte
|
CR :
|
0x0D
|
Carriage Return.
|
1 byte
|
LF :
|
0x0A
|
Lind feed.
|
1 byte
|
8.1.2 Command executed
Field
|
Data
|
Description
|
Length
|
T
|
0x54
|
Starting code for answering.
|
1 byte
|
S
|
0x47
0x15
|
If S = G ( 0x47), command is well executed.
If S = NAK ( 0x15), command is not well executed.
|
1 byte
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
ETX
|
0x03
|
Ending code.
|
1 byte
|
CR :
|
0x0D
|
Carriage Return.
|
1 byte
|
LF :
|
0x0A
|
Lind feed.
|
1 byte
|
9. “PI” command inquiry of personal map. (Total 16 bytes)
Field
|
Data
|
Description
|
Length
|
BS
|
0x08
|
Start code .(Dec code 08 or Hex code 08)
|
1 byte
|
PI
|
0x50,
0x49
|
Command for query personal map PM
“P”(0x 50 )
“I”(0x 49 )
|
2 bytes
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
CCCCCCCC
|
|
Card Number.
|
8 bytes
|
G
|
0x47
|
Checking code.
|
1 byte
|
C R
|
0x0D
|
Carriage return.
|
1 byte
|
L F
|
0x0A
|
Line feed.
|
1 byte
|
9.1 Return message (Total 55 bytes)
9.1.1 Command well received
The above answerback should be combined by two commends separated by “LF”. That is another started from “STX aa”
and should be same as “PM” command sent.
Field
|
Data
|
Description
|
Length
|
T
|
0x54
|
Starting code for answering.
|
1 byte
|
ACK
|
0x06
|
ASCII code, (Dec code 06 or Hex code 06) Answer back
|
1 byte
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
ETX
|
0x03
|
Ending code.
|
1 byte
|
C R
|
0x0D
|
Carriage return.
|
1 byte
|
L F
|
0x0A
|
Line feed.
|
1 byte
|
9.1.2 Inquiry of personal map
|
aaPE
|
CCCCCCCC
|
LL GT
|
KKKK
|
SSSSSSSS
|
NNNNxxxx
|
xxxxxxxxx
|
|
|
Field
|
Data
|
Description
|
Length
|
STX
|
0x02
|
Starting code.
|
1 byte
|
aaPE
|
|
aa: The controller’s address,
P means Printing out. E: meaningless byte.
|
4 bytes
|
CCCCCCCC
|
|
Card number.
|
8 bytes
|
LL
|
|
Group number. The group detailed contents is defined by VM LL. LL is from “01” to “90”.
|
2 bytes
|
GT
|
|
GENERAL ACCESS AUTHORIZE (G) & GENERAL TIME ZONE STATUS
which is consisted of b7-b0 and defied as following:
b7 -- General status for general APB (Anti-passback).
If =1, it is In/Out APB for individual door
If =0, APB for general doors ((Multiple doors in one area).
b6 -- out status for General APB
b5 -- "in" status for General APB
b4 -- General legal/illegal card.
If b4 =1, legal card for the system, then check legal status for each door. Defined by VM according to belonging group.
If b4=0, the card is illegal.
b3-b1 -- Dont care. Reserved now.
b0 -- General time zone authorized.
If b0=1, Dont need check Time zone.
If b0=0, Need check Time zones for access.
|
2 bytes
|
KKKK
|
|
PIN.
|
4 bytes
|
SSSSSSSS
|
|
Staff number.
|
8 bytes
|
NNNNxxxx
|
|
Staff name., xxxx: meaningless. Can only F4=9601 is enabled, the full name could be retrieved.
|
8 bytes
|
xxxxxxxxx
|
|
Meaningless.
|
9 bytes
|
C R
|
0x0D
|
Carriage return.
|
1 byte
|
L F
|
0x0A
|
Line feed.
|
1 byte
|
10. "ENQ" command for retrieve event data from controller. (Total 5 bytes)
Data Structure:
Field
|
Data
|
Description
|
Length
|
E N Q
|
0x05
|
Decimal code 05 or Hex code 05
|
1 byte
|
DO
|
0x44,0x4F
|
Fixed Code. Do’t cared codes.
|
2 bytes
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
10.1 Response from "DO" command.(Total 7 bytes)
10.1.1If event buffer is empty:
Data Structure:
Field
|
Data
|
Description
|
Length
|
T
|
0x54
|
Starting code for answering.
|
1 byte
|
E O T
|
0x04
|
Decimal code 04 or Hex 04.
|
1 byte
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
ETX
|
0x03
|
Ending code.
|
1 byte
|
C R
|
0x0D
|
Carriage return.
|
1 byte
|
L F
|
0x0A
|
Line feed.
|
1 byte
|
10.1.2 If have any event data existed :
STX
|
a a
|
t
|
f
|
JJ
|
Sccccc
|
CCCCCCCC
|
kkkk
|
y y m m d d
|
w:h h m m
|
n n n n n
|
|
ETX
|
BCC
|
*
|
G
|
CR
|
LF
|
Field
|
Data
|
Description
|
Length
|
S T X
|
0x02
|
Starting of text.
|
1 byte
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
t
|
|
The type of stored event:
” I ” (0x49) ---- Real time data by reading card
“ K ” (0x4B)--- Real time data by keying password.
“ D “(0x44) -- Stored data due to reading card
“ k “(0x6B) -- Stored d ata due to key in ID.
“ E “(0x45) --- Error message saved by F4=8401 (store error status).
“ M “(0x4D) --- Alarm message , for door held alarm,
“ N “(0x4E) --- DOOR CLOSED * option
|
1 byte
|
f
|
|
For PP-6750V --- “f” is the duty code from “0” till “8” exclude “4” for system
programing code.
Will be assigned to succeed to “S”. But till now, not defined yet.
1byte. The duty code from 1 to 8 is selected by user from keypad directly and is coincident with the duty names on keypad panel. 1 byte. (“0”~”8”– access by the 6750 controller)
“1” – WORK
“2” – OFF
“3” –O.ON
“5” – Out
“6” –BACK
“7“– BREAK
“8” –User Defined for succeeding two digits code.
“9”–access by the extra reader
|
1 byte
|
JJ
|
|
JJ for status
JJ = “01”- “80” for legal access. 2 digits job code by D 8( transparent “8” for duty code and then keyin 2 digits of job code)
“78” saved the “exit” event by enabled F4=8402. Simulate the card number as “99999988”
“79” Duress access
------------ illegal Access ------------------------------------------
J J = “81-9?” for error codes:
“81” (0x38, 0x31) P.ERR --- Pass word error
“82” (0x38, 0x32) C.ERR –- card error
“83” (0x38, 0x33) Z.ERR --- Time zone error
“85” (0x38, 0x35) T.ERR – Trial error
“88” (0x38, 0x38) V.ERR – Validity error
“89” (0x38, 0x39) A.ERR – Anti pass back error
“8 :” (0x38, 0x3A) Event Read/Write error
;----------Door Monitoring Status ---------------
“98” -- PATROL Patrolling event
“9 : ” (0x39, 0x3A) Door intruded
“9 ; ” (0x39, 0x3B) Door held opening
“9 <” 0x39="" 0x3c="" sm="" intruded="" p="">
“9 =” (0x39, 0x3D) Door closed again * option
“9 >” (0x39, 0x3E) SM1 closed again * option
|
2 bytes
|
cccccc
|
|
cccccc reserved for Extend card number.recording
|
6 bytes
|
CCCCCCCC
|
|
8D Card number. C should be from “0” to “9” (0x30)~ (0x39).
|
8 bytes
|
k k k k
|
|
User 4 digits PIN keying for real time checking thru PC (Host) database
“ ----“ 0x2d x 4 for events
|
4 byte
|
y y m m d d
|
|
The calendar year, month and date.
yy:The last two digits of A.D. calendar year code ( “00” till “99” )
m m:The month code ranged from “01” till “12”(0x 31)~ (0x32)
dd:The date code ranged from “01” till “31”(0x31)~ (0x31)
|
6 bytes
|
w:h h m m
|
|
The weekday, hour and minute.
w:The weekday code ranged from “0” till “6” (0x30)~ (0x36) , please refer to description for function code 2 in operational manual.
[:]:separate code(0x 3A).
hh:The hour code ranged from “00” till “23”. (0x30)~ (0x 33)
mm:The minute code ranged from “00” till “59”. (0x 30)~ (0x39)
|
6 bytes
|
nnnnn
|
|
Remaining records stored in the buffer. n should be from “0” to “9” (0x 30)
(0x39).
|
5 bytes
|
ETX
|
0x03
|
Ending code.
|
1 byte
|
BCC
|
|
Check sum between STX and ETX.
|
1 byte
|
*
|
0x2A
|
The fix code
|
1 byte
|
0x30~0x3F
|
expand to 4 bit. “1”= on , “0”= off
Bit 3:alarm on/off
Bit2: sm on /off
Bit1:dm on/off
Bit0: motor on/off
|
G
|
0x 47
|
The fix code for suffix check.
|
1 byte
|
C R
|
0x 0D
|
Carriage return.
|
1 byte
|
L F
|
0x 0A
|
Line feed.
|
1 byte
|
11. "ACK" command for opening door to the controller. (Total 5 bytes)
Data Structure:
Field
|
Data
|
Description
|
Length
|
ACK
|
0x06
|
Decimal code 06 or Hex code 0x06
|
1 byte
|
DO
|
0x44, 0x4F
|
Fixed Code for Door Release
|
2 bytes
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
11.1 Return message by ACK command. (Total 6 bytes)
Data Structures:
Field
|
Data
|
Description
|
Length
|
T
|
0x54
|
Starting code for answering.
|
1 byte
|
S
|
If S= NAK (0x 15), Command is not well set.
If S=ACK (0x 06), Command is well set..
|
feed back status
|
1 byte
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
ETX
|
0x03
|
Ending code.
|
1 byte
|
C R
|
0x0D
|
Carriage return.
|
1 byte
|
L F
|
0x0A
|
Line feed.
|
1 byte
|
12."SN" Command for inqruiry of door opened/closed status. (Total 5 bytes)
Data Structure:
Field
|
Data
|
Description
|
Length
|
ACK
|
0x06
|
Decimal code 06 or Hex code 0x06
|
1 byte
|
SN
|
0x53, 0x4E
|
Fixed Code for inquiry status
|
2 bytes
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
12.1 Return message by ACK command. (Total 15bytes)
Data Structures:
Field
|
Data
|
Description
|
Length
|
T
|
0x54
|
Starting code for answering.
|
1 byte
|
S
|
If S= NAK (0x 15), Command is not well set.
If S=ACK (0x 06), Command is well set..
|
feed back status
|
1 byte
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
ETX
|
0x03
|
Ending code.
|
1 byte
|
C R
|
0x0D
|
Carriage return.
|
1 byte
|
L F
|
0x0A
|
Line feed.
|
1 byte
|
Field
|
Data
|
Description
|
Length
|
S T X
|
0x02
|
Starting of text.
|
1 byte
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
N0
|
N:0x30~0x3F
0:0x30
|
N: expand to 4 bit. “1”= on , “0”= off
Bit 3:alarm on/off
Bit2: sm on /off
Bit1:dm on/off
Bit0: motor on/off
0x30: reserved
|
2bytes
|
G
|
0x47
|
Ending code.
|
1 byte
|
C R
|
0x0D
|
Carriage return.
|
1 byte
|
L F
|
0x0A
|
Line feed.
|
1 byte
|
13."ZM" Command for programming the time zone map. (Total 26 bytes)
DC2
|
ZMaa
|
00nn
|
ssss
|
eeee
|
ww
|
IIOO
|
G
|
CR
|
LF
|
Data Structure:
Field
|
Data
|
Description
|
Length
|
D C 2
|
0x12
|
ASCII code 18. ( Ctrl R ) (0x12)
|
1 byte
|
Z M
|
0x5A, 0x4D
|
The time zone map programming command code.
“Z”(0x5A )
“M”(0x4D)
|
2 bytes
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
0 0 n n
|
|
The 2 digits time zone number with 2 preceding digits “00”. If want check personal access time zone , then code 1601 of F4 should be enabled.
nn is from “01” to “08”
|
4 bytes
|
nn is from “11” to “18”
Enable free access: Enable F4,3801
Enable auto duty shift code mode: Enable F4,3802
Enable automatic operation mode: Enable F4,3803
|
s s s s
|
|
The starting time (hour and minute) for the time zone.
ssss should be from “0000” to “2359” (0x30, 0x30, 0x30, 0x30)~ (0x32, 0x33, 0x35, 0x39)
|
4 bytes
|
eeee
|
|
The ending time (hour and minute) for the time zone.4 bytes.
eeee should be from “0000” to “2359” (0x30, 0x30, 0x30, 0x30)~ (0x32, 0x33, 0x35, 0x39)
|
4 bytes
|
w w
|
|
The weekly bits defined to signify the legal weekdays applied for the specific time zone. Similar to zz in Personal Message, the bit definition for the 8 bits are defined as following:
1st nibble ( 4 bits ) 2nd nibble ( 4 bits )
---------------------- ------------------------
g w6 w5 w4 w3 w2 w1 w0
gen. Sat. Fri. Thu. Wed. Tue. Mon. Sun
The meaning of each bit is explained as follow:
g – The general authorized status for weekdays. If “ 1 “ ( means Yes ) is entered, the succeeding bits w0 till w6 will be meaningless. If “ 0 “ ( means No ) is entered, the succeeding bits w6 till w0 should be defined one by one to select the desired weekday by “ 0 “, it means this start-stop time period is legal for access during the corresponding weekday. The w6 till w0 are the corresponding weekday bits.
Each bit is defined as following:
w6 – Saturday “ 1 “ – controlled, “ 0 “ – ignored
w5 – Friday “ 1 “ – controlled, “ 0 “ – ignored
w4 – Thursday “ 1 “ – controlled, “ 0 “ – ignored
w3 – Wednesday “ 1 “ – controlled, “ 0 “ – ignored
w2 – Tuesday “ 1 “ – controlled, “ 0 “ – ignored
w1 –Monday “ 1 “ – controlled, “ 0 “ – ignored
w0 – Sunday “ 1 “ – controlled, “ 0 “ – ignored
The weekdays bits g, w6, w5, w4 will be sent by code 3X in
hex, where X ranges from 0 to F depending on the weekday bits
combination. The same for weekday bits w3-w0.
For example, if Saturday, Thursday and Wednesday, Tuesday
are allowed for the time zone, then the weekday bits
combination is as following:
0 1 0 1 1 1 0 0
and the bytes to be sent for ww are 0x35 and 0x3C in hex and 53 and
60 by decimal.
The bit “ 1 “ is for corresponding legal weekday and bit “ 0 “
for illegal weekday.
|
2 bytes
|
I I O O
|
|
Bytes reserved for future definition.
Under 3803 mode, the first I is determine the operation is card only or card +pin . “0”:card only, “1”: card +pin
|
4 bytes
|
G
|
0x47
|
The suffix check code.
|
1 byte
|
C R
|
0x0D
|
Carriage return.
|
1 byte
|
L F
|
0x0A
|
Line feed.
|
1 byte
|
Notice:
- To enable time zone function , F4=1601 should be enabled.
- The value of starting time and ending time should be between 0000 and 2359.
- The ending time should be later than starting time
- The next starting time should be later than or equal previous starting time
- The next ending time should be later than or equal previous ending time
- When across 23:59, another time zone should be built.
13.1 Return message by “ZM” command.
Same with return message by “PM”.
14. Command for inquiring the specific time zone map. (Total 12 bytes)
HT
|
Z I a a
|
0 0 n n
|
G
|
CR
|
LF
|
Data Structure:
Field
|
Data
|
Description
|
Length
|
H T
|
0x09
|
Hex code 09. (Ctrl I).
|
1 byte
|
Z I
|
0x5A, 0x49
|
The time zone map inquiry command code.
“Z”(0x5A )
“I”(0x49)
|
2 bytes
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
0 0 n n
|
|
The 4 digits time zone number ranged from “0001” till “0064”
The maximum time zone number should be limited by the system
specification. n should be from “0” to “9” (0x30)~ (0x39)
|
4 bytes
|
G
|
0x47
|
The suffix check code.
|
1 byte
|
C R
|
0x0D
|
Carriage return.
|
1 byte
|
L F
|
0x0A
|
Line feed.
|
1 byte
|
Description:
The PC downed time zone map by “ ZM “ command or by manual setting by integral keypad of the reader can be inquired by the “ ZI “ time zone inquiry command thru the PC or the host by sending the ZI command to specific controller and get the zone map. If the command is accepted, the reader will answer back Text 6.2 of “ Good “ message. If the command isn’t correct, the “ NAK “ as text 4.1 will be answered. The computer can judge whether to accept the Personal Map responsed as Text 4.3 or repeat the PI command according to the content of answer back message.
14.1 Return message by “ZI” command. (Total 45 bytes)
Syntax:
P 0
|
0 0 n n
|
s s s s
|
eeee
|
ww
|
x x x……..…..x x
|
CR
|
LF
|
Data Structure:
Field
|
Data
|
Description
|
Length
|
P 0
|
0x50, 0x30
|
“P” is the fixed code for data type, means the “ print out data “.
“0” is meaningless byte.
“P”(0x50 )
“0”(0x30)
|
2 bytes
|
x x x x
|
|
The 4 don’t card bytes
|
4 bytes
|
s s s s
|
|
The starting time (hour and minute) for the time zone.
ssss should be from “0000” to “2359” (0x30, 0x30, 0x30, 0x30)~ (0x32, 0x33, 0x35, 0x39)
|
4 bytes
|
eeee
|
|
The ending time (hour and minute) for the time zone.4 bytes.
eeee should be from “0000” to “2359” (0x30, 0x30, 0x30, 0x30)~ (0x32, 0x33, 0x35, 0x39)
|
4 bytes
|
w w
|
|
Same as defined in ZM command.
|
2 bytes
|
x x……x x
|
|
The reserved code. Now is meaningless.
|
27 bytes
|
C R
|
0x0D
|
Carriage return.
|
1 byte
|
L F
|
0x0A
|
Line feed.
|
1 byte
|
Events related command
15. Command for setting holiday. (Total 14 bytes)
BEL
|
HMaa
|
mm
|
0n
|
dd
|
G
|
CR
|
LF
|
Data Structure:
Field
|
Data
|
Description
|
Length
|
BEL
|
0x07
|
Hex code 09. (Ctrl G).
|
2 bytes
|
HM
|
|
The setting holiday command code.
“H”(0x48 )
“M”(0x4D)
|
4 bytes
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
mm
|
|
The month, 01~12
|
2 bytes
|
0n
|
|
The n’th holiday of this month
|
2 bytes
|
dd
|
|
The day, 01-31
|
2 bytes
|
G
|
0x47
|
The suffix check code.
|
1 byte
|
C R
|
0x0D
|
Carriage return.
|
1 byte
|
L F
|
0x0A
|
Line feed.
|
1 byte
|
Notice:
- To enable holiday function, should be enable time zone first.
- To enable holiday function , F4=1801 should be enabled.
- The clear all the holiday setting, the command is F4, 0018
- The access map in holiday is follow Sunday in time zone setting.
15.1 Return (Total 25 bytes)
Same with return message by “PM”.
16. “CI” Command for reading & writing counter inquiry (Total 7 bytes)
Answer backed as following:
STX AA R n n n n n W n n n n n G CR LF
Field
|
Data
|
Description
|
Length
|
ACK
|
0x06
|
Answer back.
|
1 byte
|
C I
|
0x43, 0x49
|
Counter inquiry command.
|
2 bytes
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
16.1 Return (Total 25 bytes)
16.1.1 Command well received.
Data Structures:
Field
|
Data
|
Description
|
Length
|
T
|
0x54
|
Starting code for answering.
|
1 byte
|
S
|
If S= NAK (0x 15), it’s not setting ok.
If S=ACK (0x 06), it’s setting ok.
|
feed back statues.
|
1 byte
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
ETX
|
0x03
|
Ending code.
|
1 byte
|
C R
|
0x0D
|
Carriage return.
|
1 byte
|
L F
|
0x0A
|
Line feed.
|
1 byte
|
16.1.2 Result of reading and writing counter inquiry.
STX
|
aa
|
R
|
nnnnn
|
W
|
nnnnn
|
G
|
CR
|
LF
|
STX
|
0x02
|
Start code
|
1 byte
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
R
|
0x52
|
Read
|
1 byte
|
nnnnn
|
“00000”~”99999”
|
Read counter
|
5 bytes
|
W
|
0x57
|
Write
|
1 byte
|
nnnnn
|
“00000”~”99999”
|
Write counter
|
5 bytes
|
G
|
0x47
|
Check code
|
1 byte
|
CR
|
0x0D
|
Carriage return
|
1 byte
|
LF
|
0x0A
|
Line feed.
|
1 byte
|
17. “BC” Command for adjusting the read/write counter.(Total 14 bytes)
Field
|
Data
|
Description
|
Length
|
BEL
|
0x07
|
Start code.
|
1 byte
|
BC
|
0x42, 0x43
|
Command
|
2 bytes
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
R/W
|
0x52 or 0x57
|
0x52: “R”, Reading counter
0x57: “W”, Writen counter
|
1 byte
|
nnnnn
|
“00000” –“system event counter”
|
Setting read or write 5 digits counter
“AAAAA”: To clear both read and write counter.
|
5 bytes
|
G
|
0x47
|
Check code
|
1 byte
|
CR
|
0x0D
|
Carriage return.
|
1 byte
|
LF
|
0x0A
|
Line feed.
|
1 byte
|
Ex. To clear both R/W counterà B C 0 0 R A A A A A G
0x07, 0x42, 0x43, 0x30, 0x30, 0x52, 0x41, 0x41, 0x41, 0x41, 0x41, 0x47, 0x0D, 0x0A
BC command: to clear R counter:à B C 0 0 R 0 0 0 0 0 G
0x07, 0x42, 0x43, 0x30, 0x30, 0x52, 0x30, 0x30, 0x30, 0x30, , 0x30, 0x47, 0x0D, 0x0A
Set Writen counter as 100à B C 0 0 W 0 0 1 0 0 G
0x07, 0x42, 0x43, 0x30, 0x30, 0x57, 0x30, 0x30, 0x31, 0x30, , 0x30, 0x47, 0x0D, 0x0A
17.1 Return massage by “BC” commands.(Total 7 bytes)
Data Structures:
Field
|
Data
|
Description
|
Length
|
T
|
0x54
|
Starting code for answering.
|
1 byte
|
S
|
If S= NAK (0x 15), it’s not setting ok.
If S=ACK (0x 06), it’s setting ok.
|
feed back status
|
1 byte
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
ETX
|
0x03
|
Ending code.
|
1 byte
|
C R
|
0x0D
|
Carriage return.
|
1 byte
|
L F
|
0x0A
|
Line feed.
|
1 byte
|
18. “DU” Command for dumping the events. (Total 14 bytes)
Syntax:
BS
|
D U a a
|
R n n n n n
|
G
|
CR
|
LF
|
Data Structure:
Field
|
Data
|
Description
|
Length
|
B S
|
0x08
|
Command starting code.
|
1 byte
|
DU
|
0x44, 0x55
|
The event dump command code.
|
2 bytes
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
R
|
0x52
|
The character for “reading event number. The number is decided by parameters following ( “R” 0x52).
|
1 byte
|
nnnnn
|
|
The end event counter of the dumped event. 5 byte. The maximum value is the “W” written event counter. Which can be inquired by “CI” command. The maximum dump ending counter is the “writing counter”. That means all events will be wholly dumped. For other “nnnnn” in ASCII code ranged from 0 (” 0x30) to 9 (0x 39)
|
5 bytes
|
G
|
0x47
|
The suffix check code.
|
1 byte
|
C R
|
0x0D
|
Carriage return.
|
1 byte
|
L F
|
0x0A
|
Line feed.
|
1 byte
|
Description:
The command is used to dump the system transacted events to free from getting one by one event to accelerate the events collection. The speed is around 1000 events per minutes by 9600 bps. The maximum ending counter is defined by “nnnnn”.
The counter should be bigger than the existing reading counter inquired from “CI” command or the counter appended to each event report.
18.1 Return message by “DU” command.
Part 1: After receiving the legal command, the CPU will responded with T AA
Field
|
Data
|
Description
|
Length
|
T
|
0x54
|
Starting code for answering.
|
1 byte
|
ACK
|
0x06
|
ASCII code. Answer back.
|
1 byte
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
ETX
|
0x03
|
Ending code.
|
1 byte
|
C R
|
0x0D
|
Carriage return.
|
1 byte
|
L F
|
0x0A
|
Line feed.
|
1 byte
|
Part 2: and then: ANSWER BACK AS:
STX aa D b b b b b E e e e e e G CR LF For reporting the beginning and expected ending counter.
Field
|
Data
|
Description
|
Length
|
S T X
|
0x02
|
Starting of text.
|
1 byte
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
Dbbbbb
|
|
“D”(0x 44 )
bbbb: the last reading counter
|
6 bytes
|
Eeeeee
|
|
“E”(0x45 )
eeeee: the ending counter of event dump
|
6 bytes
|
G
|
0x47
|
“G”
|
1 byte
|
C R
|
0x0D
|
Carriage return.
|
1 byte
|
L F
|
0x0A
|
Line feed.
|
1 byte
|
Part 3: And then report the event text as we get by “ DO aa.
please watch 10.1.2 If have any event data existed :
Part 4: When the event is completely dumped and the readable event buffer is empty, or when reading counter is b1gger than the written counter, it will responded with “T aa .
7 bytes
Data Structure:
Field
|
Data
|
Description
|
Length
|
T
|
0x54
|
Starting code for answering.
|
1 byte
|
E O T
|
|
Decimal code 04 or Hex 04.
|
1 byte
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
E T X
|
|
Decimal code 03 or Hex 03.
|
1 byte
|
C R
|
0x0D
|
Carriage return.
|
1 byte
|
L F
|
0x0A
|
Line feed.
|
1 byte
|
19. Print out message under 8601. (Total 42 bytes)
C
|
n
|
|
C1.... C8
|
|
YY/MM/DD
|
|
W
|
|
#0d
|
OP
|
|
|
Field
|
Data
|
Description
|
Length
|
C
|
0x43
|
Message with print out.
|
1 byte
|
n
|
|
Meaningless
|
1 byte
|
|
0x20
|
Space
|
1 byte
|
0
|
0x30
|
Meaningless
|
1 byte
|
|
0x20
|
Space
|
1 byte
|
C1.... C8
|
|
Card number.
|
8 bytes
|
|
0x20
|
Space
|
1 byte
|
YY/MM/DD
|
|
The calendar year, month and date.8 bytes
YY:The last two digits of A.D. calendar year code ( “00” till “99” )
MM:The month code ranged from “01” till “12”(0x 31)~ (0x 32)
DD:The date code ranged from “01” till “31”(0x 31)~ (0x 31)
“/”:Separate symbol. (0x 2F).
|
8 bytes
|
|
0x20
|
Space
|
1 byte
|
W=HH:MM
|
|
The weekday, hour and minute.7 bytes.
W:The weekday code ranged from “0” till “6” (0x30)~ (0x36) , please refer to description for function code 2 in operational manual.
HH:The hour code ranged from “00” till “23”. (0x30)~ (0x33)
mm:The minute code ranged from “00” till “59”. (0x30)~ (0x 39)
“:”:separate symbol. (0x 3A).
“=”:separate symbol. (0x 3D).
|
7 bytes
|
|
0x20
|
Space
|
1 byte
|
#0d
|
|
where #0d --- door number
|
3 bytes
|
|
0x20
|
Space
|
1 byte
|
OP
|
|
Open door status, maybe 4 bytes like “O.K. “ or 5 bytes like “C.ERR” or “Z.ERR”…etc.
|
5 bytes
|
|
0x0D
|
Carriage return.
|
1 byte
|
|
0x 0A
|
Line feed.
|
1 byte
|
20. Inquire the card numbers which have been enrolled from the controller by F4=8599
Field
|
Data
|
Description
|
Length
|
H T
|
0x09
|
Start code. Ctrl I
|
1 byte
|
F E
|
0x46 ,0x45
|
The Function execution command code.
|
2 bytes
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
8599
|
0x38, 0x35, 0x39, 0x39
|
Fixed code.
|
4 bytes
|
G
|
0x47
|
The suffix check code. (0x47)
|
1 byte
|
C R
|
0x0D
|
Carriage return. (0x0D)
|
1 byte
|
L F
|
0x0A
|
Line feed. (0x0A)
|
1 byte
|
20.1.1 Command well received
Syntax:
Field
|
Data
|
Description
|
Length
|
T
|
0x54
|
Starting code for answering.
|
1 byte
|
ACK
|
0x06
|
ASCII code. Answer back
|
1 byte
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
ETX
|
0x03
|
Ending code.
|
1 byte
|
C R
|
0x0D
|
Carriage return.
|
1 byte
|
L F
|
0x0A
|
Line feed.
|
1 byte
|
20.1.2 The controller would feedback following message if theres any card number has been enrolled.
If therere several numbers, the controller would continually feedback until finish
Field
|
Data
|
Description
|
Length
|
STX
|
0x02
|
Starting code.
|
1 byte
|
aa
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
P5
|
0x50, 0x35
|
Meaningless
|
2 bytes
|
CCCCCCCC
|
|
CARD NUMBER.
|
8 bytes
|
LL
|
|
GROUP NR. The group detailed contents is defined by VM LL. LL is from “01” (Decimal 48 49 or Hex 30 31) to “95” (Decimal 57 53 or Hex 39 35).
|
2 bytes
|
GT
|
|
GENERAL ACCESS AUTHORIZE (G) & GENERAL TIME ZONE STATUS
which is consisted of b7-b0 and defied as following:
b7 -- General status for general APB ( Anti-passback).
If =1, it is In/Out APB for individual door
If =0, APB for general doors((Multiple doors in one area ).
b6 -- out status for General APB
b5 -- "in" status for General APB
b4 -- General legal/illegal card.
If b4 =1, legal card for the system, then check legal status for each door. defined by VM according to belonging group.
If b4=0, the card is illegal .
b3-b1 -- Dont cared. reserved now.
b0 -- General time zone authorized.
If b0=1, Dont need check Time zone.
If b0=0, Need check Time zones for access.
|
2 bytes
|
C R
|
0x0D
|
Carriage return.
|
1 byte
|
L F
|
0x0A
|
Line feed.
|
1 byte
|
……
|
|
Maybe many records
|
|
20.1.3 The end of text
Data Structure:
Field
|
Data
|
Description
|
Length
|
T
|
0x54
|
Starting code for answering.
|
1 byte
|
NAK
|
0x15
|
ASCII code. Answer back
|
1 byte
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
ETX
|
0x03
|
Ending code.
|
1 byte
|
C R
|
0x0D
|
Carriage return..
|
1 byte
|
L F
|
0x0A
|
Line feed..
|
1 byte
|
NUL
|
0x00
|
null
|
1 byte
|
21. Setting Door pin code by F4=460n
DC2
|
FE a a
|
460n
|
kkkk
|
GGGGGGG
|
CR
|
LF
|
Field
|
Data
|
Description
|
Length
|
DC2
|
0x0C
|
Start code. Ctrl M
|
1 byte
|
F E
|
0x46 ,0x45
|
The Function execution command code.
|
2 bytes
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
460
|
0x34, 0x36, 0x30
|
Fixed code.
|
3bytes
|
n
|
0x32~0x37
|
Group n
|
1byte
|
Kkkk
|
“0001”~”9999”
|
Pin code
|
4bytes
|
GGGGGGG
|
0x47
|
The suffix check code. (0x47)
|
7 byte
|
C R
|
0x0D
|
Carriage return. (0x0D)
|
1 byte
|
L F
|
0x0A
|
Line feed. (0x0A)
|
1 byte
|
21.1 Return Message
Same with the “FE” Command. Please check page 3.
22.“GV” Command for ask the reader’sversion.(Total 5 bytes)
Data Structure:
Field
|
Data
|
Description
|
Length
|
ACK
|
0x06
|
Start code.
|
1 byte
|
GV
|
0x47 ,0x56
|
The Function execution command code.
|
2 bytes
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
| - bytes
|
22.1 Return message by “WI” command.(Total 19 bytes)
21.1.1 Command well received
Data Structures:
Field
|
Data
|
Description
|
Length
|
T
|
0x54
|
Starting code for answering.
|
1 byte
|
S
|
If S= NAK (0x 15), it’s not setting ok.
If S=ACK (0x 06), it’s setting ok.
|
feed back state
|
1 byte
|
a a
|
“00”~”99”
|
The controller’s address for polling. Defaulted as “00”. Ranged as “00” ~”99” (0x30, 0x30) ~ (0x39, 0x39)
|
2 bytes
|
ETX
|
0x03
|
Ending code.
|
1 byte
|
C R
|
0x0D
|
Carriage return.
|
1 byte
|
L F
|
0x0A
|
Line feed.
|
1 byte
|
21.1.2 Result of command for inquiring the system clock (Week, Hour and Minute & second)
Field
|
Data
|
Description
|
Length
|
Ver.
|
|
The reader’s of version number, include reader type, 23 bytes
|
1 byte
|
CR
|
0x0D
|
Carriage return.
|
2 bytes
|
LF
|
0x0A
|
Line feed.
|
1 byte
|
|