PLEASE help me with this compass; I can see it on the bus!

Hello there,
I’m in despair over this magnetometer unit, the RM3100 on a breakout board, that I can not get to work with PX4 although it should be compatible as it’s listed as such.

I managed to put a resistor on to the i2c-enable pin on that unit and now in PX4 I can clearly see it being recognized on the bus:


Yet, the autopilot doesn’t see it and errors “no mags found” when trying to calibrate.

I tried starting it manually and it only says “no device on buis?”:

Any ideas, anyone?
I really need this to work on my PX4 drone as it’s supposed toi be a very devent unit.
So any advice or pointers welcome! :wink:

Glad I saw this now, I was on my way order a RM3100 unit.
I thought this was enabled by default in px4 v1.12.2 and later.

On old versions of PX4 you have to start the mag manually but depending on how you wire the breakout board you can change the i2c address so the firmware doesn’t know it’s an rm3100 connected even if you have it connected to the bus. Take a look at PNIs manual on changing the address and open up the rm3100 driver for the expected address or look through some of the git notes which iirc talk about the expected address.

1 Like

Hey there, thanks so much for taking the time.
From what I gather the expected adress is 0x20 and the manual says there is three possible adress configurations by pulling some pins high.
I don’t have a 10k resistor at home but will try tomorrow at work.
There isn’t the possibility of just changing the expected adress in the driver itself by any chance, right?

Anyway, this was a huge step forward for me already so thanks again, I’ll report back. :wink:

Yes. You can change the driver. You just need to make sure that address isn’t expected by something else.

1 Like