BMM150 compass module RunTimeError

Hi all!

I recently purchased the 3-Axis compass module. I tested on Raspberry Pi 3, works without a fault.
After that I tried to use it on the Nvidia Jetson TX2 but keep getting:

RuntimeError: UPM Runtime Error: BMM150: bmm150_init() failed

Seems it keeps failing on the line in the example code:

sensor = sensorObj.BMM150(1, 0x13)

In I2C detect I can see the compass being on 1 bus and 13 address.
Checked the source library, but to no avail. Didn’t find the real issue. Tried different values and formatting.

Any tips or hints or such on how should this be tackled?

When I do I2Cread, I get value like 0xff and some other codes just give array of 255.
I can see in i2cdetect that the module is on board 1, 0x13.

The compass library can be also seen at: https://iotdk.intel.com/docs/master/upm/python/_modules/pyupm_bmm150.html

Grove sample code can be accessed at: http://wiki.seeedstudio.com/Grove-3-Axis_Digitial_Compass_v2.0/
I also have different modules, that connect directly to the BMM150, but with Grove just had a direct connection. Can change module if needed, ofcourse, but I like the BMM150 (Accuracy, reliability, etc). More simple I2C devices work.

It could be some simple error on my part, but I’m not sure.

Thank You in advance!

hello ulf.anso,

you may need to review the specification to enable the module correctly.
there should be 3-axis accelerometer and also 3-axis gyroscope values, you’ll also need to have implementation to handle these data.
thanks