[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Paparazzi-devel] ArduIMU

From: steve.joyce
Subject: Re: [Paparazzi-devel] ArduIMU
Date: Wed, 16 Feb 2011 07:48:07 +0100
User-agent: Binero Webmail/0.4.2


We should maybe wait just a bit Felix.  Chris encountered a problem that should probably be resolved before it is really safe to fly with it.  I can issue a pull request when it is ready.

The way the module is set up is a periodic function initiates a request to read the IMU over I2c, then an event function is fired when the status is changed to I2CTransSuccess.  The event function then converts the data and sets the status to I2CTransDone.  (This is the same way it is set up in the Infrared_I2c module err.. subsystem)

The problem is in the case where the transaction fails (I2CTransFailed), then the event function is never run, the status doesn't get updated and the periodic function never requests any more data because it checks for I2CTransDone.  I haven't seen this behaviour first hand, but apparently Chris was able to induce it by moving the sticks quickly, apparently related to having 9 transmitter channels defiend.

The question for anyone more familiar with the I2C implementation in paparazzi is what to do when the transaction fails?  Is it safe to just ignore it and send the next one?  Or do you have to reset the I2C bus?  (There is a hint in i2c_arch.c  in I2CFail(): //FIXME I2C should be reseted here)



On Tue, 15 Feb 2011 22:39:40 +0100, Felix Ruess <address@hidden> wrote:

Hi Steve, hi guys,

I guess we should merge this into paparazzi master, since it seems to fix problems?

Cheers, Felix

On Sun, Feb 13, 2011 at 9:42 AM, <address@hidden> wrote:
Hi Steve,
Weather was good yesterday so I tried out your modified ArduIMU code on my Funjet.
Flew well in AUTO2 mode without any problems at all. Tracked well even after 10 circles.
Thanks for fixing the code; it seems to work great now.
Cheers, Mark

-----Original Message-----
From: [] On Behalf Of Steve Joyce
Sent: samedi, 5. février 2011 17:56
To: address@hidden
Subject: Re: [Paparazzi-devel] ArduIMU

Well in an unfortunate coincidence, the yaw gyro on my ArduIMU went bad at
the same time I was messing with the I2C code which kind of led me in the
wrong direction so to speak.  I switched to another ArduIMU and it now works
really well.

My module code polls it cleanly at 50Hz (the frequency of the main loop on
the ArduIMU), and I rewrote the I2C routines in the ArduIMU firmware
starting from the most recent 1.8.2 distribution.  Anybody want my

----- Original Message -----
From: "Steve Joyce" <address@hidden>
To: <address@hidden>
Sent: Tuesday, February 01, 2011 12:08 AM
> any ideas welcome, I'm almost ready to give up.

Paparazzi-devel mailing list

Paparazzi-devel mailing list

reply via email to

[Prev in Thread] Current Thread [Next in Thread]