inv_mpu6050 drivers

I just wired up a mpu6050 to the i2c-2 bus on my BeagleBone Black.
lsmod shows:

bone$ lsmod
Module Size Used by
bmp280_i2c 16384 0
bmp280 20480 1 bmp280_i2c
inv_mpu6050_i2c 16384 0
inv_mpu6050 20480 1 inv_mpu6050_i2c
evdev 24576 1
usb_f_mass_storage 53248 2
usb_f_acm 16384 2
u_serial 20480 3 usb_f_acm
usb_f_ecm 20480 2
usb_f_rndis 32768 4
u_ether 20480 2 usb_f_ecm,usb_f_rndis
libcomposite 65536 18 usb_f_ecm,usb_f_acm,usb_f_mass_storage,usb_f_rndis
bc_example 20480 0
iptable_nat 16384 0
nf_conntrack_ipv4 20480 1
nf_defrag_ipv4 16384 1 nf_conntrack_ipv4
nf_nat_ipv4 16384 1 iptable_nat
pvrsrvkm 442368 1 bc_example
nf_nat 32768 1 nf_nat_ipv4
nf_conntrack 143360 3 nf_conntrack_ipv4,nf_nat_ipv4,nf_nat
iptable_mangle 16384 0
iptable_filter 16384 0
uio_pdrv_genirq 16384 0
uio 20480 1 uio_pdrv_genirq
spidev 20480 0
pruss_soc_bus 16384 0
pru_rproc 28672 0
pruss 16384 1 pru_rproc
pruss_intc 16384 1 pru_rproc
ip_tables 24576 3 iptable_mangle,iptable_filter,iptable_nat
x_tables 36864 3 iptable_mangle,ip_tables,iptable_filter

What do I do next to read the device? I assume it appears somewhere is user space, but I don’t know where.

–Mark

Hi,

I believe the MPU6050 shows up as an IIO device under : /sys/bus/iio/devices/iio:deviceX

Regards
Vaishnav

I see the ADC’s there and I see the BMP085. I got the BMP085 to appear using:

echo bmp085 0x77 > /sys/class/i2c-adapter/i2c-2/new_device

I don’t know how to get the MPU6050 to appear.

–Mark

I see the ADC’s there and I see the BMP085. I got the BMP085 to appear using:

echo bmp085 0x77 > /sys/class/i2c-adapter/i2c-2/new_device

It looks like the MPU6050 driver requires a valid Interrupt GPIO to be passed to it for working properly ( I’m not 100% sure if this is the case with MPU6050 as I have experience working with MPU9250 from the same family), this can be clearly understood by looking if the dmesg logs show a " trigger probe fail " message. If this is the case then I’m not sure if there exists a proper way to instantiate the device from userspace (like echo > i2c-adapter/new_device).

I don’t know how to get the MPU6050 to appear.

I think using a Device Tree Overlay is the proper way to do it, an overlay like https://github.com/beagleboard/bb.org-overlays/blob/master/src/arm/BBBLUE-MPU9250-00A0.dts can be used as reference