A super acccurate MultiWii version?

Post Reply
Sebbi
Posts: 478
Joined: Sun Jul 08, 2012 1:08 am
Location: Germany
Contact:

A super acccurate MultiWii version?

Post by Sebbi »

Hello there,

a while back I experimented with a common quaternion algorithm to calculate more accurate angles (https://github.com/sebastianherp/MultiW ... MENTAL.ino). It only kind of works, but the recent discussions about using the accelerometer for althold and even position hold made me again think about that idea.

So, what if there were a MultiWii version/fork/addition that:
  • works especially well with a MPU6050 (call it MultiMPU *g*)
  • wouldn't use optimisations that degrade correctness of calculations (rotateV, atan2, integer where floats are more appropriate)
  • would use the full resolution of all sensors involved
    - a MPU6050s full resolution for the gyro (+-2000°/s) is 16384 LSB/1000°/s and is mapped to 4096 LSB/1000°/s. The accelerometer (+-8g) full resolution is 4096 LSB/g and is mapped to 512 LSB/g, a 8 times reduction (4 for the gyro)
    - similar for other sensors, e.g. BMA180s full resolution (+-8g) is 1024 LSB/g and is currently mapped to just 256 LSB/g, a 4 times reduction in resolution
    - the MS5611 barometer can be polled every 8.22 ms with highest oversampling setting (current setup in MultiWii), but with a cycle time of 3000 µS Baro_update() gets only called at most (when the 50 Hz stuff isn't interfering) every 15 ms, and Baro_update() itself has 4 states, so new pressure values are only being read in intervals of 60 ms or with a frequency of 16 Hz
  • would use quaternions (no gimbal locks, faster computation, but challenging to use them for everything)
  • would have PID controllers independent of cycle time being a certain value
  • wouldn't care about limited space on the 328P Arduino ;-)
  • would have some method to calibrate the sensors (scale factor, cross axis sensitivity)
  • would still behave the same in acro mode (because that's just awesome how it currently is)

And see if it still flies and what kind of advantages (more stable?) and disadvantages it brings (how much would the code size and cycle time increase? how does it compare to the currently used algorithms?).

Anyone interested in such a super accurate version with the risk of it not being flyable at all?

I will try to keep a current version of this experiment available here (please don't trust it to be able to fly your copter/plane):
https://github.com/sebastianherp/multiw ... a_accurate [source tree]
https://github.com/sebastianherp/multiw ... a_accurate [diff to upstream_shared]
Last edited by Sebbi on Fri Oct 05, 2012 2:34 pm, edited 4 times in total.

timecop
Posts: 1880
Joined: Fri Sep 02, 2011 4:48 pm

Re: A super cccurate MultiWii version?

Post by timecop »

You already know what I'm gonna say here, so I'll save ya'll the trouble and not say it, but keep that in mind.
By the way, you should hang out in #multiwii on freenode, lots of fun chats going on there.

Sebbi
Posts: 478
Joined: Sun Jul 08, 2012 1:08 am
Location: Germany
Contact:

Re: A super cccurate MultiWii version?

Post by Sebbi »

timecop wrote:You already know what I'm gonna say here, so I'll save ya'll the trouble and not say it, but keep that in mind.


"8-bit µCs are obsolete" :)

One outcome of such an experiment could be that it just doesn't work. But I've looked into other Arduino based FC-software and they work fine with 100 Hz control loops and quaternions, etc. And optimising for accuracy has nothing to do with the limitations of an Arduino. It might be too slow to actually fly, yes ;-)
Last edited by Sebbi on Thu Oct 04, 2012 3:48 pm, edited 1 time in total.

copterrichie
Posts: 2261
Joined: Sat Feb 19, 2011 8:30 pm

Re: A super acccurate MultiWii version?

Post by copterrichie »

there was talk about a month or so back but the issue died: viewtopic.php?f=8&t=1080&start=90&hilit=mpu6050

Sebbi
Posts: 478
Joined: Sun Jul 08, 2012 1:08 am
Location: Germany
Contact:

Re: A super acccurate MultiWii version?

Post by Sebbi »

I am using a new branch on Github for the changed source code. I'll try to keep it current (merges from _shared) ...

https://github.com/sebastianherp/multiw ... a_accurate

Haven't done much since yesterday. Adjusted the ranges for the accelerometer and gyro of the MPU6050 to use the full resolution of an int16 and adjusted the gyro scale factor which is so wrong, I still can't believe official MultiWii uses it (the value is 19% too large). I am also keeping a list of inaccuracies I find and will post that when I feel it's more complete.

copterrichie
Posts: 2261
Joined: Sat Feb 19, 2011 8:30 pm

Re: A super acccurate MultiWii version?

Post by copterrichie »

I am using a MPU6050, can you post a diff?

Sebbi
Posts: 478
Joined: Sun Jul 08, 2012 1:08 am
Location: Germany
Contact:

Re: A super acccurate MultiWii version?

Post by Sebbi »

copterrichie wrote:I am using a MPU6050, can you post a diff?


https://github.com/sebastianherp/multiw ... a_accurate but please don't try flying with this, I think acro mode expects gyro values to be in a certain range. But attitude seems to be ok in GUI. Previous attempts at getting a global velocity vector (mahowik) are included in this branch, too.

copterrichie
Posts: 2261
Joined: Sat Feb 19, 2011 8:30 pm

Re: A super acccurate MultiWii version?

Post by copterrichie »

Thank you.

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

Re: A super acccurate MultiWii version?

Post by Alexinparis »

I'm also interested with this approach.
Especially to know if it would significantly improve or not the control stability.

Just a note: truncating the sensor resolution is a quick way to remove noise, it's not only done for speed efficiency.

copterrichie
Posts: 2261
Joined: Sat Feb 19, 2011 8:30 pm

Re: A super acccurate MultiWii version?

Post by copterrichie »

Alexinparis wrote:Just a note: truncating the sensor resolution is a quick way to remove noise, it's not only done for speed efficiency.


This in my opinion was one of the real advantages of the MMA7455 in the early days, it has a 10bit resolution when using the 8g setting and was almost noise free.

Sebbi
Posts: 478
Joined: Sun Jul 08, 2012 1:08 am
Location: Germany
Contact:

Re: A super acccurate MultiWii version?

Post by Sebbi »

Removes noise, but is the MPU6050 (and other sensors) really that noisy? Vibrations are a different story, but i thought the smoothening is there to take care of that (btw: with an LPF factor of 100 ACC_VALUE is the average of the last 333 ms at a cycle frequence of 300 Hz. Does it even make sense to have a control loop this fast - for angle mode - when the values used for it are "that old"?)

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

Re: A super acccurate MultiWii version?

Post by Alexinparis »

Sebbi wrote:(btw: with an LPF factor of 100 ACC_VALUE is the average of the last 333 ms at a cycle frequence of 300 Hz. Does it even make sense to have a control loop this fast - for angle mode - when the values used for it are "that old"?)


LPF for Z_ACC compensation in altitude lock is smaller (10),
But right for ACC, there is currently probably no need to refresh it so fast.

Magnetron
Posts: 124
Joined: Tue Jul 05, 2011 4:32 pm

Re: A super acccurate MultiWii version?

Post by Magnetron »

Quaternions had my succest to improve stability and general fly attitude:
viewtopic.php?f=8&t=2503&start=30

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

Re: A super acccurate MultiWii version?

Post by Alexinparis »

Magnetron wrote:Quaternions had my succest to improve stability and general fly attitude:


Any chance to see "your success" with a video showing clearly the advantage ? (not a desk video, a flying machine video)

Magnetron
Posts: 124
Joined: Tue Jul 05, 2011 4:32 pm

Re: A super acccurate MultiWii version?

Post by Magnetron »

Alexinparis wrote:
Magnetron wrote:Quaternions had my succest to improve stability and general fly attitude:


Any chance to see "your success" with a video showing clearly the advantage ? (not a desk video, a flying machine video)

Alex excuse me form bad english and typing errors but "succest" is "suggest"... typing error.
But, I think, like Sebbi, that quaternion can make the difference. When Sebbi is ready to try it the result will be clear for all... I think... ;)

Sebbi
Posts: 478
Joined: Sun Jul 08, 2012 1:08 am
Location: Germany
Contact:

Re: A super acccurate MultiWii version?

Post by Sebbi »

Some inaccuracies and "bugs" I noticed as of yet:
  • SENSORS_TILT_45DEG_LEFT and SENSORS_TILT_45DEG_RIGHT in GYRO_Common() in Sensors.ino ; introduced error = 1.1% too small
  • GYRO_SCALE in Imu.ino ; introduced error = ~19% too large (MPU6050 scale factor)
  • annexCode():

    Code: Select all

    if (rcData[THROTTLE]<2000) { prop2 = 100 - (uint16_t)conf.dynThrPID*(rcData[THROTTLE]-BREAKPOINT)/(2000-BREAKPOINT); }
    is the same as prop2 = 100, since the multiplicator will always be 0 (depending on compiler optimisation, but could still use parenthesis)
  • Multiple smoothing in computeIMU() in IMU.ino (two gyro reads and averaged with previous readings, and then more smoothing if GYRO_SMOOTHING is defined)
  • #define RC_FREQ 50 in MultiWii.ino not used anywhere

@quaternions: it "kind of worked" (i think alex tried it back then), but didn't behave as good while flying ... i never tuned it to perform better, but i will try to include it ...

mahowik
Posts: 332
Joined: Sun Apr 10, 2011 6:26 pm

Re: A super acccurate MultiWii version?

Post by mahowik »

My 5 cents here :)

Right mathematics w/o approximations and simplifying it's good but actually I suppose you will get only cycle time increasing, because:
- gyro drift much more than inaccuracy by approximations (as I remember from playing with itg3200) in current implementation of rotation matrix
- gyro drift compensated by ACC where its own inaccuracy like temperature drift and not scaled values for each of three axis... also remember from old discussions with ziss_dm that sum of ACC inaccuracy about 20-30%... of course mpu6050 much better but in less it's exists...

So right mathematic make sense in case of very clean data where all axis provide scaled raw data and take into account temperature compensation...

But even if you get this on the fly it will not be visible I think...

Sebbi
Posts: 478
Joined: Sun Jul 08, 2012 1:08 am
Location: Germany
Contact:

Re: A super acccurate MultiWii version?

Post by Sebbi »

So ... besides shuffling code around (loop code to TheLoop.ino and global variables to global.h) to get a better overview, I found a way to optimise baro read outs. It will probably not fly with this configuration since cycle time is varying a lot and gyro values aren't what the PID controller expects. But, overall cycle time decreased and it uses less bytes (no pow() in altitude calculation

https://github.com/sebastianherp/multiw ... a_accurate

@mahowik:
cycle time actually decreased for me, but even if it increases a lot, so what? The copter gets RC-commands with 50 Hz and all the sensors are heavily smoothed, it shouldn't matter if the motors are being updated with 300 Hz or 100 Hz. PID controllers need to be modified to adjust for different timings, though.

MPU6050 is a factory calibrated, highly stable accelerometer/gyro combination. Of course it is affected by vibrations (it uses vibrations to measure the forces/rotation rates), but other than that these sensors are far superior than anything before. And it's just an experiment ... might not work at all.

ziss_dm
Posts: 529
Joined: Tue Mar 08, 2011 5:26 am

Re: A super acccurate MultiWii version?

Post by ziss_dm »

Hi Just my 10 cents,

wouldn't use optimisations that degrade correctness of calculations (rotateV, atan2, integer where floats are more appropriate)


what is wrong with rotateV? Small angle approximation?


Code: Select all

  // Integrate rate of change of quaternion
  pa = q2;
  pb = q3;
  pc = q4;
  q1 = q1 + (-q2 * gx - q3 * gy - q4 * gz) * (dt * 0.5f); // (dt * 0.5f) uses less space than just dt ... wtf
  q2 = pa + (q1 * gx + pb * gz - pc * gy) * (dt * 0.5f);
  q3 = pb + (q1 * gy - pa * gz + pc * gx) * (dt * 0.5f);
  q4 = pc + (q1 * gz + pa * gy - pb * gx) * (dt * 0.5f);


This is same small-angle approximation. ;)

What is wrong with atan2? Cordic approximation? Do you know that C library atan2 is also approximation? ;)

would use quaternions (no gimbal locks, faster computation, but challenging to use them for everything)


Can you actually show where:
1) quaternions has "faster" computation?
2) where ref. vectors have "gimbal lock".

This is where you getting gimbal lock:

Code: Select all

  // Calculate angles from estimation
  angle[ROLL] = -_atan2(vx, sqrt(vy*vy + vz*vz));
  angle[PITCH] = -_atan2(vy, sqrt(vx*vx + vz*vz));
  heading = _atan2(2*(q2q3 - q1q4), 2*(q1q1 + q2q2) - 1) / 10 - 90 + MAG_DECLINIATION;
  if ( heading > 180)      heading = heading - 360;
  else if (heading < -180) heading = heading + 360;


Good reading:
http://gns.wikia.com/wiki/Quaternions

Another one:
http://www.gamedev.net/page/resources/_ ... ions-r1199

cycle time actually decreased for me, but even if it increases a lot, so what?


http://en.wikipedia.org/wiki/Numerical_integration
If you want "high" precision integration intervals should be indefenetilly smal.. ;)

regards,
ziss_dm

Sebbi
Posts: 478
Joined: Sun Jul 08, 2012 1:08 am
Location: Germany
Contact:

Re: A super acccurate MultiWii version?

Post by Sebbi »

ziss_dm wrote:what is wrong with rotateV? Small angle approximation?


Small angle approximation does a good job at speeding up the rotation of the gravity vector by the measured angular velocity, by assuming cos(small angle) = 1 and sin(small angle) = angle. It gets rid of all the cosinus terms in the rotation matrix and also takes care of the sinus terms. The result is a matrix that isn''t a rotation anymore (not orthogonal) and the errors build up. I think this is why the code uses a higher gyro scale factor and without correction by the accelerometer this would quickly fall apart. It's ok to do that ... nothing wrong with it ... but it's not accurate ;-)

ziss_dm wrote:

Code: Select all

  // Integrate rate of change of quaternion
  pa = q2;
  pb = q3;
  pc = q4;
  q1 = q1 + (-q2 * gx - q3 * gy - q4 * gz) * (dt * 0.5f); // (dt * 0.5f) uses less space than just dt ... wtf
  q2 = pa + (q1 * gx + pb * gz - pc * gy) * (dt * 0.5f);
  q3 = pb + (q1 * gy - pa * gz + pc * gx) * (dt * 0.5f);
  q4 = pc + (q1 * gz + pa * gy - pb * gx) * (dt * 0.5f);


This is same small-angle approximation. ;)


That's correct. The code doing the quaternion calculations is adapted from other flight control software that use it like this. For small angles the rotation quaternion can be simplified as [1, roll/2, pitch/2, yaw/2]. Let's call it a similar approximation.

The actual integration step in the code you quoted is, in my opionion, the beauty of quaternions. When you stay in quaternion land it's a lot less computational work than doing the same thing in Euler land (MultiWii doesn't integrate Euler angles). You'll need atan2 and asin to get back Euler angles from the quaternion representation though.

ziss_dm wrote:What is wrong with atan2? Cordic approximation? Do you know that C library atan2 is also approximation? ;)


Again, nothing wrong as it speeds up the code. But the math.h atan2 is hopefully more accurate :)

ziss_dm wrote:Can you actually show where:
1) quaternions has "faster" computation?
2) where ref. vectors have "gimbal lock".


MultiWii represents its orientation with Euler angles (pitch, roll, yaw) calculated from a gravity vector.

1) Integrating Euler angles (remember: accuracy) needs cos(), sin() and matrix multiplication. Using quaternions is faster when continously integrating rotation and normalisation quaternions is faster than normalizing a 3x3 matrix. However, MultiWii doesn't integrate Euler angles. The code just rotates the previously found gravity vector and then calculates roll/pitch/yaw from that and corrects gravity with the accelerometer measurement. The quaternion code you quoted does a similar thing and estimates the the gravity vector from the roll/pitch/yaw angle (in quaternion representation), but it then corrects the gyro input with the error between this estimate and the accelerometer measurement and actually executes an integration step.

What MultiWii does is fast, but again ... is it accurate? :)

2) Euler angles "gimbal lock" around 90°. Since MultiWii gets these angles from a gravity vector it should be lock-free, but they still behave strange in "extreme" situations. A quadx standing on one of its arms (z-axis pointing sideways) shouldn't read pitch = 90° and roll = 90°. Heading should also point in the right direction when flipped over. The used formula doesn't seem to be correct and maybe "gimbal lock" isn't the correct phrase for that.

ziss_dm wrote:This is where you getting gimbal lock:

Code: Select all

  // Calculate angles from estimation
  angle[ROLL] = -_atan2(vx, sqrt(vy*vy + vz*vz));
  angle[PITCH] = -_atan2(vy, sqrt(vx*vx + vz*vz));
  heading = _atan2(2*(q2q3 - q1q4), 2*(q1q1 + q2q2) - 1) / 10 - 90 + MAG_DECLINIATION;
  if ( heading > 180)      heading = heading - 360;
  else if (heading < -180) heading = heading + 360;



The quoted code didn't seem to have problems around the poles. Angles in GUI seemed to be correct when I tested this ...

ziss_dm wrote:http://en.wikipedia.org/wiki/Numerical_integration
If you want "high" precision integration intervals should be indefenetilly smal.. ;)


Ok, but I am afraid the sensors wont play along when we want measurements every µs, even if the calculations would be fast enough for that frequency :)

The goal should be to measure the gyro as often as possible for basic stability. Drift is very small in acro mode, at least with a MPU6050 and I can manage to get the copter level by small stick movements and it stays level for a few seconds. The same goes for altitude hold and throttle control.

Because I can manually do that with very little and infrequent stick movement, I think it should be possible to do everything in the level/horizon/alt/position code much slower (100 Hz, 50 Hz) and still fly. Maybe it wont ... that's what I want to test ;-)

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

Re: A super acccurate MultiWii version?

Post by Alexinparis »

Sebbi wrote:[*] annexCode():

Code: Select all

if (rcData[THROTTLE]<2000) { prop2 = 100 - (uint16_t)conf.dynThrPID*(rcData[THROTTLE]-BREAKPOINT)/(2000-BREAKPOINT); }
is the same as prop2 = 100, since the multiplicator will always be 0 (depending on compiler optimisation, but could still use parenthesis)

wrong ;)
I don't think a compiler optimization can change the order of calculation in an expression
in all cases:
first: conf.dynThrPID*(rcData[THROTTLE]-BREAKPOINT)
second: /(2000-BREAKPOINT)

Sebbi wrote:#define RC_FREQ 50 in MultiWii.ino not used anywhere

right

ziss_dm
Posts: 529
Joined: Tue Mar 08, 2011 5:26 am

Re: A super acccurate MultiWii version?

Post by ziss_dm »

Hi,

Small angle approximation does a good job at speeding up the rotation of the gravity vector by the measured angular velocity, by assuming cos(small angle) = 1 and sin(small angle) = angle. It gets rid of all the cosinus terms in the rotation matrix and also takes care of the sinus terms. The result is a matrix that isn''t a rotation anymore (not orthogonal) and the errors build up. I think this is why the code uses a higher gyro scale factor and without correction by the accelerometer this would quickly fall apart. It's ok to do that ... nothing wrong with it ... but it's not accurate


Yes, but:
1) Let's imagine you rotating with angular velocity 2000deg/sec (which is not poossible even for wartox. ;) )
2000deg/sec = 34.91 rad/sec
rotation in 2ms would be 0.069 rad
http://en.wikipedia.org/wiki/Small-angle_approximation
relative error is less than 0.1% which is much less than gyro dynamic drift anyway. ;)
2) Yes matrix not orthoganal and errors build up but:
a) directional errors are much smaller than magnitude error (and we do not care about magnitude at this stage)
b) they much smaller than gyro dynamic drift again
3) why the code uses a higher gyro scale factor, this is another story. ;)


That's correct. The code doing the quaternion calculations is adapted from other flight control software that use it like this. For small angles the rotation quaternion can be simplified as [1, roll/2, pitch/2, yaw/2]. Let's call it a similar approximation.


This is just conversion from Euler to quaternion, which supposed to be:
Image

Applying small angle approximation to it, you introducing same errors as before. Additionally this transformation is also not orthoganal and you have to normalize quaternion on each step. Which adds additional numeric error. (remember, SQRT is also approximation).
So, numerically this is less precise than vector(s) rotation.

1) Integrating Euler angles (remember: accuracy) needs cos(), sin() and matrix multiplication. Using quaternions is faster when continously integrating rotation and normalisation quaternions is faster than normalizing a 3x3 matrix. However, MultiWii doesn't integrate Euler angles. The code just rotates the previously found gravity vector and then calculates roll/pitch/yaw from that and corrects gravity with the accelerometer measurement. The quaternion code you quoted does a similar thing and estimates the the gravity vector from the roll/pitch/yaw angle (in quaternion representation), but it then corrects the gyro input with the error between this estimate and the accelerometer measurement and actually executes an integration step.


The problem is that sensors reporting vectors and Euler angles (angular velocities). Overheads of conversions is much higher than benefit. (and don't skip the step. ;) to properly convert from euler to quaternion you need cos(), sin() as well).


The code just rotates the previously found gravity vector and then calculates roll/pitch/yaw from that and corrects gravity with the accelerometer measurement. The quaternion code you quoted does a similar thing and estimates the the gravity vector from the roll/pitch/yaw angle (in quaternion representation), but it then corrects the gyro input with the error between this estimate and the accelerometer measurement and actually executes an integration step.

And what a difference? ;) Apart from the first system is unconditionally stable. The second one supposed to be stable in quite wide range, but due round-off errors, discussed previously, it is quite challenging to make it stable.
BTW: PI observer pattern can be applied regardles what rotation representation is used.

Euler angles "gimbal lock" around 90°. Since MultiWii gets these angles from a gravity vector it should be lock-free, but they still behave strange in "extreme" situations.


My point was, that this "gimbal lock" is property of the Euler angles and switching to quaternion/DCM/whatever is not going to magically solve it. ;)
The Eulers always have singularities around 90deg. It is possible to implement workaround for it but what is the point? ;) Correct way is to pass vector/quaternion/DCM/etc to gui and perform proper transformation there.

Again, nothing wrong as it speeds up the code. But the math.h atan2 is hopefully more accurate.

Without definition of the "accuracy" it is not. ;)

Ok, but I am afraid the sensors wont play along when we want measurements every µs, even if the calculations would be fast enough for that frequency

Not sure that it means. ;) But sensors have defined bandwidth, this usually defines minimum sampling rate (to avoid aliasing). Sampling faster than that sometimes beneficial and called "oversampling" (reduces noise and increases resolution). Some FC projects using really high oversampling factors, like x64-x128

regards,
ziss_dm

ziss_dm
Posts: 529
Joined: Tue Mar 08, 2011 5:26 am

Re: A super acccurate MultiWii version?

Post by ziss_dm »

Hi,

Finally realized (reading other posts) that you mean by:
would have PID controllers independent of cycle time being a certain value


In my personal opinion it is better to stabilize timings, instead of adding dt everythere. ;)

regards,
ziss_dm

Sebbi
Posts: 478
Joined: Sun Jul 08, 2012 1:08 am
Location: Germany
Contact:

Re: A super acccurate MultiWii version?

Post by Sebbi »

Thank you for your replies. Being accurate enough would be a a worthy goal, too, i guess. Using correct deltaTimes everywhere (PIDs, attitude), correct scale factors, maximum resolution, etc ... is my primary goal :-)

User avatar
Crashpilot1000
Posts: 631
Joined: Tue Apr 03, 2012 7:38 pm

Re: A super acccurate MultiWii version?

Post by Crashpilot1000 »

@Sebbi:
I really appreciate your work and the mathematics are way over my head.... I just wanted to post the integration of fabio varesano. http://bazaar.launchpad.net/~fabio-vare ... reeIMU.cpp
Probably you already know it - just trying to help.

So long
Rob

Sebbi
Posts: 478
Joined: Sun Jul 08, 2012 1:08 am
Location: Germany
Contact:

Re: A super acccurate MultiWii version?

Post by Sebbi »

It's more or less the same one used by everyone (other Arduino based flight controller projects). I tested DMP integration which could be interesting if Invensense would release some real documentation for it. Other than this, I am currently trying to get HIL going so things can be tested indoors and faster ;-) ... most of my little experiments let to nowhere (combining all MPU6050 related sensor readings into one read has the best result so far ... reduces cycle time and byte count *g*).

User avatar
Crashpilot1000
Posts: 631
Joined: Tue Apr 03, 2012 7:38 pm

Re: A super acccurate MultiWii version?

Post by Crashpilot1000 »

These are great news!! Faster, shorter !! Too bad my "old" freeimu 0.3.5 will not see the progress...

mahowik
Posts: 332
Joined: Sun Apr 10, 2011 6:26 pm

Re: A super acccurate MultiWii version?

Post by mahowik »

Hi Sebbi?

How it's going on?!

thx-
Alex

Sebbi
Posts: 478
Joined: Sun Jul 08, 2012 1:08 am
Location: Germany
Contact:

Re: A super acccurate MultiWii version?

Post by Sebbi »

Invensense released some new code, but I think DMP integration is not the way to go since it will still be a black box. And as you might have seen from the repository, I haven't done anything since the changes to the baro code (which are now in 2.2). However, I am still interested ;-)

Post Reply