04-23-2024 12:03 PM - edited 04-23-2024 12:04 PM
I am using BMI270 gyroscope in a product and I am currently factory-testing it on a table (motionless) with -1..+1 dps criteria.
Gyroscope setup is as follow:
GYR_CONF 0x42 = 0xAA => ODR=400, osr2, norm-noise(ulp), perf-filter GYR_RANGE 0x43 = 0x00 => GYR_RANGE=+/-2000dps (4000 total => 16 LSB/dps), OIS_RANGE=+/-250dps
Especially I have 16 LSB per dps, meaning I consider soldered item as still good if gyroscope is within raw -15..+15 after FOC.
Most pieces succeed the test repetitively, but a few pieces fails this test (closer to +/- 2dps, sometimes up to 6 dps).
I guess I should try gyr_noise_pef=hp instead of current ulp and/or smaller range, but am I right thinking my bounds are reasonable even with ulp noise?
04-26-2024 05:29 AM
Hi aloiseau,
Thanks for your inquiry.
From your description, it appears that you read sensor data while the sensor is stationary to determine if it meets the standard of -1..+1 dps. This is testing offset, not noise. Setting gyrynoise_pef to bit hp does not affect offset.
Is FOC running normally for sensors with large offsets?
04-26-2024 02:40 PM
You are right, I should better plot measurements to sort offset and noise. I will try to to it when I can, likely within a few weeks. I will also try to reduce gyro range which is way larger than my needs.
FOC runs flowlessly and actually results in very small gyro offsets (raw values (-1,0,-2) in registers 0x74..0x77, with gyr_off_en set and gyr_gain_en unset)