10-axis IMU module communication protocolInstructions for use:Register tableProtocol formatRead formatTime outputAcceleration outputAngular velocity outputAngle outputMagnetic field outputPort status outputAir pressure altitude outputLatitude and longitude outputGPS data outputQuaternion outputGPS positioning accuracy outputRead register return valueWrite formatSAVE(save/reboot/factory reset)CALSW(Calibration Mode)RSW(output content)RRATE(output rate)BAUD(Serial port baud rate)AXOFFSET~HZOFFSET(Bias settings)D0MODE~D3MODE(port mode setting)IICADDR(device address)LEDOFF(turn off the LED)MAGRANGX~MAGRANGZ(magnetic field calibration range)BANDWIDTH(bandwidth)GYRORANGE(gyroscope range)ACCRANGE(accelerometer range)SLEEP(sleep)ORIENT(installation orientation)AXIS6(algorithm)FILTK(K value filter)GPSBAUD(GPS baud rate)READADDR(read register)ACCFILT(acceleration filter)POWONSEND(power-on output)VERSION(version number)YYMM~MS(on-chip time)AX~AZ(acceleration)GX~GZ(angular velocity)HX~HZ(magnetic field)Roll~Yaw(angle)TEMP(temperature)D0Status~D3Status(port status)PressureL~HeightH(pressure altitude)LonL~LatH(latitude and longitude)GPSHeight~GPSVH(GPS data)q0~q3(quaternion)SVNUM~VDOP(GPS positioning accuracy)DELAYT(alarm signal delay)XMIN~XMAX(X-axis angle alarm threshold)BATVAL(voltage)ALARMPIN(alarm pin mapping)YMIN~YMAX(Y-axis angle alarm threshold)GYROCALITHR(Gyro Still Threshold))ALARMLEVEL(angle alarm level)GYROCALTIME(Gyroscope Auto Calibration Time)TRIGTIME(alarm continuous trigger time))KEY(unlock)WERROR(gyro change value)TIMEZONE(GPS时区)WZTIME(angular velocity continuous still time)WZSTATIC(angular velocity integral threshold)MODDELAY(485 data response delay)XREFROLL~YREFPITCH(angle zero reference value))NUMBERID1~NUMBERID6((device number))
The serial port sending command must be completed within 10S , otherwise it will be automatically locked. To avoid automatic locking, the following steps can be performed first.
ADDR(Hex) | ADDR(Dec) | REGISTER NAME | FUNCTION | SERIAL I/F | Bit15 | Bit14 | Bit13 | Bit12 | Bit11 | Bit10 | Bit9 | Bit8 | Bit7 | Bit6 | Bit5 | Bit4 | Bit3 | Bit2 | Bit1 | Bit0 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
00 | 00 | SAVE | save/reboot/factory reset | R/W | SAVE[15:0] | |||||||||||||||
01 | 01 | CALSW | Calibration mode | R/W | CALSW[3:0] | |||||||||||||||
02 | 02 | RSW | output content | R/W | GSA | QUATER | VELOCITY | GPS | PRESS | PORT | MAG | ANGLE | GYRO | ACC | TIME | |||||
03 | 03 | RRATE | output rate | R/W | RRATE[3:0] | |||||||||||||||
04 | 04 | BAUD | Serial port baud rate | R/W | BAUD[3:0] | |||||||||||||||
05 | 05 | AXOFFSET | Acceleration X Bias | R/W | AXOFFSET[15:0] | |||||||||||||||
06 | 06 | AYOFFSET | Acceleration Y Bias | R/W | AYOFFSET[15:0] | |||||||||||||||
07 | 07 | AZOFFSET | Acceleration Z Bias | R/W | AZOFFSET[15:0] | |||||||||||||||
08 | 08 | GXOFFSET | Angular velocity X Bias | R/W | GXOFFSET[15:0] | |||||||||||||||
09 | 09 | GYOFFSET | Angular velocity Y Bias | R/W | GYOFFSET[15:0] | |||||||||||||||
0A | 10 | GZOFFSET | Angular velocity Z Bias | R/W | GZOFFSET[15:0] | |||||||||||||||
0B | 11 | HXOFFSET | Magnetic Field X Bias | R/W | HXOFFSET[15:0] | |||||||||||||||
0C | 12 | HYOFFSET | Magnetic Field Y Bias | R/W | HYOFFSET[15:0] | |||||||||||||||
0D | 13 | HZOFFSET | Magnetic Field Z Bias | R/W | HZOFFSET[15:0] | |||||||||||||||
0E | 14 | D0MODE | D0 Pin mode | R/W | D0MODE[3:0] | |||||||||||||||
0F | 15 | D1MODE | D1 Pin mode | R/W | D1MODE[3:0] | |||||||||||||||
10 | 16 | D2MODE | D2 Pin mode | R/W | D2MODE[3:0] | |||||||||||||||
11 | 17 | D3MODE | D3 Pin mode | R/W | D3MODE[3:0] | |||||||||||||||
1A | 26 | IICADDR | Device address | R/W | IICADDR[7:0] | |||||||||||||||
1B | 27 | LEDOFF | Turn off the LED lights | R/W | LEDOFF | |||||||||||||||
1C | 28 | MAGRANGX | Magnetic Field X Calibration Range | R/W | MAGRANGX[15:0] | |||||||||||||||
1D | 29 | MAGRANGY | Magnetic Field Y Calibration Range | R/W | MAGRANGY[15:0] | |||||||||||||||
1E | 30 | MAGRANGZ | Magnetic Field Z Calibration Range | R/W | MAGRANGZ[15:0] | |||||||||||||||
1F | 31 | BANDWIDTH | Bandwidth | R/W | BANDWIDTH[3:0] | |||||||||||||||
20 | 32 | GYRORANGE | Gyroscope range | R/W | GYRORANGE[3:0] | |||||||||||||||
21 | 33 | ACCRANGE | Acceleration range | R/W | ACCRANGE[3:0] | |||||||||||||||
22 | 34 | SLEEP | Hibernate | R/W | SLEEP | |||||||||||||||
23 | 35 | ORIENT | Installation direction | R/W | ORIENT | |||||||||||||||
24 | 36 | AXIS6 | algorithm | R/W | AXIS6 | |||||||||||||||
25 | 37 | FILTK | Dynamic filtering | R/W | FILTK[15:0] | |||||||||||||||
26 | 38 | GPSBAUD | GPS baud rate | R/W | GPSBAUD[3:0] | |||||||||||||||
27 | 39 | READADDR | read register | R/W | READADDR[7:0] | |||||||||||||||
2A | 42 | ACCFILT | acceleration filter | R/W | ACCFILT[15:0] | |||||||||||||||
2D | 45 | POWONSEND | command start | R/W | POWONSEND[3:0] | |||||||||||||||
2E | 46 | VERSION | version number | R | VERSION[15:0] | |||||||||||||||
30 | 48 | YYMM | Year Month | R/W | MOUTH[15:8] | YEAR[7:0] | ||||||||||||||
31 | 49 | DDHH | Day Hour | R/W | HOUR[15:8] | DAY[7:0] | ||||||||||||||
32 | 50 | MMSS | Minute Second | R/W | SECONDS[15:8] | MINUTE[7:0] | ||||||||||||||
33 | 51 | MS | Millisecond | R/W | MS[15:0] | |||||||||||||||
34 | 52 | AX | Acceleration X | R | AX[15:0] | |||||||||||||||
35 | 53 | AY | Acceleration Y | R | AY[15:0] | |||||||||||||||
36 | 54 | AZ | Acceleration Z | R | AZ[15:0] | |||||||||||||||
37 | 55 | GX | Angular velocity X | R | GX[15:0] | |||||||||||||||
38 | 56 | GY | Angular velocity Y | R | GY[15:0] | |||||||||||||||
39 | 57 | GZ | Angular velocity Z | R | GZ[15:0] | |||||||||||||||
3A | 58 | HX | Magnetic Field X | R | HX[15:0] | |||||||||||||||
3B | 59 | HY | Magnetic Field Y | R | HY[15:0] | |||||||||||||||
3C | 60 | HZ | Magnetic Field Z | R | HZ[15:0] | |||||||||||||||
3D | 61 | Roll | roll angle | R | Roll[15:0] | |||||||||||||||
3E | 62 | Pitch | Pitch angle | R | Pitch[15:0] | |||||||||||||||
3F | 63 | Yaw | Heading | R | Yaw[15:0] | |||||||||||||||
40 | 64 | TEMP | temperature | R | TEMP[15:0] | |||||||||||||||
41 | 65 | D0Status | D0 pin state | R | D0Status[15:0] | |||||||||||||||
42 | 66 | D1Status | D1 pin state | R | D1Status[15:0] | |||||||||||||||
43 | 67 | D2Status | D2 pin state | R | D2Status[15:0] | |||||||||||||||
44 | 68 | D3Status | D3 pin state | R | D3Status[15:0] | |||||||||||||||
45 | 69 | PressureL | Air pressure low 16 bits | R | PressureL[15:0] | |||||||||||||||
46 | 70 | PressureH | Air pressure high 16 bits | R | PressureH[15:0] | |||||||||||||||
47 | 71 | HeightL | Height lower 16 bits | R | HeightL[15:0] | |||||||||||||||
48 | 72 | HeightH | High low high 16 bits | R | HeightH[15:0] | |||||||||||||||
49 | 73 | LonL | Longitude lower 16 bits | R | LonL[15:0] | |||||||||||||||
4A | 74 | LonH | Longitude high 16 bits | R | LonH[15:0] | |||||||||||||||
4B | 75 | LatL | Latitude lower 16 bits | R | LatL[15:0] | |||||||||||||||
4C | 76 | LatH | Latitude high 16 bits | R | LatH[15:0] | |||||||||||||||
4D | 77 | GPSHeight | GPS Altitude | R | GPSHeight[15:0] | |||||||||||||||
4E | 78 | GPSYAW | GPS heading angle | R | GPSYAW[15:0] | |||||||||||||||
4F | 79 | GPSVL | GPS ground speed low 16 bits | R | GPSVL[15:0] | |||||||||||||||
50 | 80 | GPSVH | GPS ground speed high 16 bits | R | GPSVH[15:0] | |||||||||||||||
51 | 81 | q0 | Quaternion 0 | R | q0[15:0] | |||||||||||||||
52 | 82 | q1 | Quaternion 1 | R | q1[15:0] | |||||||||||||||
53 | 83 | q2 | Quaternion 2 | R | q2[15:0] | |||||||||||||||
54 | 84 | q3 | Quaternion 3 | R | q3[15:0] | |||||||||||||||
55 | 85 | SVNUM | number of satellites | R | SVNUM[15:0] | |||||||||||||||
56 | 86 | PDOP | Position accuracy | R | PDOP[15:0] | |||||||||||||||
57 | 87 | HDOP | Horizontal accuracy | R | HDOP[15:0] | |||||||||||||||
58 | 88 | VDOP | vertical accuracy | R | VDOP[15:0] | |||||||||||||||
59 | 89 | DELAYT | Alarm signal delay | R/W | DELAYT[15:0] | |||||||||||||||
5A | 90 | XMIN | X-axis angle alarm minimum value | R/W | XMIN[15:0] | |||||||||||||||
5B | 91 | XMAX | X-axis angle alarm maximum value | R/W | XMAX[15:0] | |||||||||||||||
5C | 92 | BATVAL | Supply voltage | R | BATVAL[15:0] | |||||||||||||||
5D | 93 | ALARMPIN | Alarm Pin Mapping | R/W | X-ALARM[15:12] | X+ALARM[11:8] | Y-ALARM[7:4] | Y+ALARM[3:0] | ||||||||||||
5E | 94 | YMIN | Y-axis angle alarm minimum value | R/W | YMIN[15:0] | |||||||||||||||
5F | 95 | YMAX | Y-axis angle alarm maximum value | R/W | YMAX[15:0] | |||||||||||||||
61 | 97 | GYROCALITHR | Gyro Still Threshold | R/W | GYROCALITHR[15:0] | |||||||||||||||
62 | 98 | ALARMLEVEL | Angle alarm level | R/W | ALARMLEVEL[3:0] | |||||||||||||||
63 | 99 | GYROCALTIME | Gyro auto calibration time | R/W | GYROCALTIME[15:0] | |||||||||||||||
68 | 104 | TRIGTIME | Alarm continuous trigger time | R/W | TRIGTIME[15:0] | |||||||||||||||
69 | 105 | KEY | unlock | R/W | KEY[15:0] | |||||||||||||||
6A | 106 | WERROR | Gyroscope change value | R | WERROR[15:0] | |||||||||||||||
6B | 107 | TIMEZONE | GPS time zone | R/W | TIMEZONE[7:0] | |||||||||||||||
6E | 110 | WZTIME | Angular velocity continuous rest time | R/W | WZTIME[15:0] | |||||||||||||||
6F | 111 | WZSTATIC | Angular velocity integral threshold | R/W | WZSTATIC[15:0] | |||||||||||||||
74 | 116 | MODDELAY | 485 data response delay | R/W | ||||||||||||||||
79 | 121 | XREFROLL | Roll angle zero reference value | R | XREFROLL[15:0] | |||||||||||||||
7A | 122 | YREFPITCH | Pitch angle zero reference value | R | YREFPITCH[15:0] | |||||||||||||||
7F | 127 | NUMBERID1 | Device ID 1-2 | R | ID2[15:8] | ID1[7:0] | ||||||||||||||
80 | 128 | NUMBERID2 | Device ID 3-4 | R | ID4[15:8] | ID3[7:0] | ||||||||||||||
81 | 129 | NUMBERID3 | Device ID 5-6 | R | ID6[15:8] | ID5[7:0] | ||||||||||||||
82 | 130 | NUMBERID4 | Device ID 7-8 | R | ID8[15:8] | ID7[7:0] | ||||||||||||||
83 | 131 | NUMBERID5 | Device ID 9-10 | R | ID10[15:8] | ID9[7:0] | ||||||||||||||
84 | 132 | NUMBERID6 | Device ID 11-12 | R | ID12[15:8] | ID11[7:0] |
Protocol Head | data content | Data lower 8 bits | Data high 8 bits | Data lower 8 bits | Data high 8 bits | Data lower 8 bits | Data high 8 bits | Data high 8 bits | Data high 8 bits | SUMCRC |
---|---|---|---|---|---|---|---|---|---|---|
0x55 | TYPE【1】 | DATA1L[7:0] | DATA1H[15:8] | DATA2L[7:0] | DATA2H[15:8] | DATA3L[7:0] | DATA3H[15:8] | DATA4L[7:0] | DATA4H[15:8] | SUMCRC【2】 |
【1】TYPE(data content):
TYPE | Remark |
---|---|
0x50 | Time |
0x51 | Acceleration |
0x52 | Angular velocity |
0x53 | Angle |
0x54 | Magnetic field |
0x55 | Port status |
0x56 | Barometric altitude |
0x57 | Latitude and longitude |
0x58 | Ground speed |
0x59 | Quaternion |
0x5A | GPSpositioning accuracy |
0x5F | Read |
【2】SUMCRC(data sum check):
SUMCRC=0x55+TYPE+DATA1L+DATA1H+DATA2L+DATA2H+DATA3L+DATA3H+DATA4L+DATA4H
SUMCRC is a char type, taking the lower 8 bits of the checksum
0x55 | 0x50 | YY | MM | DD | HH | MN | SS | MSL | MSH | SUM |
---|---|---|---|---|---|---|---|---|---|---|
Name | Describe | Remark |
---|---|---|
YY | Year | |
MM | Moon | |
DD | Day | |
HH | Hour | |
MN | Minute | |
SS | second | |
MSL | ms lower 8 bits | Millisecond calculation formula: ms=((MSH<<8)|MSL) |
MSH | ms high 8 bits | |
SUM | checksum | SUM=0x55+0x50+YY+MM+DD+HH+MN+SS+MSL+MSH |
0x55 | 0x51 | AxL | AxH | AyL | AyH | AzL | AzH | TL | TH | SUM |
---|---|---|---|---|---|---|---|---|---|---|
Name | Describe | Remark |
---|---|---|
AxL | Acceleration X low 8 bits | Acceleration X=((AxH<<8)|AxL)/32768*16g(g is the acceleration of gravity, preferably 9.8m/s2) |
AxH | Acceleration X high 8 bits | |
AyL | Acceleration Y low 8 bits | Acceleration Y=((AyH<<8)|AyL)/32768*16g(g is the acceleration of gravity, preferably 9.8m/s2) |
AyH | Acceleration Y high 8 bits | |
AzL | Acceleration Z low 8 bits | Acceleration Z=((AzH<<8)|AzL)/32768*16g(g is the acceleration of gravity, preferably 9.8m/s2) |
AzH | Acceleration Z high 8 bits | |
TL | Temperature low 8 bits | Temperature calculation formula:Temperature=((TH<<8)|TL) /100 ℃ |
TH | Temperature high 8 bits | |
SUM | checksum | SUM=0x55+0x51+AxL+AxH+AyL+AyH+AzL+AzH+TL+Th |
0x55 | 0x52 | WxL | WxH | WyL | WyH | WzL | WzH | VolL | VolH | SUM |
---|---|---|---|---|---|---|---|---|---|---|
Name | Describe | Remark |
---|---|---|
WxL | Angular velocity X low 8 bits | Angular velocity X=((WxH<<8)|WxL)/32768*2000°/s |
WxH | Angular velocity X high 8 bits | |
WyL | Angular velocity Y low 8 bits | Angular velocity Y=((WyH<<8)|WyL)/32768*2000°/s |
WyH | Angular velocity Y high 8 bits | |
WzL | Angular velocity Z low 8 bits | Angular velocity Z=((WzH<<8)|WzL)/32768*2000°/s |
WzH | Angular velocity Z high 8 bits | |
VolL | Voltage low 8 bits | (Non-Bluetooth Products,the data is invalid) Voltage calculation formula: voltage=((VolH<<8)|VolL) /100 ℃ |
VolH | Voltage high 8 bits | |
SUM | checksum | SUM=0x55+0x52+WxL+WxH+WyL+WyH+WzL+WzH+VolH+VolL |
0x55 | 0x53 | RollL | RollH | PitchL | PitchH | YawL | YawH | VL | VH | SUM |
---|---|---|---|---|---|---|---|---|---|---|
Name | Describe | Remark |
---|---|---|
RollL | Roll angle X low 8 bits | Roll angle X=((RollH<<8)|RollL)/32768*180(°) |
RollH | Roll angle X high 8 bits | |
PitchL | Pitch angle Y low 8 bits | Pitch angle Y=((PitchH<<8)|PitchL)/32768*180(°) |
PitchH | Pitch angle Y high 8 bits | |
YawL | Yaw angle Z low 8 bits | Yaw angle Z=((YawH<<8)|YawL)/32768*180(°) |
YawH | Yaw angle Z high 8 bits | |
VL | Version number low 8 bits | Version number calculation formula: Version number=(VH<<8)|VL |
VH | Version number high 8 bits | |
SUM | checksum | SUM=0x55+0x53+RollH+RollL+PitchH+PitchL+YawH+YawL+VH+VL |
0x55 | 0x54 | HxL | HxH | HyL | HyH | HzL | HzH | TL | TH | SUM |
---|---|---|---|---|---|---|---|---|---|---|
Name | Describe | Remark |
---|---|---|
HxL | Magnetic field X lower 8 bits | Magnetic field X=((HxH<<8)|HxL) |
HxH | Magnetic field X high 8 bits | |
HyL | Magnetic field Y lower 8 bits | Magnetic field Y=((HyH <<8)|HyL) |
HyH | Magnetic field Y high 8 bits | |
HzL | Magnetic field Z lower 8 bits | Magnetic field Z=((HzH<<8)|HzL) |
HzH | Magnetic field Z high 8 bits | |
TL | Temperature low 8 bits | Temperature calculation formula: temperature=((TH<<8)|TL) /100 ℃ |
TH | Temperature high 8 bits | |
SUM | checksum | SUM=0x55+0x54+HxH+HxL+HyH+HyL+HzH+HzL+TH+TL |
0x55 | 0x55 | D0L | D0H | D1L | D1H | D2L | D2H | D3L | D3H | SUM |
---|---|---|---|---|---|---|---|---|---|---|
Name | Describe | Remark |
---|---|---|
D0L | D0 status lower 8 bits | D0 state=((D0H<<8)|D0L) |
D0H | D0 state high 8 bits | |
D1L | D1 status lower 8 bits | D1 state = ((D1H<<8)|D1L) |
D1H | D1 status high 8 bits | |
D2L | D2 status lower 8 bits | D2 state=((D2H<<8)|D2L) |
D2H | D2 status upper 8 bits | |
D3L | D3 status lower 8 bits | D3 state = ((D3H<<8)|D3L) |
D3H | D3 status upper 8 bits | |
SUM | checksum | SUM=0x55+0x54+D0L+D0H+D1L+D1H+D2L+D2H+D3L+D3H |
illustrate:
U=DxStatus/1024*Uvcc
0x55 | 0x56 | P0 | P1 | P2 | P3 | H0 | H1 | H2 | H3 | SUM |
---|---|---|---|---|---|---|---|---|---|---|
Name | Describe | Remark |
---|---|---|
P0 | Air Pressure [7:0] | Air pressure=(P3<<24)|(P2<<16)|(P1<<8)|P0(Pa) |
P1 | Air Pressure [15:8] | |
P2 | Air pressure [23:16] | |
P3 | Air pressure [31:24] | |
H0 | height[7:0] | Height=(H3<<24)|(H2<<16)|(H1<<8)|H0(cm) |
H1 | Height [15:8] | |
H2 | Height [23:16] | |
H3 | Height [31:24] | |
SUM | checksum | SUM=0x55+0x56+P0+P1+P2+P3+H0+H1+H2+H3 |
0x55 | 0x57 | Lon0 | Lon1 | Lon2 | Lon3 | Lat0 | Lat1 | Lat2 | Lat3 | SUM |
---|---|---|---|---|---|---|---|---|---|---|
name | describe | Remark |
---|---|---|
Lon0 | Longitude [7:0] | Longitude=(Lon3<<24)|(Lon2<<16)|(Lon1<<8)|Lon0 |
Lon1 | Longitude [15:8] | |
Lon2 | Longitude [23:16] | |
Lon3 | Longitude [31:24] | |
Lat0 | Latitude[7:0] | Latitude=(Lat3<<24)|(Lat2<<16)|(Lat1<<8)|Lat0 |
Lat1 | Latitude[15:8] | |
Lat2 | Latitude [23:16] | |
Lat3 | Latitude [31:24] | |
SUM | checksum | SUM=0x55+0x57+Lon0+Lon1+Lon2+Lon3+Lat0+Lat1+Lat2+Lat3 |
illustrate:
dd=Lon[31:0]/10000000;
dd=Lat[31:0]/10000000;
The longitude/latitude fraction can be calculated like this:
mm.mmmmm=(Lon[31:0]%10000000)/100000; (% means remainder operation)
mm.mmmmm=(Lat[31:0]%10000000)/100000; (% means remainder operation)
0x55 | 0x58 | GPSHeightL | GPSHeightH | GPSYawL | GPSYawH | GPSV0 | GPSV1 | GPSV2 | GPSV3 | SUM |
---|---|---|---|---|---|---|---|---|---|---|
name | describe | Remark |
---|---|---|
GPSHeightL | GPS Altitude [7:0] | GPS Height=((GPSHeightH<<8)|GPSHeightL)/10(m) |
GPSHeightH | GPS altitude [15:8] | |
GPSYawL | GPS heading [7:0] | GPS heading angle=((GPSYawH<<8)|GPSYawL)/100(°) |
GPSYawH | GPS heading [15:8] | |
GPSV0 | GPS Ground Speed [7:0] | GPS ground speed = ((GPSV3<<24)|(GPSV2<<16)|(GPSV1<<8)|GPSV0)/1000(km/h) |
GPSV1 | GPS ground speed [15:8] | |
GPSV2 | GPS ground speed [23:16] | |
GPSV3 | GPS ground speed [31:24] | |
SUM | checksum | SUM=0x55+0x58+GPSHeightL+GPSHeightH+GPSYawL+GPSYawH+GPSV0+GPSV1+GPSV2+GPSV3 |
0x55 | 0x59 | Q0L | Q0H | Q1L | Q1H | Q2L | Q2H | Q3L | Q3H | SUM |
---|---|---|---|---|---|---|---|---|---|---|
Name | Describe | Remark |
---|---|---|
Q0L | Quaternion 0 low 8 bits | q0=((Q0H<<8)|Q0L)/32768 |
Q0H | Quaternion 0 high 8 bits | |
Q1L | Quaternion 1 lower 8 bits | q1=((Q1H<<8)|Q1L)/32768 |
Q1H | Quaternion 1 high 8 bits | |
Q2L | Quaternion 2 lower 8 bits | q2=((Q2H<<8)|Q2L)/32768 |
Q2H | Quaternion 2 high 8 bits | |
Q3L | Quaternion 3 lower 8 bits | q3=((Q3H<<8)|Q3L)/32768 |
Q3H | Quaternion 3 high 8 bits | |
SUM | checksum | SUM=0x55+0x59+Q0L+Q0H+Q1L +Q1H +Q2L+Q2H+Q3L+Q3H |
0x55 | 0x5A | SNL | SNH | PDOPL | PDOPH | HDOPL | HDOPH | VDOPL | VDOPH | SUM |
---|---|---|---|---|---|---|---|---|---|---|
Name | Describe | Remark |
---|---|---|
SNL | Satellite number low 8 bits | Number of GPS satellites=((SNH<<8)|SNL) |
SNH | 8-bit high number of satellites | |
PDOPL | Position positioning accuracy is low 8 bits | Position positioning accuracy=((PDOPH<<8)|PDOPL)/100 |
PDOPH | Position positioning accuracy is high 8 bits | |
HDOPL | Horizontal positioning accuracy is 8 bits lower | Horizontal positioning accuracy=((HDOPH<<8)|HDOPL)/100 |
HDOPH | High 8-bit horizontal positioning accuracy | |
VDOPL | Vertical positioning accuracy is 8 bits lower | Vertical positioning accuracy=((VDOPH<<8)|VDOPL)/100 |
VDOPH | High vertical positioning accuracy of 8 bits | |
SUM | checksum | SUM=0x55+0x5A+SNL+SNH+PDOPL+PDOPH+HDOPL+HDOPH+VDOPL+VDOPH |
0x55 | 0x5F | REG1L | REG1H | REG2L | REG2H | REG3L | REG3H | REG4L | REG4H | SUM |
---|---|---|---|---|---|---|---|---|---|---|
Name | Describe | Remark |
---|---|---|
REG1L | Register 1 low 8 bits | REG1[15:0]=((REG1H<<8)|REG1L) |
REG1H | Register 1 high 8 bits | |
REG2L | Register 2 low 8 bits | REG2[15:0]=((REG2H<<8)|REG2L) |
REG2H | Register 2 high 8 bits | |
REG3L | Register 3 low 8 bits | REG3[15:0]=((REG3H<<8)|REG3L) |
REG3H | Register 3 high 8 bits | |
REG4L | Register 4 low 8 bits | REG4[15:0]=((REG4H<<8)|REG4L) |
REG4H | Register 4 high 8 bits | |
SUM | checksum | SUM=0x55+0x5F+REG1L+REG1H+REG2L+REG2H+REG3L+REG3H+REG4L+REG4H |
E.g:
protocol header | protocol header | register | Data lower 8 bits | Data high 8 bits |
---|---|---|---|---|
0xFF | 0xAA | ADDR | DATAL[7:0] | DATAH[15:8] |
Register Name: SAVE Register Address: 0 (0x00) Read and write direction: R/W Default value: 0x0000 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:0 | SAVE[15:0] | save: 0x0000 reboot: 0x00FF factory reset: 0x0001 |
E.g:FF AA 00 FF 00(reboot) |
Register Name: CALSW Register Address: 1 (0x01 Read and Write Direction: R/W Default Value: 0x0000 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:4 | ||
3:0 | CAL[3:0] | Set calibration mode: 0000(0x00): Normal working mode 0001 (0x01): Auto add-up calibration 0011 (0x03): Height reset 0100 (0x04): Heading angle reset 0111 (0x07): Magnetic Field Calibration (Spherical Fitting) 1000 (0x08): Set the angle reference to 1001 (0x09): Magnetic Field Calibration (Dual Plane Mode) |
E.g:FF AA 01 04 00(Heading angle reset) |
Register Name: RSW Register Address: 2 (0x02) Read and Write Direction: R/W Default Value: 0x001E | ||
---|---|---|
Bit | NAME | FUNCTION |
15:11 | ||
10 | GSA (0x5A) | 0: off 1: on |
9 | QUATER (0x59) | 0: off 1: on |
8 | VELOCITY (0x58) | 0: off 1: on |
7 | GPS (0x57) | 0: off 1: on |
6 | PRESS (0x56) | 0: off 1: on |
5 | PORT (0x55) | 0: off 1: on |
4 | MAG (0x54) | 0: off 1: on |
3 | ANGLE (0x53) | 0: off 1: on |
2 | GYRO (0x52) | 0: off 1: on |
1 | ACC (0x51) | 0: off 1: on |
0 | TIME (0x50) | 0: off 1: on |
E.g:FF AA 02 3E 00(Set to output only acceleration, angular velocity, angle, magnetic field, port status) |
Register Name: RRATE Register Address: 3 (0x03) Read and Write Direction:R/W Default Value: 0x0006 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:4 | ||
3:0 | RRATE[3:0] | Set output rate: 0001(0x01): 0.2Hz 0010(0x02):0.5Hz 0011(0x03): 1Hz 0100(0x04): 2Hz 0101(0x05): 5Hz 0110(0x06): 10Hz 0111(0x07): 20Hz 1000(0x08): 50Hz 1001(0x09): 100Hz 1011(0x0B): 200Hz 1011(0x0C):Single return 1100 (0x0D): no return |
E.g:FF AA 03 03 00(Set output rate 1Hz) |
Register Name: BAUD Register Address: 4 (0x04) Read and write direction: R/W Default value: 0x0002 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:4 | ||
3:0 | BAUD[3:0] | Set serial port baud rate: 0001(0x01): 4800bps 0010(0x02): 9600bps 0011(0x03): 19200bps 0100(0x04): 38400bps 0101(0x05): 57600bps 0110(0x06): 115200bps 0111(0x07): 230400bps 1000(0x08): 460800bps(Only supported by WT931/JY931/HWT606/HWT906)1001(0x09): 921600bps(Only supported by WT931/JY931/HWT606/HWT906) |
e.g:FF AA 04 06 00 (Set serial port baud rate115200) |
Register Name: AXOFFSET~HZOFFSET Register Address: 5~13 (0x05~0x0D) Read and write direction: R/W Default value: 0x0000 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:0 | AXOFFSET[15:0] | Acceleration X-axis Bias, actual acceleration Bias =AXOFFSET[15:0]/10000(g) |
15:0 | AYOFFSET[15:0] | Acceleration Y-axis Bias, actual acceleration Bias =AYOFFSET[15:0]/10000(g) |
15:0 | AZOFFSET[15:0] | Acceleration Z-axis Bias, actual acceleration Bias =AZOFFSET[15:0]/10000(g) |
15:0 | GXOFFSET[15:0] | Angular velocity X-axis Bias, actual angular velocity Bias =GXOFFSET[15:0]/10000(°/s) |
15:0 | GYOFFSET[15:0] | Angular velocity Y-axis Bias, actual angular velocity Bias =GYOFFSET[15:0]/10000(°/s) |
15:0 | GZOFFSET[15:0] | Angular velocity Z-axis Bias, actual angular velocity Bias =GZOFFSET[15:0]/10000(°/s) |
15:0 | HXOFFSET[15:0] | Magnetic field X-axis Bias |
15:0 | HYOFFSET[15:0] | Magnetic field Y-axis Bias |
15:0 | HZOFFSET[15:0] | Magnetic field Z-axis Bias |
eg:FF AA 05 E8 03(Set acceleration X axis Bias 0.1g),0x03E8=1000,1000/10000=0.1(g) |
Register name: D0MODE~D3MODE Register address: 14~17 (0x0E~0x11) Read and write direction: R/W Default value: 0x0000 | ||
---|---|---|
Bit | NAME | FUNCTION |
3:0 | D0MODE[3:0] | Set D0 port mode 0000(0x00): analog input (default) 0001(0x01): digital input 0010(0x02): output digital high level 0011(0x03): output digital low level |
3:0 | D1MODE[3:0] | Set D1 port mode 0000(0x00): analog input (default) 0001(0x01): digital input 0010(0x02): output digital high level 0011(0x03): output digital low level 0101(0x05): set relative attitude |
3:0 | D2MODE[3:0] | Set D2 port mode 0000(0x00): analog input (default) 0001(0x01): digital input 0010(0x02): output digital high level 0011(0x03): output digital low level |
3:0 | D3MODE[3:0] | Set D3 port mode 0000(0x00): analog input (default) 0001(0x01): digital input 0010(0x02): output digital high level 0011(0x03): output digital low level |
eg:FF AA 0E 03 00(set D0 to output digital low level mode) |
Register Name: IICADDR Register Address: 26 (0x1A) Read and Write Direction: R/W Default Value: 0x0050 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:8 | ||
7:0 | IICADDR[7:0] | Set the device address, use 0x01~0x7F for I2C and Modbus communication |
eg:FF AA 1A 02 00(set the device address to 0x02) |
Register Name: LEDOFF Register Address: 27 (0x1B) Read and Write Direction: R/W Default Value: 0x0000 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:1 | ||
0 | LEDOFF | 1: Turn off the LED 0: Turn on the LED |
eg:FF AA 1B 01 00(Turn off the LED) |
Register Name: MAGRANGX~MAGRANGZ Register Address: 28~30 (0x1C~0x1E) Read and Write Direction: R/W Default Value: 0x01F4 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:0 | MAGRANGX[15:0] | Magnetic field calibration X-axis range |
15:0 | MAGRANGY[15:0] | Magnetic Field Calibration Y-axis Range |
15:0 | MAGRANGZ[15:0] | Magnetic field calibration Z-axis range |
eg:FF AA 1C F4 01(Set the magnetic field calibration X-axis range to 500) |
Register Name: BANDWIDTH Register Address: 31 (0x1F) Read and Write Direction: R/W Default Value: 0x0004 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:4 | ||
3:0 | BANDWIDTH[3:0] | Set bandwidth 0000(0x00): 256Hz 0001(0x01): 188Hz 0010(0x02): 98Hz 0011(0x03): 42Hz0100(0x04): 20Hz0101(0x05): 10Hz0110(0x06): 5Hz |
eg:FF AA 1F 01 00(Set bandwidth 188Hz) |
Register Name: GYRORANGE Register Address: 32 (0x20) Read and Write Direction: R/W Default Value: 0x0003 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:4 | ||
3:0 | GYRORANGE[3:0] | Set gyroscope range 0011(0x03): 2000°/s default 2000°/s, fixed and cannot be set |
eg:FF AA 20 03 00(set the gyro range to 2000°/s) |
Register Name: ACCRANGE Register Address: 33 (0x21) Read and Write Direction: R/W Default Value: 0x0000 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:4 | ||
3:0 | ACCRANGE[3:0] | Set the accelerometer range 0000(0x00): ±2g0011(0x03): ±16g This parameter cannot be set, the product’s internal adaptive acceleration range, when the acceleration exceeds 2g, it will automatically switch to 16g |
eg:FF AA 21 00 00(set the accelerometer range to 16g) |
Register Name: SLEEP Register Address: 34 (0x22) Read and Write Direction: R/W Default Value: 0x0000 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:1 | ||
0 | SLEEP | Set sleep 1 (0x01): sleep any serial port data, can wake up |
eg:FF AA 22 01 00(set sleep) |
Register name: ORIENT Register address: 35 (0x23) Read and write direction: R/W Default value: 0x0000 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:1 | ||
0 | ORIENT | Set the installation direction 0 (0x00): horizontal installation 1 (0x01): vertical installation (the Y-axis arrow of the coordinate axis must be upward) |
eg:FF AA 23 01 00(set vertical installation) |
Register Name: AXIS6 Register Address: 36 (0x24) Read and Write Direction: R/W Default Value: 0x0000 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:1 | ||
0 | AXIS6 | Setting algorithm 0 (0x00): 9-axis algorithm (magnetic field solution navigation angle, absolute heading angle) 1 (0x01): 6-axis algorithm (integral solution navigation angle, relative heading angle) |
eg:FF AA 24 01 00(set 6-axis algorithm mode) |
Register Name: FILTK Register Address: 37 (0x25) Read and Write Direction: R/W Default Value: 0x001E | ||
---|---|---|
Bit | NAME | FUNCTION |
15:0 | FILTK[15:0] | Range: 1~10000, the default is 30 (it is not recommended to modify, once modified, if the angle does not meet the requirements, please modify it to 30) The smaller the FILTK[15:0], the stronger the seismic performance and the weaker the real-time performance FILTK[15:0 ] is larger, the seismic performance is weakened, and the real-time performance is enhanced. |
eg:FF AA 25 1E 00(set K value filter to 30) |
Register Name: GPSBAUD Register Address: 38 (0x26) Read and Write Direction: R/W Default Value: 0x0002 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:4 | ||
3:0 | GPSBAUD[3:0] | Set GPS baud rate: 0001(0x01): 4800bps0010(0x02): 9600bps0011(0x03): 19200bps0100(0x04): 38400bps0101(0x05): 57600bps0110(0x06): 115200bps0111(0x07): 230400bps |
eg:FF AA 26 02 00((set GPS baud rate 9600) |
Register Name: READADDR Register Address: 39 (0x27) Read and Write Direction: R/W Default Value: 0x00FF | ||
---|---|---|
Bit | NAME | FUNCTION |
15:8 | ||
7:0 | READADDR[7:0] | Read register range: Please refer to "Register Table" |
eg: Send: FF AA 27 34 00 (read acceleration X-axis 0x34) Return: 55 5F AXL AXH AYL AYH AZL AZH GXL GXH SUM For details, please refer to "Read Register Return Value" in the "Read Format" chapter |
Register Name: ACCFILT Register Address: 42 (0x2A) Read and Write Direction: R/W Default Value: 0x01F4 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:0 | ACCFILT[15:0] | Range: 1~10000, the default is 500 (it is not recommended to modify, once modified, if the angle does not meet the requirements for use, please modify it to 500) The smaller the ACCFILT[15:0], the stronger the seismic performance and the weaker the real-time performance ACCFILT[15:0] ] is larger, the seismic performance is weakened, and the real-time performance is enhanced. This parameter is an empirical value, which needs to be adjusted according to different environments. In the tractor environment, ACCFILT[15:0] can be adjusted to 100, because the tractor shakes seriously, it needs to be improved Seismic performance |
eg:FF AA 2A F4 01(set acceleration filter 500) |
Register Name: POWONSEND Register Address: 45 (0x2D) Read and Write Direction: R/W Default Value: 0x0001 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:4 | ||
3:0 | POWONSEND[3:0] | Set command start: 0000(0x00): Turn off the power-on data output 0001(0x01): Turn on the power-on data output |
eg:FF AA 2D 00 00(turn on power-on data output) |
Register Name: VERSION Register Address: 46 (0x2E) Read and Write Direction: R Default Value: None | ||
---|---|---|
Bit | NAME | FUNCTION |
15:0 | VERSION[15:0] | Different products, different version numbers |
eg: Send:FF AA 27 2E 00 (read version number, 0x27 means read, 0x2E is version number register) Return: 55 5F VL VH XX XX XX XX XX XX SUMVERSION[15:0]=(short)(((short)VH<<8)|VL) |
Register name: YYMM~MS Register address: 48~51 (0x30~0x33) Read and write direction: R/W Default value: 0x0000 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:8 | YYMM[15:8] | moon |
7:0 | YYMM[7:0] | year |
15:8 | DDHH[15:8] | hour |
7:0 | DDHH[7:0] | day |
15:8 | MMSS[15:8] | second |
7:0 | MMSS[7:0] | Minute |
15:0 | MS[15:0] | millisecond |
eg:FF AA 30 16 03 (set the year, month 22-03) FF AA 31 0C 09 (set the day and hour 12-09) FF AA 32 1E 3A (set the minute and second 30:58) FF AA 33 F4 01 (set the millisecond 500 ) eg: send: FF AA 27 30 00 (read version number, 0x27 means read, 0x30 is year month register) return: 55 5F YYMM[7:0] YYMM[15:8] DDHH[7:0] DDHH [15:8] MMSS[7:0] MMSS[15:8] MS[7:0] MS[15:8] SUM |
Register name: AX~AZ Register address: 52~54 (0x34~0x36) Read and write direction: R Default value: 0x0000 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:0 | AX[15:0] | Acceleration X=AX[15:0]/32768*16g (g is the acceleration of gravity, preferably 9.8m/s2) |
15:0 | AY[15:0] | Acceleration Y=AY[15:0]/32768*16g (g is the acceleration of gravity, preferably 9.8m/s2) |
15:0 | AZ[15:0] | Acceleration Z=AZ[15:0]/32768*16g (g is the acceleration of gravity, preferably 9.8m/s2) |
read 3 acceleration:50 03 00 34 | ||
Register name: GX~GZ Register address: 55~57 (0x37~0x39) Read and write direction: R Default value: 0x0000 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:0 | GX[15:0] | Angular velocity X=GX[15:0]/32768*2000°/s |
15:0 | GY[15:0] | Angular velocity Y=GY[15:0]/32768*2000°/s |
15:0 | GZ[15:0] | Angular velocity Z=GZ[15:0]/32768*2000°/s |
Register name: HX~HZ Register address: 58~60 (0x3A~0x3C) Read and write direction: R Default value: 0x0000 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:0 | HX[15:0] | Magnetic field X=HX[15:0] (unit: LSB) |
15:0 | HY[15:0] | Magnetic field Y=HY[15:0] (unit: LSB |
15:0 | HZ[15:0] | Magnetic field Z=HZ[15:0] (unit: LSB) |
Register name: Roll~Yaw Register address: 61~63 (0x3D~0x3F) Read and write direction: R Default value: 0x0000 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:0 | Roll[15:0] | Roll angle X=Roll[15:0]/32768*180° |
15:0 | Pitch[15:0] | Pitch angle Y=Pitch[15:0]/32768*180° |
15:0 | Yaw[15:0] | Heading angle Z=Yaw[15:0]/32768*180° |
Register Name: TEMP Register Address: 64 (0x40) Read and Write Direction: R Default Value: 0x0000 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:0 | TEMP[15:0] | temperature=TEMP[15:0]/100℃ |
Register name: D0Status~D3Status Register address: 65~68 (0x41~0x44) Read and write direction: R Default value: 0x0000 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:0 | D0Status[15:0] | D0 state value |
15:0 | D1Status[15:0] | D1 state value |
15:0 | D2Status[15:0] | D2 state value |
15:0 | D3Status[15:0] | D3 state value |
Register name: PressureL~HeightH Register address: 69~72 (0x45~0x48) Read and write direction: R Default value: 0x0000 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:0 | PressureL[15:0] | Pressure= ((int)PressureH[15:0]<<16)|PressureL15:0 |
15:0 | PressureH[15:0] | |
15:0 | HeightL[15:0] | height= ((int)HeightH[15:0]<<16)|HeightL15:0 |
15:0 | HeightH[15:0] |
Register name: LonL~LatH Register address: 73~76 (0x49~0x4C) Read and write direction: R Default value: 0x0000 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:0 | LonL[15:0] | Lon[31:0]=((int)LonH[15:0]<<16)|LonL15:0 |
15:0 | LonH[15:0] | |
15:0 | LatL[15:0] | Lat[31:0]=((int)LatH[15:0]<<16)|LatL15:0 |
15:0 | LatH[15:0] | |
The NMEA8013 standard stipulates that the longitude output format of GPS is ddmm.mmmmm (dd is degrees, mm.mmmmm is minutes), and the decimal point is removed when the longitude/latitude is output. so the degrees of longitude/latitude can be calculated like this: dd=Lon[31:0 ]/10000000;dd=Lat[31:0]/10000000. The fraction of longitude/latitude can be calculated like this: mm.mmmmm=(Lon[31:0]%10000000)/100000;(% means remainder operation)mm. mmmmm=(Lat[31:0]%10000000)/100000; (% means remainder operation) |
Register name: GPSHeight~GPSVH Register address: 77~80 (0x4D~0x50 Read and write direction: R Default value: 0x0000 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:0 | GPSHeight[15:0] | GPS Altitude=GPSHeight[15:0]/10(m) |
15:0 | GPSYAW[15:0] | GPS heading=GPSYAW[15:0]/100(°) |
15:0 | GPSVL[15:0] | GPS ground speed=(((int)GPSVH[15:0]<<16)|GPSVL[15:0])/1000(km/h) |
15:0 | GPSVH[15:0] |
Register name: q0~q3 Register address: 81~84 (0x51~0x54) Read and write direction: R Default value: 0x0000 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:0 | q0[15:0] | Quaternion 0=q0[15:0]/32768 |
15:0 | q1[15:0] | Quaternion 1=q1[15:0]/32768 |
15:0 | q2[15:0] | Quaternion 2=q2[15:0]/32768 |
15:0 | q3[15:0] | Quaternion 3=q3[15:0]/32768 |
Register name: SVNUM~VDOP Register address: 85~88 (0x55~0x58) Read and write direction: R Default value: 0x0000 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:0 | SVNUM[15:0] | Number of GPS satellites = SVNUM[15:0] |
15:0 | PDOP[15:0] | Position positioning longitude =PDOP[15:0]/100 |
15:0 | HDOP[15:0] | Horizontal positioning longitude =HDOP[15:0]/100 |
15:0 | VDOP[15:0] | Vertical positioning longitude =VDOP[15:0]/100 |
Register Name: DELAYT Register Address: 89 (0x59) Read and Write Direction: R/W Default Value: 0x0000 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:0 | DELAYT[15:0] | Unit: ms When an alarm occurs at an angle, the port will generate a corresponding alarm signal. When the alarm disappears, the alarm signal will continue to delay DELAYT[15:0] before disappearing. |
eg:FF AA 59 E8 03(set the alarm signal delay to 1000ms) |
Register name: XMIN~XMAX Register address: 90~91 (0x5A~0x5B) Read and write direction: R/W Default value: 0x0000 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:0 | XMIN[15:0] | Set the X-axis angle alarm minimum value X-axis angle alarm minimum value =XMIN[15:0]*180/32768(°) |
15:0 | XMAX[15:0] | Set the maximum value of X-axis angle alarm X-axis angle alarm maximum value =XMAX[15:0]*180/32768(°) |
eg:FF AA 5A 72 FC (set -5 degrees) 0xFC72=-910,-910 180/32768=-5FF AA 5B 8E 03 (set 5 degrees) 0x038E=910,910*180/32768=5 5x axis at - There is no alarm between 5° and 5°. Once the range is exceeded, an alarm will occur. |
Register Name: BATVAL Register Address: 92 (0x5C) Read and Write Direction: R Default Value: 0x0000 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:0 | BATVAL[15:0] | voltage =BATVAL[15:0]/100 ℃ |
Register Name: ALARMPIN Register Address: 93 (0x5D) Read and Write Direction: R/W Default Value: 0x4365 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:12 | X-ALARM[15:12] | 0001(0x01): D00010(0x02): D10011(0x03): D20100(0x04): D30101(0x05): SCL0110(0x06): SDA |
11:8 | X+ALARM[11:8] | 0001(0x01): D00010(0x02): D10011(0x03): D20100(0x04): D30101(0x05): SCL0110(0x06): SDA |
7:4 | Y-ALARM[7:4] | 0001(0x01): D00010(0x02): D10011(0x03): D20100(0x04): D30101(0x05): SCL0110(0x06): SDA |
3:0 | Y+ALARM[3:0] | 0001(0x01): D00010(0x02): D10011(0x03): D20100(0x04): D30101(0x05): SCL0110(0x06): SDA |
eg: Set X-alarm signal output at D3 port Set X+ alarm signal output at D1 port Set Y- alarm signal output at SCL port Set Y+ alarm signal output at SCL port Send: FF AA 5D 55 42 |
Register name: YMIN~YMAX Register address: 94~95 (0x5E~0x5F) Read and write direction: R/W Default value: 0x0000 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:0 | YMIN[15:0] | Set the Y-axis angle alarm minimum value Y-axis angle alarm minimum value =YMIN[15:0]*180/32768(°) |
15:0 | YMAX[15:0] | Set the maximum value of Y-axis angle alarm Y-axis angle alarm maximum value =YMAX[15:0]*180/32768(°) |
eg:FF AA 5E 72 FC(set -5 degrees),0xFC72=-910,-910180/32768=-5FF AA 5F 8E 03(set 5 degrees),0x038E=910,910180/32768=5 Y axis at - There is no alarm between 5° and 5°. Once the range is exceeded, an alarm will occur. |
Register Name: GYROCALITHR Register Address: 97 (0x61) Read and Write Direction: R/W Default Value: 0x0000 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:0 | GYROCALITHR[15:0] | Set the gyroscope static threshold: Gyro static threshold =GYROCALITHR[15:0]/1000(°/s) |
eg: Set the static threshold of the gyroscope to 0.05°/sFF AA 61 32 00 When the angular velocity change is less than 0.05°/s and lasts for the time of "GYROCALTIME", the sensor recognizes that it is static and automatically resets the angular velocity less than 0.05°/s to zero The setting rule of the static threshold of the gyroscope can be determined by reading the value of the "WERROR" register. The general setting rule is: GYROCALITHR=WERROR*1.2, unit: °/s This register needs to be used in conjunction with the GYROCALTIME register. |
Register Name: ALARMLEVEL Register Address: 98 (0x62) Read and Write Direction: R/W Default Value: 0x0000 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:4 | ||
3:0 | ALARMLEVEL[3:0] | Set the alarm level: 0000(0x00): low level alarm (when not alarming, high level, when alarming, low level) 0001(0x01): high level alarm (when not alarming, low level, when alarming , high level) |
eg: Set high level alarm FF AA 62 01 00 |
Register Name: GYROCALTIME Register Address: 99 (0x63) Read and Write Direction: R/W Default Value: 0x03E8 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:0 | GYROCALTIME[15:0] | Set gyroscope auto-calibration time |
eg: Set the automatic calibration time of the gyroscope to 500msFF AA 63 F4 01 When the angular velocity change is less than "GYROCALITHR" and lasts for 500ms, the sensor recognizes that the sensor is stationary and automatically resets the angular velocity less than 0.05°/s to zero. This register needs to be combined with GYROCALITHR Register usage |
Register Name: TRIGTIME Register Address: 104 (0x68) Read and Write Direction: R/W Default Value: 0x0000 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:0 | TRIGTIME[15:0] | Set the alarm continuous trigger time |
Eg: Set the alarm continuous trigger time to 500ms FF AA 68 F4 01 When the angle alarm occurs, the alarm signal will not be output immediately, and the alarm signal can be output only when the angle alarm lasts for 500ms. This register is used to filter out alarms caused by malfunctions |
Register name: KEY Register address: 105 (0x69) Read and write direction: R/W Default value: 0x0000 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:0 | KEY[15:0] | Unlock register: When performing a write operation, you need to set this register first |
Eg: Unlock, write 0xB588 to this register (other values are invalid) FF AA 69 88 B5 |
Register Name: WERROR Register Address: 106 (0x6A) Read and Write Direction: R Default Value: 0x0000 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:0 | WERROR[15:0] | Gyroscope change value=WERROR[15:0]/1000*180/3.1415926(°/s) When the sensor is stationary, the "GYROCALITHR" register can be set by changing this register |
Register Name: TIMEZONE Register Address:107 (0x6B) Read and Write Direction: R/W Default Value: 0x0014 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:8 | ||
7:0 | TIMEZONE[7:0] | Set GPS time zone: 00000000(0x0000): UTC-12 00000001(0x0001): UTC-11 00000010(0x0002): UTC-10 00000011(0x0003): UTC-9 00000100(0x0004): UTC-8 00000101(0x0005): UTC-7 00000110(0x0006): UTC-6 00000111(0x0007): UTC-5 00001000(0x0008): UTC-4 00001001(0x0009): UTC-3 00001010(0x000A): UTC-2 00001011(0x000B): UTC-1 00001100(0x000C): UTC 00001101(0x000D): UTC+1 00001110(0x000E): UTC+2 00001111(0x000F): UTC+3 00010000(0x0010): UTC+4 00010001(0x0011): UTC+5 00010010(0x0012): UTC+6 00010011(0x0013): UTC+7 00010100(0x0014): UTC+8(Default East 8) 00010101(0x0015): UTC+9 00010110(0x0016): UTC+10 00010111(0x0017): UTC+11 00011000(0x0018): UTC+12 |
eg: FF AA 6B 15 00 (set GPS time zone to East 9) |
Register Name: WZTIME Register Address: 110 (0x6E) Read and Write Direction: R/W Default Value: 0x01F4 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:0 | WZTIME[15:0] | Angular velocity continuous rest time |
eg:Set the continuous static time of angular velocity to 500ms FF AA 6E F4 01, When the angular velocity is less than "WZSTATIC" and lasts for 500ms, the angular velocity output is 0, and the Z-axis heading angle is not integrated. This register needs to be used in conjunction with the "WZSTATIC" register |
Register Name: WZSTATIC Register Address: 111 (0x6F) Read and Write Direction: R/W Default Value: 0x012C | ||
---|---|---|
Bit | NAME | FUNCTION |
15:0 | WZSTATIC[15:0] | Angular velocity integration threshold =WZSTATIC[15:0]/1000(°/s) |
eg:Set the angular velocity integration threshold to 0.5°/s FF AA 6F F4 01 When the angular velocity is greater than 0.5°/s, the Z-axis heading angle starts to integrate the acceleration. When the angular velocity is less than 0.5°/s, the setting of the register "WZTIME" continues. When the angular velocity output is 0, and the Z-axis heading angle is not integrated, this register needs to be used in conjunction with the "WZTIME" register |
Register Name: MODDELAY Register Address: 116 (0x74) Read and Write Direction: R/W Default Value: 0x0BB8 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:0 | MODDELAY[15:0] | Set 485 data response delay, default 3000, unit: us |
eg:Set 485 data response delay 1000usFF AA 74 E8 03 When the sensor receives the Modbus read command, the sensor delays 1000us and returns data This register only supports Modbus version of the sensor |
Register Name: XREFROLL~YREFPITCH Register Address: 121~122 (0x79~0x7A) Read and Write Direction: R/W Default Value: 0x00000 | ||
---|---|---|
Bit | NAME | FUNCTION |
15:0 | XREFROLL[15:0] | Roll angle zero reference value =XREFROLL[15:0]/32768*180(°) |
15:0 | YREFPITCH[15:0] | Pitch angle zero reference =YREFPITCH[15:0]/32768*180(°) |
eg:The current roll angle is 2°, set the roll angle zero, subtract 2°, then XREFROLL[15:0]=2*32768/180=364=0x016CFF AA 79 6C 01 |
Register Name: NUMBERID1~NUMBERID6 Register Address: 127~132 (0x7F~0x84) Read and Write Direction: R Default Value: None | ||
---|---|---|
Bit | NAME | FUNCTION |
15:0 | NUMBERID1[15:0] | |
15:0 | NUMBERID2[15:0] | |
15:0 | NUMBERID3[15:0] | |
15:0 | NUMBERID4[15:0] | |
15:0 | NUMBERID5[15:0] | |
15:0 | NUMBERID6[15:0] | |
Equipment label:WT4200000001 |