1 Overview
The WT9011DCL-BT5.0 is a Bluetooth 5.0 multi-sensor device, detecting acceleration, angular velocity, angle, and magnetic field. Its robust housing and small outline make it suitable for industrial applications such as condition monitoring and predictive maintenance. Configuring the device enables users to address a broad variety of applications by interpreting sensor data using smart algorithms and Kalman filtering.
WT9011DCL-BT5.0 is a CE certified accelerometer. It is employed where the highest measurement accuracy is required. WT9011DCL-BT5.0 offers several advantages over competing sensors:
- Heated for best data availability: new WITMOTION patented zero-bias automatic detection calibration algorithm outperforms traditional accelerometer sensors.
- High precision Roll Pitch Yaw (X Y Z axis) Acceleration + Angular Velocity + Angle + Magnetic Field output.
- Low cost of ownership: remote diagnostics and lifetime technical support by the WITMOTION service team.
- Developed tutorial: providing manual, datasheet, demo video, free software for Windows computer, APP for Android smartphones, iOS APP for iPhone, and communication protocol for project development.
- WITMOTION sensors have been praised by thousands of engineers as a recommended attitude measurement solution.
2 Features
- The sensor integrates high-precision gyroscope, accelerometer, and geomagnetic field sensor, and adopts a high-performance microprocessor and advanced dynamic calculation and Kalman dynamic filtering algorithm, which can quickly determine the current real-time motion attitude of the sensor. The advanced digital filtering technology effectively reduces measurement noise and improves accuracy.
- The sensor is integrated with an attitude solver and a dynamic Kalman filter algorithm, which can accurately output the sensor's current attitude in a dynamic environment. The attitude measurement accuracy is 0.2 degrees, with extremely high stability, and performance superior to some professional inclination meters.
- The Z-axis heading angle is added to the filter fusion of the geomagnetic sensor, which resolves the cumulative error caused by gyroscope integral drift in the 6-axis algorithm, enabling stable heading angle data output over time. Note: Due to magnetic field detection, calibration is required before use, and the device must be at least 20cm away from magnetic interference areas, electronic equipment, magnets, speakers, and other hard magnetic objects.
- Working current: approximately 14mA; standby current: 14uA-30uA.
- Data interface: baud rate 115200.
- Output content can be selected arbitrarily; data output frequency: 0.2Hz-200Hz, default 10Hz.
- Bluetooth 5.0 wireless transmission offers stable transmission with a maximum distance of up to 90 meters.
- Bluetooth 5.0 supports Android and iOS operating systems (actual use depends on the final device).
- Battery: working time: 8 hours, charging time: 2 hours, capacity: 130mAh.
3 Specification
3.1 Parameter
Parameter | Specification |
---|---|
Voltage | 3.3-5V |
Current | Working current: 14mA Broadcast current: 21mA Stand-by current: 14uA-30uA |
Range | Acceleration: ±16g Angular Velocity: ±2000°/s Magnetic field: ±2Gauss Angle: X/Z±180°, Y±90° |
Resolution | Acceleration: 0.5mg/LSB (2048LSB/g) Angular Velocity: 0.061 (°/s)/LSB Magnetic field: 0.0667mG/LSB Angle: 0.0055 °/LSB |
Accuracy | Acceleration: 0.01g, angular speed 0.2°/s |
Output content | Acceleration, Angular Velocity, Angle (Magnetic is not output by default) |
Distance | Up to 90 meters (open area) |
Battery | Working time: 8 hours, charging time: 2 hours, capacity: 130mAh |
Duration | 8 hours |
Size | 23.5mm x 32.5mm x 11.4mm |
Weight | 9g |
Data | Angle: X Y Z, 3-axis Acceleration: X Y Z, 3-axis Angular Velocity: X Y Z, 3-axis Time, Quaternion |
Output frequency | 0.2Hz-200Hz, default 10Hz |
Interface | Bluetooth 5.0/Type-C |
Bluetooth | Coverage range: ≤90m Built-in Chip: nRF52832 |
Measurement Range & Accuracy
Sensor | Measurement Range | Accuracy/ Remark |
---|---|---|
Accelerometer | X, Y, Z, 3-axis ±16g | Accuracy: 0.01g Resolution: 16bit Stability: 0.005g |
Gyroscope | X, Y, Z, 3-axis ±2000°/s | Resolution: 16bit Stability: 0.05°/s |
Magnetometer | X, Y, Z, 3-axis ±4900μT | 0.15μT/LSB typ. (16-bit) |
Angle/ Inclinometer | X, Y, Z, 3-axis X, Z-axis: ±180° Y ±90° (Y-axis 90° is singular point) |
Accuracy: X, Y-axis: 0.05° Z-axis: 1° (after magnetic calibration) |
3.2 Size
The sensor has the following dimensions:
- Length: 32.5 mm (Tolerance ±0.2 mm)
- Width: 23.5 mm (Tolerance ±0.2 mm)
- Height: 11.6 mm (Tolerance ±0.2 mm)
- Weight: 9 g (Tolerance ±0.2 g)
Unit: millimeter for dimensions, gram for weight.
3.3 Axial Direction
The axial direction and rotation are defined by the right-hand rule. The thumb of the right hand points to the axis, and the direction of the four fingers bending indicates the direction of rotation around that axis.
- The diagram shows the Y-axis pointing upwards on the front face, the X-axis pointing to the right on the front face, and the Z-axis pointing outwards from the front face.
- The top view shows the Z-axis pointing to the right and the X-axis pointing upwards.
4 Port Definition
The device features a single Type-C port.
PIN | Function |
---|---|
Type-C | 3.3-5V input supply |
5 Casing Specification
The casing dimensions are illustrated in the diagrams:
- Length: 32.5 mm
- Width: 23.5 mm
- Height: 11.4 mm
6 Communication Protocol
6.1 Data Format
Sensor upload uses Flag=0x61 for (Angle, Angular velocity, Acceleration) data by default. Flag=0x71 is used for Magnetic field data and requires sending the corresponding register instruction. Bluetooth data format uploads up to 20 bytes per data packet.
6.1.1 Data Packet (Default)
The default data packet structure includes a header and flag bits, followed by data for acceleration (axL, axH), and yaw (YawL, YawH). Other fields like ayL, ayH, azL, azH, wxL, wxH, wyL, wyH, wzL, wzH, RollL, RollH, PitchL, PitchH are also part of the data stream.
Data return sequence: Acceleration X Y Z, Angular velocity X Y Z, Angle X Y Z, low byte first, high byte last.
Flag = 0x61 indicates 18 bytes of data containing Acceleration, Angular velocity, and Angle.
Packet header (1 Byte) | Flag bit (1 Byte) | axL | axH | ..... | YawL | YawH |
---|---|---|---|---|---|---|
0x55 | Flag | 0xNN | 0xNN | ..... | 0xNN | 0xNN |
Data Fields:
- 0x55: Packet header
- 0x61: Mark bit
- axL, axH: X Acceleration (low and high byte)
- ayL, ayH: Y Acceleration (low and high byte)
- azL, azH: Z Acceleration (low and high byte)
- wxL, wxH: X Angular velocity (low and high byte)
- wyL, wyH: Y Angular velocity (low and high byte)
- wzL, wzH: Z Angular velocity (low and high byte)
- RollL, RollH: X Angle (low and high byte)
- PitchL, PitchH: Y Angle (low and high byte)
- YawL, YawH: Z Angle (low and high byte)
Calculation Methods:
- Acceleration: Unit: g
ax=((axH<<8)|axL)/32768*16g (where g is Gravity acceleration, 9.8m/s²)
ay=((ayH<<8)|ayL)/32768*16g
az=((azH<<8)|azL)/32768*16g - Angular Velocity: Unit: °/s
wx=((wxH<<8)|wxL)/32768*2000 (°/s)
wy=((wyH<<8)|wyL)/32768*2000 (°/s)
wz=((wzH<<8)|wzL)/32768*2000 (°/s) - Angle: Unit: °
Roll (X axis) = ((RollH<<8)|RollL)/32768*180 (°)
Pitch (Y axis) = ((PitchH<<8)|PitchL)/32768*180 (°)
Yaw angle (Z axis) = ((YawH<<8)|YawL)/32768*180 (°)
Note on Coordinate System and Data:
- The coordinate system used for attitude Angle is the northeast sky coordinate system, with the sensor placed in the positive direction. The X-axis is to the left, the Y-axis is forward, and the Z-axis is upward. Euler Angle representation follows a Z-Y-X rotation order.
- The roll Angle range is ±180 degrees. Due to the Z-Y-X rotation order, the pitch Angle (Y-axis) range is ±90 degrees. Angles exceeding 90 degrees will be adjusted, and the X-axis Angle may exceed 180 degrees. Refer to information on Euler Angles for details.
- The three axes are coupled. Independent changes occur for small angles; coupled changes occur for large angles. For example, when the Y-axis approaches 90 degrees, rotation around Y alone can cause significant changes in the X-axis Angle.
Description:
- Data is sent in hexadecimal, not ASCII code.
- Each data point is transmitted as low byte and high byte, combined into a signed short type. For example, X-axis acceleration data Ax uses AxL (low byte) and AxH (high byte).
Example of Data Conversion:
Given actual data, DataH (high byte) and DataL (low byte): Data = ((short)DataH << 8) | DataL. DataH must be converted to a signed short first. The resulting Data is also a signed short type, capable of representing negative numbers.
6.1.2 Single Return Register Data Packet
A single return data packet requires sending a register instruction first, in the format: FF AA 27 XX 00
, where XX is the register number (refer to section 7.3 for details).
Example Instructions:
Function | Instruction |
---|---|
Read Magnetic Field | FF AA 27 3A 00 |
Read Quaternion | FF AA 27 51 00 |
Read Temperature | FF AA 27 40 00 |
Read the amount of electricity | FF AA 27 64 00 |
Read the version number | FF AA 27 2E 00 FF AA 27 2F 00 |
After sending an instruction, the sensor returns a data packet starting with 0x55 0x71. This packet contains register addresses and 7 registers data (fixed upload of 8 registers).
Return Data Format: Start register (2 byte) + register data (16 byte, 8 registers)
Packet header | Sign | Start register low byte | Start register high byte | Start register data (No.1) low byte | Start register data (No.1) high byte | ...... | No.8 register data low byte | No.8 register data high byte |
---|---|---|---|---|---|---|---|---|
0x55 | 0x71 | RegL | RegH | 0xNN | 0xNN | ...... | 0xNN | 0xNN |
Note: 0xNN is the specific value received, with the low byte first and the high byte second.
6.1.2.1 Magnetic Field Output
The unit of magnetic field data calculated from raw data is milligauss (mG), which differs from the unit displayed on the computer. Conversion requires a specific calculation method.
Link for conversion method: Google Drive Link
Data format: 0x55 0x71 0x3A 0x00 HxL HxH HyL HyH HzL HzH ...
Calculated Formula (Unit: mG):
- Magnetic field (x axis) Hx = ((HxH<<8)|HxL)
- Magnetic field (y axis) Hy = ((HyH<<8)|HyL)
- Magnetic field (z axis) Hz = ((HzH<<8)|HzL)
Example: Sending instruction to read magnetic field: FF AA 27 3A 00. The sensor returns data: 55, 71 00 68 01 00 69 3a7a 00 00 00 00 00 00 00 00, totaling 20 bytes. Bytes 5 to 10 are used for calculation. Example values: magnetic field x=360, y=105, z=122.
6.1.2.2 Quaternion Output
Data format: 0x55 0x71 0x51 0x00 Q0L Q0H Q1L Q1H Q2L Q2H Q3L Q3H
Calculated Formula:
- Q0 = ((Q0H<<8)|Q0L)/32768
- Q1 = ((Q1H<<8)|Q1L)/32768
- Q2 = ((Q2H<<8)|Q2L)/32768
- Q3 = ((Q3H<<8)|Q3L)/32768
Checksum: Sum=0x55+0x59+Q0L+Q0H+Q1L +Q1H +Q2L+Q2H+Q3L+Q3H
6.1.2.3 Temperature Output
Data format: 0x55 0x71 0x40 0x00 TL TH ......
Calculated Formula: T = ((TH<<8)|TL) /100°C
6.1.2.4 Version Number Output
Data format for Version 1: 0x55 0x71 0x2E 0x00 Version1L Version1H ......
Data format for Version 2: 0x55 0x71 0x2F 0x00 Version2L Version2H ......
Version Number Calculation Formula:
Version1 = ((Version1H<<8)|Version1L)
VERSION = Version1.Version2H.Version2L
6.2 Commands
6.2.1 Read Register Value
Instruction format: FF AA 27 XX 00
(where XX is the register number). This command reads the register value.
Examples:
- Read magnetic field: FF AA 27 3A 00
- Read quaternion: FF AA 27 51 00
- Read temperature: FF AA 27 40 00
After sending this instruction, the sensor returns a data packet starting with 0x55 0x71, containing the data of the corresponding start register address and the following 7 registers (total 8 registers). The format of the return data is referred to in section 7.1.2.
6.2.2 Calibration
Calibration commands:
Instruction | Function |
---|---|
FF AA 01 01 00 | Accelerometer Calibration |
FF AA 01 07 00 | Magnetic Field Calibration |
FF AA 01 00 00 | Complete Magnetic Field Calibration |
Example for Magnetic Field Calibration:
- Send: FF AA 01 07 00
- Rotate the sensor 360 degrees around three axes (recommended: 3 circles, 360 degrees * 3).
- Send: FF AA 01 00 00 to quit the calibration.
6.2.3 Save Settings
Instruction format: FF AA 00 SAVE 00
SAVE: Set
- 0: Save current configuration
- 1: Restore default configuration and save
6.2.4 Return Rate
Instruction format: FF AA 03 RATE 00
RATE: Return rate
- 0x01: 0.2Hz
- 0x02: 0.5Hz
- 0x03: 1Hz
- 0x04: 2Hz
- 0x05: 5Hz
- 0x06: 10Hz (default)
- 0x07: 20Hz
- 0x08: 50Hz
- 0x09: 100Hz
- 0x0B: 200Hz
- 0x0C: Single return
6.2.5 Reading Sensor Power
Instruction format: FF AA 27 64 00
The corresponding relationship between voltage and power percentage is shown in the table below.
Register value | Voltage value | Battery percentage |
---|---|---|
>396 | > 3.96V | 100% |
393-396 | 3.93V-3.96V | 90% |
387-393 | 3.87V-3.93V | 75% |
382-387 | 3.82V-3.87V | 60% |
379-382 | 3.79V-3.82V | 50% |
377-379 | 3.77V-3.79V | 40% |
373-377 | 3.73V-3.77V | 30% |
370-373 | 3.70V-3.73V | 20% |
368-370 | 3.68V-3.70V | 15% |
350-368 | 3.50V-3.68V | 10% |
340-350 | 3.40V-3.50V | 5% |
<340 | <3.40V | 0% |
6.3 Register Address
This table maps register addresses to their symbols and functions.
Address | Symbol | Function |
---|---|---|
0x00 | SAVE | Save the current configuration |
0x01 | CALSW | The calibration |
0x03 | RATE | Data return rate |
0x05 | AXOFFSET | The X-axis acceleration is zero partial |
0x06 | AYOFFSET | The Y-axis acceleration is zero offset |
0x07 | AZOFFSET | The z-axis acceleration is zero offset |
0x08 | GXOFFSET | The X-axis angular velocity is zero offset |
0x09 | GYOFFSET | The Y-axis angular velocity is zero offset |
0x0a | GZOFFSET | The Z axis angular velocity is zero offset |
0x0b | HXOFFSET | The X-axis magnetic field is zero offset |
0x0c | HYOFFSET | Y-axis magnetic field zero deviation |
0x0d | HZOFFSET | Z-axis magnetic field zero deviation |
0x30 | YYMM | Year and month |
0x31 | DDHH | Day and hour |
0x32 | MMSS | Minutes, seconds |
0x33 | MS | ms |
0x34 | AX | X axis acceleration |
0x35 | AY | Y-axis acceleration |
0x36 | AZ | Z axis acceleration |
0x37 | GX | X angular velocity |
0x38 | GY | Y-axis angular velocity |
0x39 | GZ | Z axis angular velocity |
0x3a | HX | X-axis magnetic field |
0x3b | HY | Y-axis magnetic field |
0x3c | HZ | Z axis magnetic field |
0x3d | Roll | X axis Angle |
0x3e | Pitch | Y axis Angle |
0x3f | Yaw | Z axis Angle |
0x51 | Q0 | Four elements Q0 |
0x52 | Q1 | Four elements Q1 |
0x53 | Q2 | Four element Q2 |
0x54 | Q3 | Four elements Q3 |
0x04 | BAUD | Serial port baud rate |
0x2e | VERSION1 | version number |
0x2f | VERSION2 | Firmware version number branch Hardware version number |