SHOCK (Shock Detection)¶
The AT@SHOCK command is used to detect shock events. Usually refers to a sudden strong vibration in a short period of time. The terminal will generate and send the report carrying Record 28H to backend server when the shock event is detected.
Note
In order to avoid too many shock event messages in a short period of time, when the terminal detects a shock event, it will only allow a new shock event to be triggered after 10 seconds.
Example:
AT@SHOCK=gl601###,,1,3,10,,,,012F$
+ACK:SHOCK,123456789012345,C031,10,0,,012F,20210407101530,1234$
AT@SHOCK?gl601###,,0C37$
+QRY:SHOCK,123456789012345,C031,10,0,1,1,,1,3,10,,,,0C37,20210407101530,1234$
Parts |
Fields |
Length (Byte) |
Range/Format |
Default |
|---|---|---|---|---|
Head |
Header |
3 |
AT@ |
AT@ |
Command Word |
5 |
SHOCK |
SHOCK |
|
Leading Symbol |
1 |
= |
= |
|
Password |
8-16 |
gl601### |
||
Body |
Reserved |
0 |
||
Mode |
1 |
0-1 |
1 |
|
Sensitivity |
1 |
1-5 |
3 |
|
Validity |
<=3 |
1-500 (*10 ms) |
10 |
|
Reserved |
0 |
|||
Reserved |
0 |
|||
Reserved |
0 |
|||
Tail |
Sequence Number |
4 |
0000-FFFF (‘0’-‘9’, ‘A’-‘F’) |
|
Tail |
1 |
$ |
$ |
Mode
0 - Disable. The terminal will not detect the shock events.
1 - Enable. Then terminal will detect the shock events.
Note: Only when this field is 1, the following parameters are valid.
Sensitivity
The sensitivity level for detecting shock events. The smaller the value, the easier it is for the terminal to detect shock.
Validity
A time parameter which is used to confirm shock events and avoid false detections. If the motion sensor detects that the device is continuously vibrating and the duration reaches this value, it will be confirmed as a shock event.