Dead IMU/Depth sensor?


#1

Can anyone help me with an IMU/Depth sensor issue? I have recently built the OpenROV 2.6 kit and everything works, except the IMU. I have updated the AConfig file following the various instructions on this forum and then updated the Arduino, but it doesn't work. I am worried that pressure and temperature don't do anything either... What can I do to troubleshoot next? What information should I post to shed some light on this? I fear the actual hardware may not be working... how to test that, I only have a multi-meter to test it...


#2

Hi Arnoud

If I recall there was mention of some IMU's that were shipped out that had the wrong i2c buss address. If that is true in your case then changing the address might fix it. Also from a hardware perspective make sure you have it wired up correctly to theDB25 connector.

here is a thread that talks about that, check Eric's response.

http://openrov.com/forum/topics/problem-with-imu-depth-module


#3

Hi David,

Thanks for your help. I haven't managed to solve the problem though... temp and pressure do not work so I think there is something else wrong, but the wiring is correct, I double checked this I cut the sensor off twice to verify... :-(

would there be any log that I could investigate that could shed some light on what the problem might be?


#4

SSH into the BB and do

sudo grep 'i2c' /var/log/kern.log

This may help


#5

This is part of the grep result, its a very long file and seems to repeat itself so I just copy the last bit.

#####################################################################

...

Dec 13 02:45:36 OpenROV kernel: [ 0.137987] input: tps65217_pwr_but as /devices/ocp.3/44e0b000.i2c/i2c-0/0-0024/input/input0

Dec 13 02:45:36 OpenROV kernel: [ 0.146874] omap_i2c 44e0b000.i2c: unable to select pin group

Dec 13 02:45:36 OpenROV kernel: [ 0.147433] omap_i2c 4819c000.i2c: bus 1 rev0.11 at 100 kHz

Dec 13 02:45:36 OpenROV kernel: [ 0.149072] omap_i2c 4819c000.i2c: unable to select pin group

Dec 13 02:45:36 OpenROV kernel: [ 2.185330] i2c /dev entries driver

Dec 13 02:46:55 OpenROV kernel: [ 0.136981] omap_i2c 44e0b000.i2c: bus 0 rev0.11 at 400 kHz

Dec 13 02:46:55 OpenROV kernel: [ 0.138011] input: tps65217_pwr_but as /devices/ocp.3/44e0b000.i2c/i2c-0/0-0024/input/input0

Dec 13 02:46:55 OpenROV kernel: [ 0.146626] omap_i2c 44e0b000.i2c: unable to select pin group

Dec 13 02:46:55 OpenROV kernel: [ 0.147194] omap_i2c 4819c000.i2c: bus 1 rev0.11 at 100 kHz

Dec 13 02:46:55 OpenROV kernel: [ 0.148848] omap_i2c 4819c000.i2c: unable to select pin group

Dec 13 02:46:55 OpenROV kernel: [ 2.200828] i2c /dev entries driver

########################################################

This is my AConfig file, just incase...

#ifndef __ACONFIG_H_
#define __ACONFIG_H_

/* This must be before alphabetically before all other files that reference the$
* or you may get vtable errors.
*/

/* This section is for devices and their configuration. IF you have not setup y$
* standard configuration of the OpenROV kits, you should probably clone the ca$
* and change the pin definitions there. Things not wired to specific pins but$
* have the address defined in this file.
*/
//Kit:
#define HAS_STD_CAPE (0)
#define HAS_STD_PILOT (1)
#define HAS_OROV_CONTROLLERBOARD_25 (1)

#include "BoardConfig.h"

#define HAS_STD_LIGHTS (1)
#define HAS_STD_CALIBRATIONLASERS (1)
#define HAS_STD_2X1_THRUSTERS (1)
#define HAS_STD_CAMERAMOUNT (1)

//After Market:
#define HAS_POLOLU_MINIMUV (0)
#define HAS_MS5803_14BA (1)
#define MS5803_14BA_I2C_ADDRESS 0x76
#define HAS_MPU9150 (1)

#define MPU9150_EEPROM_START 2

#if !(HAS_OROV_CONTROLLERBOARD_25) && !(HAS_STD_CAPE)
# error "You must select either standard cape or controllerboard25 in the ACon$
#endif

#endif

###################################################################


#6

Hi

You can also try

sudo grep 'fail' /var/log/kern.log

This may show some failed entries for the i2c bus.

I have attached the output from my grep command from a working IMU.

I am not a software guru so I hope someone else can chime in to help you.

540-i2cgrepoutput.xlsx (361 KB)

#7

Hi David,

Thanks for that. It looks like my log is showing the same things, I could not find anything different in it. So at least that can be excluded then.

Here is what grep 'fail' /var/log/kern.log gives. A repeated list of the following lines:

#######################################################

Dec 13 02:45:36 OpenROV kernel: [ 0.388180] arm-pmu: probe of arm-pmu failed with error -28
Dec 13 02:45:36 OpenROV kernel: [ 0.554273] tps65217-bl: probe of tps65217-bl failed with error -22
Dec 13 02:45:36 OpenROV kernel: [ 2.228985] bone-capemgr bone_capemgr.9: loader: failed to load slot-6 BB-BONELT-HDMIN:00A0 (prio 2)
Dec 13 02:45:36 OpenROV kernel: [ 2.265969] omap_hsmmc mmc.5: of_parse_phandle_with_args of 'reset' failed

#######################################################

I have no idea what that means...