New: seeMote Cube for visionOS Developers - Build physical input for Apple Vision Pro apps. Learn More ›

REVIEWS

DFRobot IMU Sensor Series Test: 6DOF, 9DOF and 10DOF Static Drift, Stability and Magnetic Interference

DFRobot Aug 06 2026 22

An engineering test report for the DFRobot IMU sensor series, covering the Gravity and Fermion 6DOF, 9DOF and 10DOF modules from Gravity: BMI323 6DOF IMU Sensor through Fermion: BMI323+BMM350+BMP581 10DOF IMU Sensor, including their BMM350 magnetometer and BMP581 pressure-sensor channels. This customer-facing report is based on the engineering workbooks and retains the original procedures, measurements, anomalies, limitations and verdicts.

 

DFRobot 6DOF vs. 9DOF vs. 10DOF IMU Sensors Comparison

SKUForm factorDOF and sensorsInterfaceBest suited for
Gravity: BMI323 6DOF IMU SensorGravity6DOF; BMI323I²C / UARTFast wiring and prototyping
Fermion: BMI323 6DOF IMU SensorFermion6DOF; BMI323I²CCompact embedded integration
Gravity: BMI323+BMM350 9DOF IMU SensorGravity9DOF; BMI323 + BMM350I²C / UARTFast wiring and prototyping
Fermion: BMI323+BMM350 9DOF IMU SensorFermion9DOF; BMI323 + BMM350I²CCompact embedded integration
Gravity: BMI323+BMM350+BMP581 10DOF IMU SensorGravity10DOF; BMI323 + BMM350 + BMP581I²C / UARTFast wiring and prototyping
Fermion: BMI323+BMM350+BMP581 10DOF IMU Sensor Fermion10DOF; BMI323 + BMM350 + BMP581I²CCompact embedded integration

All six modules use the BMI323 as their common six-axis motion core. The 6DOF models provide acceleration and angular-rate data; the 9DOF models add the BMM350 magnetometer; and the 10DOF models add the BMP581 pressure/altitude channel. Gravity boards prioritize fast wiring and prototyping, while Fermion boards target compact embedded integration.

 

IMU Static-Drift and Magnetic-Interference Test Method

DFRobot BMI323 15-Minute Static-Drift Test

Each board was warmed up for three minutes, held stationary and sampled every 0.5 minutes for a total of 31 records. The theoretical static value was treated as 0 for accelerometer X/Y and all three gyroscope axes. Because the software coordinate system was redefined using the BMM350 orientation as the reference, the accelerometer Z-axis reference was −1 g.

  • Mean: arithmetic mean of all samples.
  • Standard deviation: sample standard deviation calculated with STDEV in the source workbook.
  • Maximum theoretical deviation: largest absolute difference between any sample and its theoretical static value.
  • Maximum magnetic drift: peak-to-peak value over 15 minutes.
  • Altitude drift: largest absolute change relative to the 0-minute baseline.

 

DFRobot BMI323 and BMM350 Magnetic-Interference Test

Each test recorded a no-magnet baseline, magnet distances of 30 cm, 10 cm and 5 cm, and recovery readings 30 and 60 seconds after magnet removal. This simplified test uses the same-condition baseline as its reference and does not quantify a noise-increase percentage. A valid noise comparison would require thousands of continuous samples to calculate RMS noise or standard deviation, whereas this test recorded only individual readings at each test stage. The verdicts are based on the observed numerical changes, offsets and recovery after magnet removal.

SKUStatic-test setupMagnetic-interference setup
Gravity: BMI323 6DOF IMU Sensor 26°C; ±2 g; ±250°/s; I²C; 3.3 V; 3 min warm-up26°C; 2 × Ø4 × 2 mm N52; 30/10/5 cm; 30/60 s after removal
Fermion: BMI323 6DOF IMU Sensor 26°C; ±2 g; ±250°/s; I²C; 3.3 V; 3 min warm-up26°C; 2 × Ø20 × 2 mm N35; 30/10/5 cm; 30/60 s after removal
Gravity: BMI323+BMM350 9DOF IMU Sensor26°C; ±2 g; ±250°/s; ±2000 µT; 100 Hz ODR; I²C; 3.3 V; 3 min warm-up26°C; 2 × Ø4 × 2 mm N52; same ranges and ODR; 30/10/5 cm; 30/60 s after removal
Fermion: BMI323+BMM350 9DOF IMU Sensor25°C; ±2 g; ±250°/s; ±2000 µT; 100 Hz ODR; I²C; 3.3 V; 3 min warm-up25°C; 2 × Ø20 × 2 mm N35; same ranges and ODR; BMI323 and BMM350 channels recorded
Gravity: BMI323+BMM350+BMP581 10DOF IMU Sensor24°C; ±2 g; ±250°/s; ±2000 µT; standard pressure mode; 100 Hz ODR; I²C; 3.3 V; 3 min warm-up24°C; 2 × Ø20 × 2 mm N35; BMI323, BMM350 and altitude recorded
Fermion: BMI323+BMM350+BMP581 10DOF IMU SensorApprox. 29°C with gradual cooling; ±2 g; ±250°/s; 25 Hz high-accuracy mag mode; normal pressure mode; I²C; 3.3 V; 3 min warm-up; 540 m local altitude referenceApprox. 29°C; 2 × Ø20 × 2 mm N35; BMI323, BMM350, altitude and temperature recorded

The explanatory text in the Gravity: BMI323 6DOF IMU Sensor and Gravity: BMI323+BMM350 9DOF IMU Sensor workbooks originally referred to N35 magnets, while the test-condition tables specified N52. The project owner confirmed N52 as the correct grade, which is used throughout this report. The magnetic flux density at the sensor position was not measured. Therefore, the Ø20 × 2 mm N35 disc magnets used in this test should not be interpreted as a defined 250 mT magnetic-field condition, and the recorded output changes should not be directly compared with the BMM350 datasheet’s ±100 µT specification limit.

 

DFRobot BMI323 Accelerometer and Gyroscope: 15-Minute Static-Drift and Stability Results

IMU 15-minute static-drift and stability summary
IMU 15-minute static-drift and stability summary

The orange dashed lines represent the source-workbook references: 0.05 g for maximum accelerometer deviation, 1°/s for gyroscope zero-rate offset, 2 µT for 15-minute magnetometer peak-to-peak drift, and 2 m for altitude drift. These metrics have different units and physical meanings and should not be compared with one another.

 

SKUAmbient temperatureMax accel deviation (g)Max absolute gyro reading (°/s)Max 15-min mag peak-to-peak (µT)15-min altitude drift (m)Source verdict
Gravity: BMI323 6DOF IMU Sensor 26°C0.03910.641Pass
Fermion: BMI323 6DOF IMU Sensor 26°C0.02220.191Pass
Gravity: BMI323+BMM350 9DOF IMU Sensor26°C0.01550.4651.92Pass; magnetometer: pass, close to limit
Fermion: BMI323+BMM350 9DOF IMU Sensor 25°C0.01930.2821.89Pass
Gravity: BMI323+BMM350+BMP581 10DOF IMU Sensor 24°C0.02110.3361.490.08Pass
Fermion: BMI323+BMM350+BMP581 10DOF IMU Sensor≈29°C (30.01→28.24°C)0.01620.2521.510.17Pass

 

All six modules remained below the source acceptance references for the accelerometer and gyroscope. Gravity: BMI323+BMM350 9DOF IMU Sensor recorded 1.92 µT peak-to-peak drift on the magnetometer Z axis. Although this remained below 2 µT, it was close to the boundary, so the original verdict classified the magnetometer result as a pass close to the limit. That qualification is retained here. The maximum 15-minute altitude drift was 0.08 m for Gravity: BMI323+BMM350+BMP581 10DOF IMU Sensor and 0.17 m for Fermion: BMI323+BMM350+BMP581 10DOF IMU Sensor.

 

During the Fermion: BMI323+BMM350+BMP581 10DOF IMU Sensor test, ambient temperature gradually fell from 30.01°C to 28.24°C. Its result therefore represents performance during that temperature change and should not be treated as a temperature-chamber drift characterization.

 

DFRobot BMI323 Magnetic-Interference Results: Fluctuation and Recovery Near a Magnet at 5 cm

Maximum single-axis accelerometer and gyroscope fluctuation for six IMUs at the 5 cm magnetic-interference stage
Maximum single-axis accelerometer and gyroscope fluctuation for six IMUs at the 5 cm magnetic-interference stage

 

SKUMagnet conditionMax accel fluctuation at 5 cm (g)Max gyro fluctuation at 5 cm (°/s)Max mag offset at 5 cm (µT)Workbook mag-offset summary after 60 s (µT)Absolute altitude change (m)
Gravity: BMI323 6DOF IMU Sensor 2 × Ø4 × 2 mm N520.00110.366
Fermion: BMI323 6DOF IMU Sensor 2 × Ø20 × 2 mm N350.00270.069
Gravity: BMI323+BMM350 9DOF IMU Sensor2 × Ø4 × 2 mm N520.00060.52616.230.53
Fermion: BMI323+BMM350 9DOF IMU Sensor2 × Ø20 × 2 mm N350.00320.06974.310.38
Gravity: BMI323+BMM350+BMP581 10DOF IMU Sensor2 × Ø20 × 2 mm N350.0010.419134.410.60
Fermion: BMI323+BMM350+BMP581 10DOF IMU Sensor 2 × Ø20 × 2 mm N350.00130.02387.341.830.02

 

All updated workbooks concluded that no abrupt large numerical discontinuity occurred. Fermion: BMI323+BMM350 9DOF IMU Sensor did contain one temporary 0.0177 g X-axis acceleration fluctuation at the 30 cm stage, but it was not sustained. The revised source verdict remained “overall pass, with performance close to excellent.” This report retains the event and removes the noise-increase percentages that appeared only in the previous workbooks.

 

The updated gyroscope wording differs by SKU. Gravity: BMI323 6DOF IMU Sensor , Fermion: BMI323 6DOF IMU Sensor , Gravity: BMI323+BMM350 9DOF IMU Sensor and Gravity: BMI323+BMM350+BMP581 10DOF IMU Sensor report a noticeable increase in fluctuation during magnetic interference, followed by a substantial decrease after 60 seconds of recovery, with slight residual interference. Fermion: BMI323+BMM350 9DOF IMU Sensor describes only weak interference on the accelerometer and gyroscope, with both returning to the baseline range after 60 seconds. Fermion: BMI323+BMM350+BMP581 10DOF IMU Sensor reports normal random-noise fluctuation throughout and a full return to the baseline range after 60 seconds. These distinctions are retained rather than generalized into a single stronger claim.

 

Because Gravity: BMI323 6DOF IMU Sensor /Gravity: BMI323+BMM350 9DOF IMU Sensor used Ø4 × 2 mm N52 magnets while the other models used Ø20 × 2 mm N35 magnets—and because temperature and sampling modes were not identical—the values confirm the outcome of each individual test but do not constitute a product ranking.

 

DFRobot BMM350 Magnetometer Results: Magnet-Induced Offset and 60-Second Recovery

DFRobot IMU sensor series BMM350 magnetometer offset at 5 cm and recovery 60 seconds after magnet removal
DFRobot IMU sensor series BMM350 magnetometer offset at 5 cm and recovery 60 seconds after magnet removal

A magnetometer is designed to respond to magnetic fields, so a nearby magnet is expected to shift its output. The four modules with complete updated magnetic-stage records report maximum single-axis offset summaries of 16.23 µT, 74.31 µT, 134.41 µT and 87.34 µT at 5 cm. After 60 seconds of recovery, their workbook-summary offsets were 0.53 µT, 0.38 µT, 0.60 µT and 1.83 µT. The revised source reports concluded that all three axes returned to near their original baselines, with no permanent residual magnetization observed.

These summary values are reproduced from the updated workbooks as provided; they are not replaced by recalculations from the rounded stage readings shown in the appendices. Magnet size and grade, ambient temperature and sampling mode were not identical across the products, so the chart presents the recorded outcomes of the individual tests rather than a cross-product performance ranking.

 

DFRobot BMP581 Pressure and Altitude Stability Results

Gravity: BMI323+BMM350+BMP581 10DOF IMU Sensor recorded a maximum altitude drift of 0.08 m over 15 minutes. During the magnet approach and removal stages, altitude remained between 533.51 and 533.52 m. Fermion: BMI323+BMM350+BMP581 10DOF IMU Sensor recorded a maximum 15-minute altitude drift of 0.17 m; its magnetic-stage altitude change relative to baseline ranged from −0.03 m to +0.01 m. Both source reports passed the BMP581 pressure/altitude channel.

These altitude values were derived from local pressure conditions and the workbook's reference settings. They are suitable for evaluating short-term stability, not for traceable absolute-altitude calibration.

 

Engineering Guidance

Choose a 6DOF model for motion, tilt, vibration and angular-rate sensing when no magnetic heading channel is required.

For heading or electronic-compass applications using the 9DOF and 10DOF models, keep the board away from magnets, motors, speakers, steel structures and high-current wiring. Calibrate the magnetometer in its final installed position.

 

  • A nearby magnet can substantially change the BMM350's live output. Recovery after removal does not mean heading remains reliable while the magnet is present.
  • Gravity and Fermion primarily differ in interface and form factor. This sample set does not establish that either form factor is inherently more accurate.
  • Each SKU is represented by one engineering test record. The results are not a batch-capability study, lifetime test or full environmental qualification.

 

FAQ: BMI323, BMM350 and 10DOF IMU Sensors Test Results

Did the DFRobot BMI323 6DOF IMU sensors pass the 15-minute static-drift test?

Yes. The BMI323 accelerometer and gyroscope on Gravity: BMI323 6DOF IMU Sensor through Fermion: BMI323+BMM350+BMP581 10DOF IMU Sensor passed the 15-minute static-drift criteria in their respective workbooks. “Pass” applies only to the tested samples and stated conditions; it is not an absolute-accuracy calibration or a batch-capability certification.

 

Does a magnet affect the DFRobot BMI323 accelerometer and gyroscope?

None of the six updated records showed an abrupt large numerical discontinuity, but the observed effect varied by SKU. Gravity: BMI323 6DOF IMU Sensor, Fermion: BMI323 6DOF IMU Sensor, Gravity: BMI323+BMM350 9DOF IMU Sensor and Gravity: BMI323+BMM350+BMP581 10DOF IMU Sensor reported noticeably greater gyroscope fluctuation during magnetic interference, followed by a substantial decrease after 60 seconds with slight residual interference. Fermion: BMI323+BMM350 9DOF IMU Sensor and Fermion: BMI323+BMM350+BMP581 10DOF IMU Sensor respectively reported weak interference followed by a return to baseline, and normal random noise followed by full recovery.

 

Does the DFRobot BMM350 magnetometer recover after the test magnet is removed?

It did under the stated test conditions. The BMM350 on Gravity: BMI323+BMM350 9DOF IMU Sensor through Fermion: BMI323+BMM350+BMP581 10DOF IMU Sensor showed the expected output offset near the magnet. Their summary offsets after 60 seconds of recovery ranged from 0.53 to 1.83 µT, and all four source records concluded that the three axes returned to near their original baselines with no permanent residual magnetization observed. Heading data should still be considered unreliable while the test magnet is nearby.

 

What is the difference between a 6DOF, 9DOF and 10DOF IMU?

In this series, the 6DOF modules use the BMI323 for three-axis acceleration and three-axis angular rate. The 9DOF modules add the BMM350 three-axis magnetic-field measurement, while the 10DOF modules also add a BMP581 pressure/altitude channel. More degrees of freedom means more sensing channels; it does not mean this report establishes greater absolute accuracy.

 

Final Conclusion

Under the conditions stated in their respective workbooks, the BMI323 inertial channels on Gravity: BMI323 6DOF IMU Sensor–Fermion: BMI323+BMM350+BMP581 10DOF IMU Sensor completed and passed both the 15-minute static-drift test and the staged magnetic-interference test. The static magnetometer stability of the 9DOF and 10DOF products met the original workbook criteria. Gravity: BMI323+BMM350 9DOF IMU Sensor through Fermion: BMI323+BMM350+BMP581 10DOF IMU Sensor showed the expected BMM350 offset when the test magnet was positioned nearby and returned to near-baseline values within 60 seconds of magnet removal. The pressure/altitude channels on both 10DOF modules remained stable. Because this test did not collect the continuous sample data required to calculate RMS noise or standard deviation, this report does not publish noise-increase percentages.

 

The results support the series for maker projects, robotics, wearables, motion sensing, heading-aware systems and altitude-aware prototypes. Real installations should still include zero-offset calibration, magnetometer calibration and an interference assessment in the final mechanical and electrical environment.