Defines for Chinese IMUs

This forum is dedicated to software development related to MultiWii.
It is not the right place to submit a setup problem.
Software download
Katch
Posts: 280
Joined: Thu Aug 04, 2011 1:44 pm

Defines for Chinese IMUs

Post by Katch »

So I have received my first Chinese IMU - it has L3G4200D ADXL345 HMC5883L BMP085 sensors and a LLC built in.

Looking at the PCB it is called a GY-80 - there are also GY-81, GY-86 and GY-521. I'm just waiting for a replacement Mini Pro to arrive before I can write the defines for the GY-80 (I also have a GY-86 on its way)

Thought I post to share my defines (when they are done) and see if anyone else has one of these boards or knows of any others. They seem to have flooded the market so we may as well get them in the config.h defines.

The boards I am aware of are as follows;

GY-80 - L3G4200D ADXL345 HMC5883L BMP085
GY-81 - ITG3205 BMA180 HMC883L BMP085 (also seems to come as a BMA020 version)...
GY-86 - MPU6050 HMC883L MS5611
GY-521 - MPU6050

at a guess I assume there are gy-82 / 83 / 84 and 85 out there but whether they are in much production I don't know.

I'll get my boards written up after the weekend probably.

Lapino
Posts: 84
Joined: Tue Aug 16, 2011 10:01 am

Re: Defines for Chinese IMUs

Post by Lapino »

How about the quality of these IMUs?
I just saw one of those (GY-86 http://www.ebay.de/itm/10DOF-MS5611-HMC ... 3cc574369b ) in ebay too and would like to know if everything is ok with them ;)

Katch
Posts: 280
Joined: Thu Aug 04, 2011 1:44 pm

Re: Defines for Chinese IMUs

Post by Katch »

Engineering of my GY-80 is very clean and nice. Can't say how it performs yet as I haven't had a chance to play.

With the GY-86 it'd be nice to know how they've routed the HMC883L Mag - whether it's on the aux i2c of the MPU6050 or the main i2c of the IMU.

Katch
Posts: 280
Joined: Thu Aug 04, 2011 1:44 pm

Re: Defines for Chinese IMUs

Post by Katch »

Ok finished the defines for the GY_80

config.h addition

Code: Select all

#define GY_80             // Chinese 10 DOF with  L3G4200D ADXL345 HMC5883L BMP085, LLC


def.h additions

Code: Select all

#if defined(GY_80)
  #define L3G4200D
  #define ADXL345
  #define HMC5883
  #define BMP085
  #define ACC_ORIENTATION(X, Y, Z)  {accADC[ROLL]  = -X; accADC[PITCH]  = -Y; accADC[YAW]  =  Z;}
  #define GYRO_ORIENTATION(X, Y, Z) {gyroADC[ROLL] =  Y; gyroADC[PITCH] = -X; gyroADC[YAW] = -Z;}
  #define MAG_ORIENTATION(X, Y, Z)  {magADC[ROLL]  =  X; magADC[PITCH]  =  Y; magADC[YAW]  = -Z;}
  #undef INTERNAL_I2C_PULLUPS
  #define ADXL345_ADDRESS 0xA6
#endif


not sure how to make sure these get added to the current dev code.

I'll do the GY_86 when it gets here

flyrobot
Posts: 73
Joined: Thu Apr 05, 2012 3:59 pm

Re: Defines for Chinese IMUs

Post by flyrobot »

Hi Katch,

Can you share where do you buy his IMU?

Thanks,

John

Katch
Posts: 280
Joined: Thu Aug 04, 2011 1:44 pm

Re: Defines for Chinese IMUs

Post by Katch »

eBay - just search 10 DOF

PatrikE
Posts: 1976
Joined: Tue Apr 12, 2011 6:35 pm
Location: Sweden
Contact:

Re: Defines for Chinese IMUs

Post by PatrikE »

I added it to the shared branch.
Can you confirm the orientation.

Katch
Posts: 280
Joined: Thu Aug 04, 2011 1:44 pm

Re: Defines for Chinese IMUs

Post by Katch »

tested in GUI only but all responding as they should - I'll put the board on my quad and fly test later.

flyrobot
Posts: 73
Joined: Thu Apr 05, 2012 3:59 pm

Re: Defines for Chinese IMUs

Post by flyrobot »

Katch wrote:eBay - just search 10 DOF

Ok, thanks. I interested with GY-86, compared with 0.4.3MS seems using same modern sensor.

Katch
Posts: 280
Joined: Thu Aug 04, 2011 1:44 pm

Re: Defines for Chinese IMUs

Post by Katch »

PatrikE wrote:I added it to the shared branch.
Can you confirm the orientation.


Orientations confirmed.

Just had a little flight test - flyable but oscillating and unstable and prone to wobble of death on default PIDs

I'll try and tune it out a bit and post a good set of starting PIDs for this IMU

EDIT - had to drop P real low on Roll and Pitch to get the gyro stable... broke a prop tuning the ACC so calling it a night.

Had dropped P to 6 on the Acc I 0.035 and D to 80 was better but still got wobble of death (hence prop death)

I had Roll and Pitch at 2.0 - 0.016 - 8 rate 0.06 - this was ok but felt a bit spongy.

Any pointers for a set of PIDs to try next time? Really not that good at PID tuning so shooting in the dark - but do have a bluetooth module so can tune in the field.

PatrikE
Posts: 1976
Joined: Tue Apr 12, 2011 6:35 pm
Location: Sweden
Contact:

Re: Defines for Chinese IMUs

Post by PatrikE »

Try gyrfiltering.
#define MMGYRO
Plus ADXL345 seems very sensitive.

Katch
Posts: 280
Joined: Thu Aug 04, 2011 1:44 pm

Re: Defines for Chinese IMUs

Post by Katch »

Thanks, I'll try it later

I'll also probably put that /8 fix in for the ADXL345 next time out

marbalon
Posts: 107
Joined: Thu Aug 18, 2011 10:59 am

Re: Defines for Chinese IMUs

Post by marbalon »

I'm using this pair ADXL345 and L3G4200 in my quads and it works perfect for me. But there is a bug in gyro driver. My friend (wektorx) found this and there is fixed gyro driver. No difference between itg3200 in my opinion.

Code: Select all

// ************************************************************************************************************
// contribution from Ciskje, corrected by wektorx
// I2C Gyroscope L3G4200D
// ************************************************************************************************************
#if defined(L3G4200D)
void Gyro_init() {
 delay(100);
 delay(5); i2c_writeReg(0XD2+0 ,0x20 ,0b01001111 ); // CTRL_REG1  DR 200Hz BW 20Hz
 delay(5); i2c_writeReg(0XD2+0 ,0x21 ,0b00101001 ); // CTRL_REG2
 delay(5); i2c_writeReg(0XD2+0 ,0x22 ,0b00000000 ); // CTRL_REG3   all disable
 delay(5); i2c_writeReg(0XD2+0 ,0x23 ,0b00110000 ); // CTRL_REG4  2000dps
 delay(5); i2c_writeReg(0XD2+0 ,0x24 ,0b00000000 ); // CTRL_REG5
 delay(5); i2c_writeReg(0XD2+0 ,0x2E ,0b00000000 ); //
}

void Gyro_getADC () {
  TWBR = ((16000000L / 400000L) - 16) / 2; // change the I2C clock rate to 400kHz
  i2c_getSixRawADC(0XD2,0x80|0x28);

  GYRO_ORIENTATION( ((rawADC[1]<<8) | rawADC[0])/4  ,
                    ((rawADC[3]<<8) | rawADC[2])/4  ,
                    ((rawADC[5]<<8) | rawADC[4])/4  );
  GYRO_Common();
}
#endif

bill516
Posts: 334
Joined: Sun Aug 07, 2011 12:27 pm

Re: Defines for Chinese IMUs

Post by bill516 »

I posted answer to your reply to me in multiwii forum, I had to change the code where it reads 0XD2 to 0XD0 as I was getting i2c errors. The 0XD0 was in the code I received from the seller and works on my system.

Katch
Posts: 280
Joined: Thu Aug 04, 2011 1:44 pm

Re: Defines for Chinese IMUs

Post by Katch »

Just received my GY_86 with MPU6050 etc. News is the Mag is connected to the MPU6050 AUX i2c bus.

This code should work but I haven't tested it yet.

config.h

Code: Select all

#define GY_86             // Chinese 10 DOF with  MPU6050 HMC5883L MS5611, LLC


define.h

Code: Select all

#if defined(GY_86)
  #define MPU6050
  #define HMC5883
  #define MS561101BA
  #define ACC_ORIENTATION(X, Y, Z)  {accADC[ROLL]  = -X; accADC[PITCH]  = -Y; accADC[YAW]  =  Z;}
  #define GYRO_ORIENTATION(X, Y, Z) {gyroADC[ROLL] =  Y; gyroADC[PITCH] = -X; gyroADC[YAW] = -Z;}
  #define MAG_ORIENTATION(X, Y, Z)  {magADC[ROLL]  =  X; magADC[PITCH]  =  Y; magADC[YAW]  = -Z;}
  #define MPU6050_EN_I2C_BYPASS // MAG connected to the AUX I2C bus of MPU6050
  #undef INTERNAL_I2C_PULLUPS
#endif


I'll confirm orientations tomorrow and maybe get a flight test if it stops raining.

Katch
Posts: 280
Joined: Thu Aug 04, 2011 1:44 pm

Re: Defines for Chinese IMUs

Post by Katch »

Still raining but the above code has now been tested in GUI - everything is working as expected.

Can someone add this to the public code please.

PatrikE
Posts: 1976
Joined: Tue Apr 12, 2011 6:35 pm
Location: Sweden
Contact:

Re: Defines for Chinese IMUs

Post by PatrikE »

Is this correct?
#define MPU6050_EN_I2C_BYPASS // MAG connected to the AUX I2C bus of MPU6050
/Patrik

Katch
Posts: 280
Joined: Thu Aug 04, 2011 1:44 pm

Re: Defines for Chinese IMUs

Post by Katch »

PatrikE wrote:Is this correct?
#define MPU6050_EN_I2C_BYPASS // MAG connected to the AUX I2C bus of MPU6050
/Patrik


Yes - I've metered the board and this is how it is connected. Mag is also functioning as expected in the GUI.

User avatar
fr3d
Posts: 97
Joined: Sun Feb 06, 2011 11:21 am
Location: Cappelle la grande near the ch'ti village
Contact:

Re: Defines for Chinese IMUs

Post by fr3d »

I've an gy_80 acc(adxl345) & gyro(L3G4200) are ok in gui ,
I will post define lignes this evening.

but mag is not working very well when I tilt board , heading move in random direction. I suppress the little buzzer but always same.
All curves are in accordance with multiwii FAQ

How should be the sensor axis directions

TILT the MULTI to the RIGHT (left side up):
•MAG_ROLL, ACC_ROLL and GYRO_ROLL goes up
•MAG_Z and ACC_Z goes down

TILT the MULTI forward (tail up):
•MAG_PITCH, ACC_PITCH and GYRO_PITCH goes up
•MAG_Z and ACC_Z goes down

Rotating the copter clockwise (YAW):
•GYRO_YAW goes up

The copter stays level:
•MAG_Z is positive ; ACC_Z is positive

Katch
Posts: 280
Joined: Thu Aug 04, 2011 1:44 pm

Re: Defines for Chinese IMUs

Post by Katch »

fr3d wrote:I've an gy_80 acc(adxl345) & gyro(L3G4200) are ok in gui ,
I will post define lignes this evening.

but mag is not working very well when I tilt board , heading move in random direction. I suppress the little buzzer but always same.
All curves are in accordance with multiwii FAQ

How should be the sensor axis directions

TILT the MULTI to the RIGHT (left side up):
•MAG_ROLL, ACC_ROLL and GYRO_ROLL goes up
•MAG_Z and ACC_Z goes down

TILT the MULTI forward (tail up):
•MAG_PITCH, ACC_PITCH and GYRO_PITCH goes up
•MAG_Z and ACC_Z goes down

Rotating the copter clockwise (YAW):
•GYRO_YAW goes up

The copter stays level:
•MAG_Z is positive ; ACC_Z is positive


GY_80 is already done - check the 1st page.

PatrikE
Posts: 1976
Joined: Tue Apr 12, 2011 6:35 pm
Location: Sweden
Contact:

Re: Defines for Chinese IMUs

Post by PatrikE »

GY_86 is included in MultiWii_Shared.

@Katch
Please confirm the function and orientation of the boards.
GY_80 & GY_86 .

/Patrik

Katch
Posts: 280
Joined: Thu Aug 04, 2011 1:44 pm

Re: Defines for Chinese IMUs

Post by Katch »

GY_80 100% confirmed and flight tested

GY_86 100% confirmed in GUI but not flight tested yet

msev
Posts: 186
Joined: Thu Apr 14, 2011 11:49 am

Re: Defines for Chinese IMUs

Post by msev »

Please share links to which board that is?

Katch
Posts: 280
Joined: Thu Aug 04, 2011 1:44 pm

Re: Defines for Chinese IMUs

Post by Katch »

read the thread all the information is there

PatrikE
Posts: 1976
Joined: Tue Apr 12, 2011 6:35 pm
Location: Sweden
Contact:

Re: Defines for Chinese IMUs

Post by PatrikE »

Search for 10 dof on ebay.com.
These links is active Just Now! :!:
GY_86
GY_80

msev
Posts: 186
Joined: Thu Apr 14, 2011 11:49 am

Re: Defines for Chinese IMUs

Post by msev »

Thanks!

flyrobot
Posts: 73
Joined: Thu Apr 05, 2012 3:59 pm

Re: Defines for Chinese IMUs

Post by flyrobot »

Hi Katch,

Have you test flight the GY-86 ? How was it compare with 0.4.3MS?
I plan to buy one.

Thanks,

John

Katch
Posts: 280
Joined: Thu Aug 04, 2011 1:44 pm

Re: Defines for Chinese IMUs

Post by Katch »

Haven't had a chance yet - wet and windy here at the moment. It certainly puts out very clean signals so I have great hopes for it.

I won't be able to compare it to the FreeIMU 0.4.3MS unfortunately as I only have the 0.3.5MS and 0.3.5BMP. But seeing as it is identical sensors in the same configuration I don't believe there would be any perceptible difference in flight characteristics.

flyrobot
Posts: 73
Joined: Thu Apr 05, 2012 3:59 pm

Re: Defines for Chinese IMUs

Post by flyrobot »

I think so, i saw all the sensor using exactly same postion (i meant direction) with 0.4.3MS. Anyway what the different 0.4.0 MS and 0.4.3 MS? Why they change the hardware ? The purpose of my question is which version of 0.4.x MS that similar (identical) with GY-86.

Katch
Posts: 280
Joined: Thu Aug 04, 2011 1:44 pm

Re: Defines for Chinese IMUs

Post by Katch »

Another GY_xx IMU for you - not tested yet as I don't have the board - someone over on RCG will test for me and I'll confirm it later but looking at the high res photos this is almost certainly correct.

config.h addition

Code: Select all

#define GY_85             // Chinese 9 DOF with  ITG3205 ADXL345 HMC5883L LLC


def.h additions

Code: Select all

#if defined(GY_85)
  #define ITG3200
  #define ADXL345
  #define HMC5883
  #define ACC_ORIENTATION(X, Y, Z)  {accADC[ROLL]  = -X; accADC[PITCH]  = -Y; accADC[YAW]  =  Z;}
  #define GYRO_ORIENTATION(X, Y, Z) {gyroADC[ROLL] =  Y; gyroADC[PITCH] = -X; gyroADC[YAW] = -Z;}
  #define MAG_ORIENTATION(X, Y, Z)  {magADC[ROLL]  =  X; magADC[PITCH]  =  Y; magADC[YAW]  = -Z;}
  #undef INTERNAL_I2C_PULLUPS
  #define ADXL345_ADDRESS 0xA6
#endif

Katch
Posts: 280
Joined: Thu Aug 04, 2011 1:44 pm

Re: Defines for Chinese IMUs

Post by Katch »

flyrobot wrote:I think so, i saw all the sensor using exactly same postion (i meant direction) with 0.4.3MS. Anyway what the different 0.4.0 MS and 0.4.3 MS? Why they change the hardware ? The purpose of my question is which version of 0.4.x MS that similar (identical) with GY-86.


I'm not sure what the changes were on the 0.4.x versions. They all share exactly the same defines in MultiWii so I think they were just small engineering changes. The GY_86 uses exactly the same defines as the 0.4.3MS so it should be operationally identical.

Katch
Posts: 280
Joined: Thu Aug 04, 2011 1:44 pm

Re: Defines for Chinese IMUs

Post by Katch »

GY_81 ITG3205 BMA180 HMC5883L BMP085, LLC

also waiting for confirmation from someone on RCG

config.h

Code: Select all

#define GY_81             // Chinese 10 DOF with  ITG3205 BMA180 HMC5883L BMP085, LLC


def.h

Code: Select all

#if defined(GY_81)
  #define ITG3200
  #define BMA180
  #define HMC5883
  #define BMP085
  #define ACC_ORIENTATION(X, Y, Z)  {accADC[ROLL]  = -X; accADC[PITCH]  = -Y; accADC[YAW]  =  Z;}
  #define GYRO_ORIENTATION(X, Y, Z) {gyroADC[ROLL] =  Y; gyroADC[PITCH] = -X; gyroADC[YAW] = -Z;}
  #define MAG_ORIENTATION(X, Y, Z)  {magADC[ROLL]  =  X; magADC[PITCH]  =  Y; magADC[YAW]  = -Z;}
  #undef INTERNAL_I2C_PULLUPS
#endif


that last code block might need a "#define ITG3200_ADDRESS " statement but I'd guess it's default.

fax8
Posts: 61
Joined: Mon Feb 14, 2011 5:29 pm

Re: Defines for Chinese IMUs

Post by fax8 »

FreeIMU v0.4.0 was the first board I designed with MPU6050.. at that time (September 2011) Invensense was releasing MPU6050 chips marked with ES (engeenering samples). Those sensors had the accelerometer scale factor halved compared to the final version of the MPU6050. If you go into Sensors.pde, in the MPU6050 code you'll see the different scale factor used.

The define for v0.4.0 is still in the code since Alex and other developers/testers were given samples of those boards when we were testing and writing code for the MPU6050.

flyrobot
Posts: 73
Joined: Thu Apr 05, 2012 3:59 pm

Re: Defines for Chinese IMUs

Post by flyrobot »

Hi Fabio,

Many thanks for the information. Im very glad to get this accurate information from the maker. Im using 0.3.5 MS with flyduino mega (i still have little problem with stability compare with quadrino adv, so far im very happy with quadrino adv using ITG3200 and BMP180), i still searching for the best config. I have some question :
1. What is the difference in term of stability between 0.3.5MS and 0.4.3MS ?
2. What kind MPU6050 that GY-86 used? Anyone who bought this imu can share ? Is it marked with ES

Thanks,

John

Katch
Posts: 280
Joined: Thu Aug 04, 2011 1:44 pm

Re: Defines for Chinese IMUs

Post by Katch »

The GY_86 that I have does not use an engineering sample for the MPU6050

Just flight tested my GY_86

Latest dev code default PIDs (unstable using v2.0)

Flies really nicely no wobble - feels as solid as my FreeIMU 0.3.5MS if not a little snappier maybe - which is nice.

Haven't been able to confirm Mag functions in flight - they are perfect in GUI but seem not to be working in flight - possibly a calibration error as another board I was testing today was doing the same thing.

All in all a lovely cheap IMU.

flyrobot
Posts: 73
Joined: Thu Apr 05, 2012 3:59 pm

Re: Defines for Chinese IMUs

Post by flyrobot »

Hi Katch,

Good to hear GY-86 is good. I have 0.3.5MS, it fly shaking but if im using quadrino adv with same frame, motor, esc, its fly super stable. I know quadrino and 0.3.5MS is using same sensor except baro sensor. On 0.3.5MS, do you use LPF filtering? Do you use Internal pullup on ? (sorry its abit out of topic)

John

Katch
Posts: 280
Joined: Thu Aug 04, 2011 1:44 pm

Re: Defines for Chinese IMUs

Post by Katch »

Katch wrote:Another GY_xx IMU for you - not tested yet as I don't have the board - someone over on RCG will test for me and I'll confirm it later but looking at the high res photos this is almost certainly correct.

config.h addition

Code: Select all

#define GY_85             // Chinese 9 DOF with  ITG3205 ADXL345 HMC5883L LLC


def.h additions

Code: Select all

#if defined(GY_85)
  #define ITG3200
  #define ADXL345
  #define HMC5883
  #define ACC_ORIENTATION(X, Y, Z)  {accADC[ROLL]  = -X; accADC[PITCH]  = -Y; accADC[YAW]  =  Z;}
  #define GYRO_ORIENTATION(X, Y, Z) {gyroADC[ROLL] =  Y; gyroADC[PITCH] = -X; gyroADC[YAW] = -Z;}
  #define MAG_ORIENTATION(X, Y, Z)  {magADC[ROLL]  =  X; magADC[PITCH]  =  Y; magADC[YAW]  = -Z;}
  #undef INTERNAL_I2C_PULLUPS
  #define ADXL345_ADDRESS 0xA6
#endif


100% Flight tested and verified - can someone add it to the multiwii_sharred please?

PatrikE
Posts: 1976
Joined: Tue Apr 12, 2011 6:35 pm
Location: Sweden
Contact:

Re: Defines for Chinese IMUs

Post by PatrikE »

Gy_85 added to shared.

Iw'e orderd a GY_86.
Just to wait for it to arrive...:D

/Patrik

Arf
Posts: 22
Joined: Tue May 22, 2012 10:48 pm

Re: Defines for Chinese IMUs

Post by Arf »

I bought one of those Chinese GY-521 - MPU-6050 boards off eBay. I am hooking it up to an Arduino nano, I can't seem to find a schematic of the GY-521.

Is the pin labelled VCC meant to take 5volts or 3.3volts? I see something that might be a voltage regulator on the board, but I can't make out the writing.

Do these things need pull ups on SDL and SDA?

Should the current MPU-6050 MultiWii defs be enough to get it going?

Katch
Posts: 280
Joined: Thu Aug 04, 2011 1:44 pm

Re: Defines for Chinese IMUs

Post by Katch »

Arf wrote:
Is the pin labelled VCC meant to take 5volts or 3.3volts? I see something that might be a voltage regulator on the board, but I can't make out the writing.


Yes either or.

Arf wrote:
Do these things need pull ups on SDL and SDA?


No they have a built in LLC so it doesn't matter what level I2C you connect to.

Arf wrote:
Should the current MPU-6050 MultiWii defs be enough to get it going?


Should be yes as it is just a single sensor in its default orientation. Test and let us know.

Arf
Posts: 22
Joined: Tue May 22, 2012 10:48 pm

Re: Defines for Chinese IMUs

Post by Arf »

Katch wrote:
Should be yes as it is just a single sensor in its default orientation. Test and let us know.


I hooked up the GY-521 IMU to an Arduino nano last night, just on the bench as a test. All I needed to do was #define MPU6050 in config.h and that worked. Just using the release MultiWii 2.0 verison atm.

Initially it gives a full graph of random ACC_ROLL noise just sitting still on the bench, which was kind of weird, it calms down to a normal graph when click on calibrate. Should that be automatic? Seem to have to click calibrate each time I power it up, though it would have saved it like PID to flash.

I am a little uncertain about the orientation of the board. Which way is the front?

Pictures here:

http://s1134.photobucket.com/albums/m61 ... 10x310.jpg

ATM the arrow that says X seems to behave like forward in the GUI.


http://s1134.photobucket.com/albums/m61 ... 10x310.jpg


Which version of MultiWii should I be using for the MPU6050, MultiWii 2.0 or the current dev snapshot?

Tazzy
Posts: 75
Joined: Sun Jun 19, 2011 4:45 pm
Location: Sweden

Re: Defines for Chinese IMUs

Post by Tazzy »

Katch wrote:Just received my GY_86 with MPU6050 etc. News is the Mag is connected to the MPU6050 AUX i2c bus.

This code should work but I haven't tested it yet.

config.h

Code: Select all

#define GY_86             // Chinese 10 DOF with  MPU6050 HMC5883L MS5611, LLC


define.h

Code: Select all

#if defined(GY_86)
  #define MPU6050
  #define HMC5883
  #define MS561101BA
  #define ACC_ORIENTATION(X, Y, Z)  {accADC[ROLL]  = -X; accADC[PITCH]  = -Y; accADC[YAW]  =  Z;}
  #define GYRO_ORIENTATION(X, Y, Z) {gyroADC[ROLL] =  Y; gyroADC[PITCH] = -X; gyroADC[YAW] = -Z;}
  #define MAG_ORIENTATION(X, Y, Z)  {magADC[ROLL]  =  X; magADC[PITCH]  =  Y; magADC[YAW]  = -Z;}
  #define MPU6050_EN_I2C_BYPASS // MAG connected to the AUX I2C bus of MPU6050
  #undef INTERNAL_I2C_PULLUPS
#endif


I'll confirm orientations tomorrow and maybe get a flight test if it stops raining.


Thanks Katch for the gy_86 defs.
I did buy several GY-86 - (MPU6050 HMC883L MS5611) and have tested them all now and they work so good with default pid they are also shameless cheap but they seems to have good quality !
Barro holds the quad perfect +- 30cm in small wind and level and acro works also good so i can recommend them.

//Tazzy

User avatar
birdofplay
Posts: 5
Joined: Thu Jun 07, 2012 4:26 am

Re: Defines for Chinese IMUs

Post by birdofplay »

I found this thread an skipped thru it with expectation, sigh ...

I come from months of testing and a box full of broken props learning to fly Quads on my own using two Minsoo Kim Boards
One with metal can sensors and the other with the Mems sensors.

I've gotten to be a Fair pilot but my instincts are rooted in Fixed Wing experience so "things still happen" .

Yet, I figured I was Ready for the Next Step !

So after reading the Crius boards are not so good, I got a ZMR MultiWii SE board with all those swell sensors.
It claims to have ITG3205 Gyros, BMA180 Accelerometers, BMP085 Baro and HMC58831 Mag heading sensors. Apparently the G-81 ( yes/no ) ?
HOW COULD I LOOSE !

Oh, but wait ... I see now, the ZMR's "ARE" Crius boards, just not CALLED that by some vendors. Sigh again ...

The good news is that I've shut up and stayed quiet and gotten it to work on my own ( well sort of )

This thing is Twitchier than EITHER of my KK Kim pcb's.

Using MultiWii_2_0 I've been playing the PID game .

I have to say that the GUI is terrific and instilled me with Great Hopes, a NICE piece of programming. Thanks Guys !
Everything seemingly works.

But I also have to say that the Baro is All Over the Place at least Graphically - Wheew !

And my Bird Goes BONKERS if I even THINK about using the ACTIVATE Switch !!!
Forget the Baro, and Level is a bit less twitchy and well MAG is kinda Ho Hum !

BUT BUT BUT !!! THAT is WHY I got this upgraded sensor filled and integrated, single PCboard !

I was dearly looking for a bit of stability an less white knuckled pilatage !

So here is my question ...

Does ANYONE have suggestions on what PIDs I should be using AS OPPOSED TO what it came with ?


I am really getting tired of Guessing and Testing and being disappointed.

Motors Good, ESC's Good, Props Balanced - This is the same machine that I can fly with the KK Kim boards !
Gyro's calibrated umpteen times. Even the Mag.

I'll stay busy testing in the back yard and changing out broken props in the shop
until someone takes pity on me.

Thanks in advance,

Bob
Northwest Cutout Service.

User avatar
birdofplay
Posts: 5
Joined: Thu Jun 07, 2012 4:26 am

Re: Defines for Chinese IMUs

Post by birdofplay »

Well A few minutes AFTER I posted my little rant above I found this ...

https://docs.google.com/spreadsheet/ccc ... 5c1E#gid=0

It AT LEAST has some good settings and places to start.

Next - how to get the Alt Hold to STOP HUNTING !

It seems to get worse once perturbed and then never seems to smooth down or stabilize.
Chasing after it with throttle movement is a joke.

I do have it pretty much GOOD with the Level function.

The quest goes on

Bob
Northwest Cutout Service

whit101
Posts: 2
Joined: Mon Jun 25, 2012 5:08 pm

Re: Defines for Chinese IMUs

Post by whit101 »

Bob, I've heard that protecting the board/Baro from prop-wash helps. I have a HT-FPV "open" frame so I used an old lexan RC car body(light strong and cool looking) as a covered. Whit

User avatar
jevermeister
Posts: 708
Joined: Wed Jul 20, 2011 8:56 am
Contact:

Re: Defines for Chinese IMUs

Post by jevermeister »

Hi,
I received my GY-86 yesterday and replaced my old sensor combo (WM+, BMA020, HMC5883L, BMP085) with it.
I ran v2.1 moments before the sensor switch and had a perfect flying QuadX, I tested the GY86 today but now the copter is very twitchy.
When I throttle up the motors start to twitch a little, the coper seems very unstable, there is a cosntand osscilation and it has a very bad random level drift.

After a few minutes of flight the copter got crazy and crashed, when I tried to restart in hover mode the right motors gave full throttle and in acro mode the gyro does not seem to work.

I only connected 3.3V to the 3.3V port of the board, si that correct? There is nothing connected to VCC at the moment.
I use stock PID with some Throttle PID attentuation and different rates...
There are a few inevitable vibrations present in the copter but they never where a problem for the old sensors...

Whats wrong here?


Nils

Tazzy
Posts: 75
Joined: Sun Jun 19, 2011 4:45 pm
Location: Sweden

Re: Defines for Chinese IMUs

Post by Tazzy »

jevermeister wrote:Hi,
I received my GY-86 yesterday and replaced my old sensor combo (WM+, BMA020, HMC5883L, BMP085) with it.
I ran v2.1 moments before the sensor switch and had a perfect flying QuadX, I tested the GY86 today but now the copter is very twitchy.
When I throttle up the motors start to twitch a little, the coper seems very unstable, there is a cosntand osscilation and it has a very bad random level drift.

After a few minutes of flight the copter got crazy and crashed, when I tried to restart in hover mode the right motors gave full throttle and in acro mode the gyro does not seem to work.

I only connected 3.3V to the 3.3V port of the board, si that correct? There is nothing connected to VCC at the moment.
I use stock PID with some Throttle PID attentuation and different rates...
There are a few inevitable vibrations present in the copter but they never where a problem for the old sensors...

Whats wrong here?


Nils


My gy86 is connected to 5v because it have built in llc and it works perfect with standard pids and none filter settings so try to resolder it to 5v and try again.

// Tazzy

User avatar
mbrak
Posts: 136
Joined: Sat Dec 03, 2011 8:08 pm
Location: Germany, Lemgo

Re: Defines for Chinese IMUs

Post by mbrak »

jevermeister wrote:Hi,
I received my GY-86 yesterday and replaced my old sensor combo (WM+, BMA020, HMC5883L, BMP085) with it.
I ran v2.1 moments before the sensor switch and had a perfect flying QuadX, I tested the GY86 today but now the copter is very twitchy.
When I throttle up the motors start to twitch a little, the coper seems very unstable, there is a cosntand osscilation and it has a very bad random level drift.

After a few minutes of flight the copter got crazy and crashed, when I tried to restart in hover mode the right motors gave full throttle and in acro mode the gyro does not seem to work.

I only connected 3.3V to the 3.3V port of the board, si that correct? There is nothing connected to VCC at the moment.
I use stock PID with some Throttle PID attentuation and different rates...
There are a few inevitable vibrations present in the copter but they never where a problem for the old sensors...

Whats wrong here?


Nils


hi nils

received my gy-86 some days before. had the same problems as you discribe.
my solution was to change the pad between frame and imu to a very soft one. i use a heli-gyro pad from my microbeast (flybarless system).
now i can raise p-values up to 6.5 and more without any problems.
i think the mpu6050 need a more soft pad as for example a itg3200 or wm+

the propeller system of my copter has some vibrations, because i cannot eleminate dynamic unbalance up to 100%.

br michael

p.s. i use the vcc pin to inject 5v into the imu from the mega2560.

User avatar
jevermeister
Posts: 708
Joined: Wed Jul 20, 2011 8:56 am
Contact:

Re: Defines for Chinese IMUs

Post by jevermeister »

Hi,
I applied LPF of 155Hz and it got better.
With LPF of 98Hz the result is now as eprfekt as before. (Is there a negative effect using the LPf)
I can make flips like before, everything is okay.

What difference does it make if I power the board via 5V?

I have some troubles with the wires, my flyduino is connected to the frame via dampeners and I applied the GY-86 to the flyduino via Mirror Foam Tape but the cables are delivering a
lot of vibrations..
after all I better had bought the new CRIUS All in One Mega...

Nils

User avatar
mbrak
Posts: 136
Joined: Sat Dec 03, 2011 8:08 pm
Location: Germany, Lemgo

Re: Defines for Chinese IMUs

Post by mbrak »

jevermeister wrote:Hi,
I applied LPF of 155Hz and it got better.
With LPF of 98Hz the result is now as eprfekt as before. (Is there a negative effect using the LPf)


dont know :) i want it pure without any filter :)


jevermeister wrote:What difference does it make if I power the board via 5V?


the shouldn't be a difference, but why not using an existing llc? :)


no way to balance your prop system?
my other quad with nanowii has no pad to calm down the vibratons. the prop system is very well balanced. no lpf filter... pure flying

br michael

Post Reply