Hardware
BMM350 via I2C directly connected with BHI360:
BMM350-SDA-A2 with BHI360-ASDX-2 and 4,7KOhm pull-up-resistor
BMM350-SCK-A3 with BHI360-ASCX-3 and 4,7Kohm pull-up-resistor
BMM350-INT-A1 with BHI360-OCSB-10
BMM350-ADSEL-B2 to GND.
Source: chapter 4.1.2 of BHI360-datasheet and “BHI360 Shuttle board 3.0 flyer”
Firmware
Firmware from GitHub „BHI360_BMM350C.fw.h“
Actual situation
The BHI360 itself works as expected (connected via I2C to an ESP32-S3-WROOM-1):
Firmware loads and boots without errors.
The self-tests of the physical sensors 1 (Accelerometer), 3 (Gyroscope) and 5 (Magnetometer) return “ok”.
The virtual sensors which use the physical sensors 1 and 3 (like 3 (Accel uncalibrated) and 12 (Gyro uncalibrated)) work correctly.
But all virtual sensors which also use the physical sensor 5 (like 21 (Magneto uncalibrated) and 43 (Orientation)) do not report anything, even not any error message; the physical sensor 5 (like 1 and 3) shows “Power mode: 7-Active”, but no data, no error message.
I also tried
“BHI360_Aux_BMM150” which returns after booting the error “0x21 - Sensor Init Failed: Unexpected Device ID”, and
“BHI360_BMM150” which returns after booting the error “0x22 - Sensor Init Failed: No Response from Device”.
Doubts and questions
Hardware:
1. Any remarks to the described hardware-design?
2. Is the connection “BMM350-INT-A1 with BHI360-OCSB-10” correct/necessary?
Firmware:
3. Is „BHI360_BMM350C.fw.h“ the correct firmware for this hardware-design?
4. What does the “C” stand for in “BHI360_BMM350C”?
5. What is the difference between “BHI360_Aux_BMM150” and “BHI360_BMM150”?
Software (supposing that „BHI360_BMM350C.fw.h“ is the correct firmware):
6. Would the self-test of physical sensor 5 detect a failure in the I2C-connection to BMM350?
7. Are there other possibilities to test the I2C-connection BHI360-BMM350 by software?
8. Is there anything different in the configuration of virtual sensors 3 and 12 (which work and use physical sensors 1 and 3) and virtual sensor 21 (which does not work and use physical sensor 5)?
General:
9. Beside the comments in the source-code on GitHub and the BHI360-datasheet, are there other sources of documentation available?