GY-86 on Arduino

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
nicnac
Posts: 9
Joined: Wed Nov 27, 2013 6:18 pm

GY-86 on Arduino

Post by nicnac »

Hi!

I saw this guy's blog: http://tmrh20.blogspot [DOT] co.at/
and wondered, if there is sufficient code in the MultiWii Arduino Software to communicate to the GY-86 breakout board.

Even Jeff Rowberg: http://www.i2cdevlib[DOT] com/forums/topic/84-gy-86/
told be he wasn't sure how to use the MPU 6050 as Master on the I2C port.

And now I wonder, if there is anyone who can tell me how to get the data from the board by Arduino. (Only thing working so far is the MPU6050, unlike the mag and baro).

I would love you for any hint!

tovrin
Posts: 705
Joined: Tue Sep 20, 2011 4:08 pm

Re: GY-86 on Arduino

Post by tovrin »

I am a lot confused by this, because I use a gy-86 in one FC and a MPU-6050 in another. Arduino is fully capable of reading them, with the MPU-6050 there is functionality that doesn't presently work as there has never been code written to control it, but its not critical to using the sensors.

nicnac
Posts: 9
Joined: Wed Nov 27, 2013 6:18 pm

Re: GY-86 on Arduino

Post by nicnac »

tovrin wrote:I am a lot confused by this, because I use a gy-86 in one FC and a MPU-6050 in another. Arduino is fully capable of reading them, with the MPU-6050 there is functionality that doesn't presently work as there has never been code written to control it, but its not critical to using the sensors.


Your comment confuses me :).
Could you specify what exactly you are talking about? Arduino is fully capable of reading the I2C signal of the gy-86, sure. But I can't find anyone who can read the magnetometer data provided by it! The reason for this is, that it is (as far as I know) hooked up on the MPU-6050 AUX SCL and SDA lines. This should pass the signal on,.. But I can't find anyone who has code to read it.

So "critical"... again: what do you refer to? Which functions, data,..?

As I described, I can't get magnetometer data from the breakout board. This has the hughe drawback, that there is still a drifting in yaw direction -> which is not good for multirotors... In that sense this feature is critical.

I really don't mind the barometer, but it would be great if anyone could guide me to reading the magnetometer of the GY-86!

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

Re: GY-86 on Arduino

Post by timecop »

All you need to do is enable I2C bypass mode on MPU6050, and the AUX_CL/AUX_DA pins will be internally connected to the I2C bus. Then you just address the devices behind AUX_CL/DA as if they were on same I2C connection.

MPU6050 code in multiwii does this - read it. It's just one bit setting in one of control registers but I'm not gonna look it up for you.

User avatar
Plüschi
Posts: 433
Joined: Thu Feb 21, 2013 6:09 am

Re: GY-86 on Arduino

Post by Plüschi »

// 6050 i2c passtrough
i2c_writeReg(MPU6050_ADDRESS, 0x37, 0x02);

User avatar
howardhb
Posts: 189
Joined: Tue Oct 11, 2011 7:10 pm
Location: Port Elizabeth, South Africa

Re: GY-86 on Arduino

Post by howardhb »

GY_86 is identical to the 10DOF sensor board FreeIMUv043, originally designed by Fabio Versano, whom also is the author of the driver for MPU6050 for multiwii. (May he rest in peace)
Code written for FreeIMUv043 will work with GY_86.

In config.h, just enable GY_86
http://www.varesano.net/projects/hardware/FreeIMU
http://www.youtube.com/watch?v=6Hz51j7K0qU

H.

nicnac
Posts: 9
Joined: Wed Nov 27, 2013 6:18 pm

Re: GY-86 on Arduino

Post by nicnac »

Thanks very much!
I did consider the 3imu library before, but it just uses jeff rowbergs library,.. so I switched for that.
Thanks for the hints,.. reading full code is a little too confusing to find exactly the line you need - especially in a bunch of code, where tons of sensors are used - congrats btw, very cool tool! (maybe i can contribute something somewhen^^).

Thanks again - I will dig into it and reopen the thread if I got news! For reference: we are talking about sensors.cpp and .h in the multiwii software.

If I get it up and running I will publish my results.

Post Reply