Hi,
I’m currently testing an MMC5983 magnetometer on a Pixhawk 6X flight controller running ArduPilot.
Using a Lua script to scan the I2C bus, I was able to detect the device at address 48 (decimal), which corresponds to 0x30 in hex. This matches the expected I2C address for the MMC5983, so it seems the sensor is connected correctly.
However, ArduPilot does not detect the compass during startup. I built a custom firmware with AP_COMPASS_MMC5XX3_ENABLED enabled, but the compass still does not appear in the list of detected compasses, and I don’t see any related messages in the boot logs.
Here is what I’ve confirmed so far:
- The I2C scan via Lua shows the device at decimal address 48 (hex 0x30)
- The wiring is correct
- The custom firmware build includes
AP_COMPASS_MMC5XX3_ENABLED = 1 COMPASS_ENABLE = 1
Is there anything else I should configure to allow ArduPilot to detect the MMC5983? Or is the driver not yet fully supported on the Pixhawk 6X?
Thanks in advance for your help!