02-20-2023 07:22 AM - edited 02-20-2023 07:23 AM
Hello,
What I Did
I am using BHI260AP & BMM150 together with nRF52840. I upload Bosch_APP30_SHUTTLE_BHI_aux_BMM150.fw.h and the am using the API on GitHub (SHA 5b26dc4802f500f75e1086c2a156e3ecf800560c → Last Commit Before v1.4.1).
1) After I upload the firmware I register the fifo callbacks:
2) Then set the virtual sensor configuration:
For the values:
• sample_rate = 20 Hz
• report_latency_ms = 0
3) To get the measurements and activate callbacks, I call the bhy2_get_and_process_fifo function with a uint8_t array of size 2048 as argument. This call occurs with a frequency of 20Hz.
My Problem
I do not experience a problem on obtaining the correct data at lower rotational speeds or sending it over BLE, but I have 2 problems on the performance of these measurements:
1-When I rotate the sensor around its yaw axis, I observed that ~3 degrees of drift occurs with every full rotation. Measurements do not drift when the module is stationary.
2-I take the measurement at a specific position, then take the module and rotate it arbitrarily. When I place the module again at the same specific position, illogically distant measurements are coming from it.
Therefore, my question is that how can I improve the consistency of my measurements. I tried using higher frequencies for both reading the fifo and sensor sample rate. I also tried using "Geo-magnetic rotation vector wake up" sensor, since geo-referenced rotation data would be better for me. However, these do not seem to be working and I could not manage to obtain consistent measurements.
Thank you for your time.
Solved! Go to Solution.
03-20-2023 02:33 PM - edited 03-20-2023 02:34 PM
Hi BSTRobin,
Turns out problem was due to axis mismatch between sensors. I fixed it by implementing the necessary rotations to measurements as you have shared in your answer, benefiting BHI260AP Datasheet, sections 13.3.2.6 - 13.3.2.7 - 20.3.
Thank you for your support during the process.
03-20-2023 03:12 PM
Welcome, hfozturk.
06-24-2023 12:10 AM
Hello hfozturk,
I am working with the same sensors but with nRF52832. I was wondering what libraries you used to create your code and was also wondering if you used the BSXLite Integration guide for it?