Another BMA020 problem

This forum is dedicated to software development related to MultiWii.
It is not the right place to submit a setup problem.
Software download
Post Reply
Centurian
Posts: 44
Joined: Sat Jan 22, 2011 10:55 am

Another BMA020 problem

Post by Centurian »

Hey Alex,

More strange BMA020 behavior... the bug fix http://wbb.multiwii.com/viewtopic.php?f=8&t=317you posted worked fine until I commented "#define ITG3200" (I overlooked this line the first time I loaded the dev code). I'm running MWP with the BMA020. Now I'm getting spikes the other direction, increase in magnitude. Here's a screen shot.... Was perfect straight line untill I commented IGP3200... This is with //#define ACC_LPF_FACTOR commented as well to best show raw data. (ignore the baro and mag data, using them for other varibles ATM)
Attachments
new glitch.JPG

Alexinparis
Posts: 1630
Joined: Wed Jan 19, 2011 9:07 pm

Re: Another BMA020 problem

Post by Alexinparis »

Hi,

It's very strange because uncommented 2 #define for ACC should imply a compilation error (redefinition of the same function)

Centurian
Posts: 44
Joined: Sat Jan 22, 2011 10:55 am

Re: Another BMA020 problem

Post by Centurian »

Alexinparis wrote:Hi,

It's very strange because uncommented 2 #define for ACC should imply a compilation error (redefinition of the same function)


Wow, I mistyped IGT3200 twice in the one post. I have only the BMA020 defined, the WMP autodetects, correct? With both the IGT3200 & BMA020 defined, there is no spikes(and no gyro data with my WMP), with only BMA020 defined and the WMP in place is when the spikes happen. I have tried to write a reset counter and I think it's correct but and not gettting any resets in the counter. I don't fully understand the I2C comunications, but I'm wondering if one bit is gettting messed up (forced to 1 or 0). The raw read is divided by 64 (5 bits) so the high bit of the second byte is 8, or the last bit of the first byte is 16, so if one of these is getting screwed up there would be a jump of 8 or 16... I have studied the BMA020 and it appears to functionaly identical to 1.7 now. I have a compair set up on the WMP but I havn't got to the bottom of it yet.

I just looked at the data again. All three axis are effected but it's strange that the values look almost expodential. Pitch is smallest, then roll then Z and they look almost logrymthic. ROll is Pitch^2 and Z is Roll^2.....

Just throwing some thoughts out. Hope to have a closer look at the MWP code tomorrow.

On another note, I tried to roll up the Dev code into a single file by cutting and pasteing. It appears the includes need to be prior to the voids as what I pasted together would not compile. I have learned that you can find the linked file from the java ardo complier by holding the shift with verify and the compiling process shows in the bottom window. The linked file does not have the "include" which can easily be substituted. Anyway alex... if you get a chance, can you share how you're linking files?

Thanks... keep up the good work!!

Post Reply