WM+ with ITG3205

juanvivo
Posts: 8
Joined: Thu Feb 24, 2011 6:03 pm

Re: WM+ with ITG3205

Post by juanvivo »

it´s valid for the 1.6??

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

Re: WM+ with ITG3205

Post by ziss_dm »

Should work.. If not use 1.7.

Regards,
ziss_dm

juanvivo
Posts: 8
Joined: Thu Feb 24, 2011 6:03 pm

Re: WM+ with ITG3205

Post by juanvivo »

I tested and seemed to run well in the first test in the multiwiiconf, but suddenly blocked. Then I tried more times and no longer works ... ¿¿¿???

i go to try with the 1.7 ...

pd.- the 1.7 is too big for my 168...

mistral
Posts: 6
Joined: Fri Feb 04, 2011 8:19 am

Re: WM+ with ITG3205

Post by mistral »

I use 1.6, work fine.
Fab

Musgravehill
Posts: 3
Joined: Tue Mar 29, 2011 9:55 am

Re: WM+ with ITG3205

Post by Musgravehill »

I connect ITG3205 directly to Arduino 328p 5V: 3V3 from Ardu pin to pullup-resistor on WMP board, and 3V3 to BMA020. I disable internal pullups in code.
It works, but can I damage 3205?

Image

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

Re: WM+ with ITG3205

Post by ziss_dm »

Hi,

Musgravehill: This should work, I'm using the same configuration in my setup. And it works fine sofar..

Regards,
ziss_dm

User avatar
speto_sk
Posts: 29
Joined: Sat Mar 05, 2011 7:32 am
Location: Slovak republic, Kosice

Re: WM+ with ITG3205

Post by speto_sk »

ziss_dm wrote:Hi,

Musgravehill: This should work, I'm using the same configuration in my setup. And it works fine sofar..

Regards,
ziss_dm


Hi ziss_dm,

which version multiwii code you used in your arduino board. I have same wmp without acc, and my quadrocopter is more oversensitive. What I do ? :oops: My english is poor, do you understand me ? THNX

alex263
Posts: 1
Joined: Thu Mar 31, 2011 11:53 pm

Re: WM+ with ITG3205

Post by alex263 »

Just received my batch of clones. Neither of mine did pass init code (none detected, neither did nunchuck). Worked with original just perfect (code 1.5, ported to Mega644) The clone board is blue, marked as "MP-V3.0 2010.12.08", ITG3205 is onboard, with U3 missing. Tried both 100 khz and 400 khz - neither does work for me. Shall I try patch from 1.6? Looks like its dedicated for some sparkfun PCB... what could be the init code difference ?
Image
Got it working - by wiring directly to gyro I2C - with 1.7 code.
NK is in parallel, no any pullups disconnected - just internals disabled.
Everything, including Corona recv is powered from 3.3v (standalone Mega328 at 16 Mhz as Arduino) to avoid level shifting issues.
Still not tested\resolved - 3.3 v PPM to Turnigy Plush - will it accept or not
Last edited by alex263 on Tue May 10, 2011 3:03 pm, edited 2 times in total.

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

Re: WM+ with ITG3205

Post by copterrichie »

alex263 wrote:Just received my batch of clones. Neither of mine did pass init code (none detected, neither did nunchuck). Worked with original just perfect (code 1.5, ported to Mega644) The clone board is blue, marked as "MP-V3.0 2010.12.08", ITG3205 is onboard, with U3 missing. Tried both 100 khz and 400 khz - neither does work for me. Shall I try patch from 1.6? Looks like its dedicated for some sparkfun PCB... what could be the init code difference ?
Image


I am not sure if my findings applies to the Blue version with the ITG3205, but it may be worth taking a look at.

http://vimeo.com/21416952

Rurek
Posts: 30
Joined: Sun Jan 30, 2011 1:28 pm

Re: WM+ with ITG3205

Post by Rurek »

So, guys...I made this fantastic mod by ziss_dm :-)
- direct connection of ITG3205 from WMP (as on my picture above, I2C lines to pullups on WMP, 3,3V from WMP regulator to supply NK) REMEMBER TO DISABLE ARDUINO INTERNAL PULLUPS in the code!
- independed connection to I2C bus with Nunchuck, powered from 3,3V from WMP plus modified , patched sketch (ziss_dm - you have one small bug with reported by other :move up one command line)
- patch for overflow ITG3200 (or 3205 - this is the same gyro sensor but for OEM manufacturers such a Wii cloners)
WITCH ABOVE MODS this set WMP + NK seems to be a great! A cheap, legacy alternative to BOBs from sparkfun or others...
My cycle time is : alone WMP - 1,9ms (!!!!!), connected NK - 2,4ms (!!!!!!!) but....with roll/pitch more than 25degree it is 4ms because for bigger turns, Alex coded another angle inclination procedure in sketch, more time this needed to calculate...so it is now proven that this kind of connection of Nunchuck is timeless :-) Never again Ardu waits to NK data :-) now it it reversed :-) Nunchuck and WMP waits to Arduino computing :-)
ZISS_DM MANY MANY THANKS! You are a big contributor to Alex's MWC code!!!!
Alex- please don't loose in your 1.7 official these mods in code prepared by ziss_dm - it is great! There is no need to have any other electronics such Logic Level Converter, breakoutboards with other sensors...Alex's idea to make FlightController with simple cheap based Wii sensors now grow up :-)

User avatar
guru_florida
Posts: 45
Joined: Sat Mar 26, 2011 4:51 am

Re: WM+ with ITG3205

Post by guru_florida »

So is everyone working well on 1preter7 without the ITG3200 gyro going all wonky? I've made my own PCB with onboard arduino plus ITG3200 gyro plus BMA180 accelerometer. I've been flying with it for a while without *any* issues, but I am not an aggressive flyer yet. My friend tried my board in strong winds and it flipped twice. Really flipped. This was on 1prebis7, not the newest though.

We also placed the board on a plain Gaui frame, no landing frame, really light aggressive frame, small and awesomeness. The Gaui could not get off the ground and was really unstable. Did the divide by 3 and played with PID values a bit and we got it flying pretty good. Strange thing is he uses the popular Wii board setup and it flies fine. Why would the normal Wii gyro work so much more stable than the ITG3200. The ITG3200 supports many different G ranges, maybe we need to initialize that IC with a different G range. A larger G range should make for smaller output values and do much the same as divide by 3 without quantizing the input so much.

On our other frames, 450 frame, the board works great without any tuning or tweaking...hookup and fly in 5 mins.

Just wondering how others are getting along with preter?

C

User avatar
guru_florida
Posts: 45
Joined: Sat Mar 26, 2011 4:51 am

Re: WM+ with ITG3205

Post by guru_florida »

My quadrino board... :)
Quadrino-Rev1A-ssm.png

Point65
Posts: 9
Joined: Fri Jan 28, 2011 9:37 pm

Re: WM+ with ITG3205

Post by Point65 »

GR8 work ziss_dm!
I've just got 2 of the WMP ITG3205's from deal extreme and ready to mod and test on my tri.
Did you measure the voltage on the I2C bus so it doesn't exceed the specs of the chip?

Update: I measured the SDA & SCL voltages. I use a Nano with the modded WMP connected to 5V.
SDA measures 4V without the WMP connected and a heathly 2.6V with the WMP connected.
No need for a LLC. Only "problem" is to solder the SDA/SCL wires :shock: without magnifying glas
and then securing them mechanically.
Tested with 1_preter7 with the mod described earlier in the thread. Thanks for this great find.

Time to cleanup some wiring and put it on my mini-tri!
/Bo

carlonb
Posts: 210
Joined: Sun Apr 03, 2011 6:29 pm

Re: WM+ with ITG3205

Post by carlonb »

Rurek wrote:So, guys...I made this fantastic mod by ziss_dm :-)
- direct connection of ITG3205 from WMP (as on my picture above, I2C lines to pullups on WMP, 3,3V from WMP regulator to supply NK) REMEMBER TO DISABLE ARDUINO INTERNAL PULLUPS in the code!
- independed connection to I2C bus with Nunchuck, powered from 3,3V from WMP plus modified , patched sketch (ziss_dm - you have one small bug with reported by other :move up one command line)
- patch for overflow ITG3200 (or 3205 - this is the same gyro sensor but for OEM manufacturers such a Wii cloners)
WITCH ABOVE MODS this set WMP + NK seems to be a great! A cheap, legacy alternative to BOBs from sparkfun or others...
My cycle time is : alone WMP - 1,9ms (!!!!!), connected NK - 2,4ms (!!!!!!!) but....with roll/pitch more than 25degree it is 4ms because for bigger turns, Alex coded another angle inclination procedure in sketch, more time this needed to calculate...so it is now proven that this kind of connection of Nunchuck is timeless :-) Never again Ardu waits to NK data :-) now it it reversed :-) Nunchuck and WMP waits to Arduino computing :-)
ZISS_DM MANY MANY THANKS! You are a big contributor to Alex's MWC code!!!!
Alex- please don't loose in your 1.7 official these mods in code prepared by ziss_dm - it is great! There is no need to have any other electronics such Logic Level Converter, breakoutboards with other sensors...Alex's idea to make FlightController with simple cheap based Wii sensors now grow up :-)

Hi rurek,
I connected modded WM+ and in GUI seems works OK, but after I connected the NUNCHUK (as showm in previous posts) directly on I2C bus and on GUI I see that the accels are present, but the data are fixed to zero for pitch and roll and fixed at 198 on Z axis.
I've used the vers, 1.7 pre ter for NUNCHACK, but I do not understand what you mean about "patched sketch (ziss_dm - you have one small bug with reported by other :move up one command line)".
May be this my issue ? What I need to patch the code ?
Thanks, Carlo

rbirdie001
Posts: 178
Joined: Fri Apr 01, 2011 10:32 pm
Location: Czech Republic, Prague

Re: WM+ with ITG3205

Post by rbirdie001 »

Rurek wrote:So, guys...I made this fantastic mod by ziss_dm :-)
- direct connection of ITG3205 from WMP (as on my picture above, I2C lines to pullups on WMP, 3,3V from WMP regulator to supply NK) REMEMBER TO DISABLE ARDUINO INTERNAL PULLUPS in the code!
- independed connection to I2C bus with Nunchuck, powered from 3,3V from WMP plus modified , patched sketch (ziss_dm - you have one small bug with reported by other :move up one command line)
- patch for overflow ITG3200 (or 3205 - this is the same gyro sensor but for OEM manufacturers such a Wii cloners)
WITCH ABOVE MODS this set WMP + NK seems to be a great! A cheap, legacy alternative to BOBs from sparkfun or others...
My cycle time is : alone WMP - 1,9ms (!!!!!), connected NK - 2,4ms (!!!!!!!) but....with roll/pitch more than 25degree it is 4ms because for bigger turns, Alex coded another angle inclination procedure in sketch, more time this needed to calculate...so it is now proven that this kind of connection of Nunchuck is timeless :-) Never again Ardu waits to NK data :-) now it it reversed :-) Nunchuck and WMP waits to Arduino computing :-)
ZISS_DM MANY MANY THANKS! You are a big contributor to Alex's MWC code!!!!
Alex- please don't loose in your 1.7 official these mods in code prepared by ziss_dm - it is great! There is no need to have any other electronics such Logic Level Converter, breakoutboards with other sensors...Alex's idea to make FlightController with simple cheap based Wii sensors now grow up :-)


Hi Rurek,
thanks for your answer in the "bugs" forum.
I have the same behavior of directly connected ITG3205+NK on I2C bus with MultiWii1_preter7_nunchuk.pde like carlonb. You pointed me that 5V on ITG3205 can be the problem but I checked again original factory connection of my WMP with ITG3205 (see picture) and there is DIRECTLY wired pin 1 of input Nintendo plug---pin 1 of output Nintendo plug---Vcc for ITG3205---top of I2C pullups. It mean that either whole WMP was designed for 3.3V supply or it's designed for powering of ITG3205 from 5V (What is original Nintendo pin 1 supply voltage?) Maybe 5V on the ITG3205 chip is not correct but I still think it's not cause of my problem.
With the software MultiWii1_preter7.pde ITG3205 chip connected directly to I2C bus works even with 5V supply (in both cases - with parallel NK or without it) but with software MultiWii1_preter7_nunchuk.pde (with moved up "static uint8_t rawADC_WMP[6];" line) I have stuck zero and Z=200 values like carlonb. It really seems to be problem of software MultiWii1_preter7_nunchuk.pde and not 3.3V or 5V. Can please someone who have working MultiWii1_preter7_nunchuk.pde post it complete with all patches and moved lines to make me sure I did all the changes correctly?
Thanks!
Roman
P.S. Just a stupid idea: Can't be ITG3200 and ITG3205 difference just capability of ITG3205 to work with 5V supply? :)
Attachments
My WMP with ITG3205. Red marked points are in original factory design directly connected.
My WMP with ITG3205. Red marked points are in original factory design directly connected.

Rurek
Posts: 30
Joined: Sun Jan 30, 2011 1:28 pm

Re: WM+ with ITG3205

Post by Rurek »

Maybe Alex or ziss_dm remarks, replies to this problem...I'm not the coder or degree in electronics...
ITG3200 refered to its datasheet - works on 3,3v.....
I use the 1prebis7 with added patches made by ziss_dm..Tommorow I can attach here my working sketch, today I write on another computer...

Musgravehill
Posts: 3
Joined: Tue Mar 29, 2011 9:55 am

Re: WM+ with ITG3205

Post by Musgravehill »

Point65 wrote:SDA measures 4V without the WMP connected and a heathly 2.6V with the WMP connected.


Bo, please tell did you measured voltage by oscilloscope or by voltmeter? The voltmeter will lie, because there is high-frequency current.

rbirdie001
Posts: 178
Joined: Fri Apr 01, 2011 10:32 pm
Location: Czech Republic, Prague

WM+ with ITG3205 +NK

Post by rbirdie001 »

Hi,
I did new tests with my boards, I have new results but not much wisdom :(
I powered my "blue" WM+ board with ITG3205 (image and description 3 posts up) from 3.3V and it seems to work better than with 5V - so Rurek was right - ITG3205 seems to be designed for 3.3V only.
It means that whole "blue" WM+ board is designed for 3.3V supply only as there is probably missing 3.3V power stabiliser IC!
Now ITG3205 gyro communicates with both - patched MultiWii1_preter7_nunchuk.pde and original MultiWii1_preter7.pde and on the table it looks good.
Then I tested to connect my Nunchuk with removed pullups in parallel with it but it doesn' work at all (while ITG3205 gyro is still communicate!)
ACC shows either frozen values of 400 on all axes or extremely high random "mountain" peaks - same for all axes.
I tried to power my Nunchuk clone from both 3.3V and 5V but no change.
Connection is like this: SDA and SCL of gyro and NK in parallel, only one pullups to +3.3V in WM+, in NK removed, in Arduino disabled.
ITG3205 powered from external 3.3V, Nunchuk powered from 5V (also tried 3.3V).
Does it mean that my Nunchuk (otherwise tested and working behind another regular WM+) is unable to communicate on the same bus with ITG3205?
Any ideas, guys?
Thanks!

anyn
Posts: 2
Joined: Sun Apr 03, 2011 11:12 am

Re: WM+ with ITG3205

Post by anyn »

OK, here is my modified version of 1_preter7_nunchack

I didnt move the "static uint8_t rawADC_WMP[6];" , but created a new variable "static uint8_t rawADC_nunchack[6];",
seemed nicer code because the other drivers do it the same.

I connected the ITG 3205 directly like described by ziss_dm earlier und deactivated the pullups in the arduino.
Then i connected the Nunchack's SCL and SDA lines in parallel with the ITG 3205's SCL and SDA.
I powered the Nunchack from the 2,8V pin of ziss_dm's mod.

works fine so far :-)
Attachments
MultiWii1_preter7_nunchack.zip
(21.63 KiB) Downloaded 446 times

carlonb
Posts: 210
Joined: Sun Apr 03, 2011 6:29 pm

Re: WM+ with ITG3205

Post by carlonb »

anyn wrote:OK, here is my modified version of 1_preter7_nunchack

I didnt move the "static uint8_t rawADC_WMP[6];" , but created a new variable "static uint8_t rawADC_nunchack[6];",
seemed nicer code because the other drivers do it the same.

I connected the ITG 3205 directly like described by ziss_dm earlier und deactivated the pullups in the arduino.
Then i connected the Nunchack's SCL and SDA lines in parallel with the ITG 3205's SCL and SDA.
I powered the Nunchack from the 2,8V pin of ziss_dm's mod.

works fine so far :-)


Hi anyn,
I tested your mod sketch with my blue WM+ and Nunchuck, but bad news, WM+ looks good, but NCK stil freeze with 0, 0 and 198 on z axis. The GUI tells that acc is connected but no data at all.
Now I will remove the pullup res on NKC side and WM+ side as I use LLconverter at 3.3V, may be the impedance with the triple pullups (LLC+WM+ and NCK) is too low...

Bye and thanks, Carlo

EDIT: I also powered NCK via 2.8V from WM+ as ziss_dms, but still issue with NCK data.
Furthermore, some days ago, I tried also with standard connections (pass-trough mode) and official 1preter7 and I noted that one time over about 10 try the clone NCK with clone blue WM+ connect and GIU received correct data from gyro WM+ and acc (NCK), seem that there are init timing problems in sketch with this Wii clones.

Bye again, carlo
Last edited by carlonb on Mon Apr 04, 2011 10:00 pm, edited 1 time in total.

Point65
Posts: 9
Joined: Fri Jan 28, 2011 9:37 pm

Re: WM+ with ITG3205

Post by Point65 »

Musgravehill wrote:
Point65 wrote:SDA measures 4V without the WMP connected and a heathly 2.6V with the WMP connected.


Bo, please tell did you measured voltage by oscilloscope or by voltmeter? The voltmeter will lie, because there is high-frequency current.


Voltmeter. Comparing with previous oscilloscope measurementa, my voltmeter is close to the actual peak values (+/- 0,5 V).
/Bo

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

Re: WM+ with ITG3205

Post by ziss_dm »

Hi rbirdie001,

Couple of notes:
1) The "original" Nintendo controller supplies 3.3v to the WMP. But to reduce the noise on the analogue gyros, original WMP (and some clones) has own voltage regulator, which drops it to the 2.8v. This is a reason why it usually possible to make WMP work form 5v power supply. According to your picture "blue" clone does not have voltage regulator (U5). That means you must use 3.3v power supply :( And connect NK to the 3.3v as well.
2) According to your picture, this WMP has 1k8 pull-up resistors. This is lowest possible values for i2c (http://www.robot-electronics.co.uk/acat ... orial.html). So if you have additional pull-ups on other devices, this could cause issues. So, try to remove them. (Which you probably did.. ;-))
3) You can try to disconnect ITG and try NK alone on i2c.
4) You also could try to use 100Khz i2c speed for NK

Code: Select all

#if defined(NUNCHACK)
void i2c_ACC_init() {
  TWBR = ((16000000L / 100000L) - 16) / 2; // change the I2C clock rate
  i2c_rep_start(0xA4 + 0);//I2C write direction => 0
  i2c_write(0xF0);
  i2c_write(0x55);
  i2c_rep_start(0xA4 + 0);//I2C write direction => 0
  i2c_write(0xFB);
  i2c_write(0x00);
  delay(250);
  accPresent = 1;
}

void i2c_ACC_getADC() {
  TWBR = ((16000000L / 100000L) - 16) / 2; // change the I2C clock rate
  i2c_rep_start(0xA4 + 0);//I2C write direction => 0
  i2c_write(0x00);
  i2c_rep_start(0xA4 + 1);//I2C read direction => 1
  for(uint8_t i = 0; i < 5; i++)
    rawADC_WMP[i]=i2c_readAck();
  rawADC_WMP[5]= i2c_readNak();
  accADC[PITCH] = + ( (rawADC_WMP[2]<<2) + ((rawADC_WMP[5]>>2)&0x3) );
  accADC[ROLL]  = - ( (rawADC_WMP[3]<<2) + ((rawADC_WMP[5]>>4)&0x3) );
  accADC[YAW]   = - ( (rawADC_WMP[4]<<2) + ((rawADC_WMP[5]>>6)&0x3) );
//  accADC[PITCH] = - ( (rawADC_WMP[2]<<2)        + ((rawADC_WMP[5]>>3)&0x2) );
//  accADC[ROLL]  =   ( (rawADC_WMP[3]<<2)        + ((rawADC_WMP[5]>>4)&0x2) );
//  accADC[YAW]   = - ( ((rawADC_WMP[4]&0xFE)<<2) + ((rawADC_WMP[5]>>5)&0x6) );
}
#endif

5) What cycle time you have in GUI?
6) Are you sure your NK is not faulty? PCB quality is really low on NK, so check for the traces cracks. Especially near the Crystal (if you have one).

PS: We probably should move discussion to the another thread. :D

Regards,
ziss_dm

rbirdie001
Posts: 178
Joined: Fri Apr 01, 2011 10:32 pm
Location: Czech Republic, Prague

Re: WM+ with ITG3205

Post by rbirdie001 »

Thanks to all, especially ziss_dm for all advices.
I made it working! :D
Sketch is OK, last days I made several small mistakes because of trying it too much too fast too long and this was just why it didn't work.
I left it two days in the drawer, then carefully connected again and it WORKS!
So to all others having doubts: I connected ITG3205 powered from +3.1V (external power stabilizer with LM 317T) directly to Arduino and parallel to it my Nunchuk with removed pullups powered also from +3.1V. Arduino have disabled pullups so there is ONLY ONE pair of 1K8 pullups pulling to +3.1V. I loaded patched sketch (few posts above) and (at least on the table) it works great with nice cycle time 2500-2700.
See screenshot of the GUI. Details about boards are in my previous posts.
Nice weekend to all and don't be hurry!
Roman
Attachments
ITG3205_NK_together.png

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

Re: WM+ with ITG3205

Post by mahowik »

Hi ziss_dm,

I'm trying to run original nunchak using the multiwii I2C API on 100kHz (power=3v3, arduino pullups is OFF), while my WM+ on the way from ebay :) I.e. I wanna to run nunchuk without WM+.
I have slight changed the preter sketch to print values from accel. Could you look at this from attachment?

I have the following constant output inspite of accel position:

x: 165 y: 165 z: 165
PITCH: 661 ROLL: -662 YAW: -662
x: 165 y: 165 z: 165
PITCH: 661 ROLL: -662 YAW: -662
x: 165 y: 165 z: 165


P.s. I also tried to play with standart Wire.h lib to init and read accel values and it works fine.
Attachments
nunchack.zip
example with standart Wire.h
(2.15 KiB) Downloaded 221 times
multiwii_nunchack.zip
changed preter sketch
(15.72 KiB) Downloaded 248 times

rbirdie001
Posts: 178
Joined: Fri Apr 01, 2011 10:32 pm
Location: Czech Republic, Prague

Re: WM+ with ITG3205

Post by rbirdie001 »

Hi mahowik,
just for your info: I'm using this code posted by anyn here:
viewtopic.php?f=6&t=27&start=60#p1025
and with it works at 400khz any combination of ITG3205 and my nunchak clone (NK alone, ITG3205 alone or both together) without any code change.
Maybe it's limited to my NK clone only.
Unfortunately I don't understand much the code so I can't help you other way.
Roman

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

Re: WM+ with ITG3205

Post by mahowik »

Thanks a lot!
I have tried many combinations: 5v+pullups ON, 3v3 + pullups OFF with 100 and 400KHz but it still doesn't work. Probably it works only for some NK clones but not for original :(
Also can you see the diagram reaction in GUI during the NK position changing/rotation in case of only NK connected (i.e. without WMP)?

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

Re: WM+ with ITG3205

Post by ziss_dm »

Hi mahowik,
I have tried your sketches, both seems to be working fine:

Code: Select all

PITCH: 500   ROLL: -500   YAW: -612
x: 125   y: 125   z: 153
PITCH: 500   ROLL: -500   YAW: -612
x: 125   y: 125   z: 153
PITCH: 500   ROLL: -500   YAW: -612
x: 125   y: 125   z: 153
PITCH: 500   ROLL: -500   YAW: -612
x: 120   y: 119   z: 153
PITCH: 482   ROLL: -476   YAW: -612
x: 119   y: 120   z: 102
PITCH: 477   ROLL: -480   YAW: -409
x: 118   y: 120   z: 104
PITCH: 472   ROLL: -483   YAW: -417
x: 103   y: 110   z: 139
PITCH: 412   ROLL: -440   YAW: -557
x: 132   y: 132   z: 149
PITCH: 529   ROLL: -528   YAW: -599


You also can try this example: http://arduino.emsley.ca/w/images/e/e9/Nunchuck.pde. It is implementing both encrypted and unencrypted protocol.

regards,
ziss_dm

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

Re: WM+ with ITG3205

Post by mahowik »

Hi ziss_dm,

Many thanks for your help! I tried to play with sketch from link above. It works with both old and new ways (i.e. unencrypted and encrypted methods) on 100kHz.
BUT with Multiwii I2C API it still doesn't work... I prepared the clean sketch (based on Multiwii I2C API) for this with possibility to turn OFF/ON the pullups. Tested diff combinations for 5v/3v3, pullups ON/OFF, new/old init... thus I could not find the reason why original NK doesn't work with Multiwii I2C API...
Probably my Arduino from Hong Kong :)
Also I saw some note from Syberian on http://forum.rcdesign.ru/f123/thread221 ... ost2504284 russian forum about Arduino compiler issue in case of long path to sketch and long sketch name... probably it's a reason...
Could someone test the attached sketch and let me know the results and also what type of NK was used?
Attachments
I2C_MultiWii_nunchuk.zip
(2.12 KiB) Downloaded 224 times
Last edited by mahowik on Wed Apr 13, 2011 8:53 pm, edited 1 time in total.

lovegroove
Posts: 3
Joined: Wed Apr 13, 2011 8:27 pm

Re: WM+ with ITG3205

Post by lovegroove »

I just found this forum and this is my first post although I am active over on RCGroups.

I've just finished my first multiwii copter using a warthox board and a wiim+ clone with the ITG3205 chip. I have it hooked up like this: http://www.rcgroups.com/forums/showpost ... ount=10450

I've just uploaded version 1.7 of the software and it looks like this in the GUI. I don't really know what I should be expecting, but how does this look to you guys?
itg3205 with 1.7
itg3205 with 1.7


edit I just realised that I get the nice looking graph when the board is powered by the ftdi cable, but when I then plug the battery in and BEC power is supplied to the board, the output is all over the place and the slightest movement sends the graph off the page.

Is it some sort of noise in the power supply that is causing the ITG3205 to behave like it does?

rbirdie001
Posts: 178
Joined: Fri Apr 01, 2011 10:32 pm
Location: Czech Republic, Prague

Re: WM+ with ITG3205

Post by rbirdie001 »

mahowik wrote:Thanks a lot!
I have tried many combinations: 5v+pullups ON, 3v3 + pullups OFF with 100 and 400KHz but it still doesn't work. Probably it works only for some NK clones but not for original :(
Also can you see the diagram reaction in GUI during the NK position changing/rotation in case of only NK connected (i.e. without WMP)?


Hi Mahowik,
sorry for delay, I had my circuit disassembled so I coudn't check it for you.
Today I got from ebay another nunchuk clone, it's totally different hardware from the other one I already have but behaves exactly the same way.
I connected it alone directly to arduino running firmware from that post: viewtopic.php?f=6&t=27&start=60#p1025 and did tests. With 5V supply it didn't work but when powered from 3.1V supply it started working perfectly. (Only pullups are on NK board so also connected to 3.1V, arduino pullups disabled). I can see values and graphs of XYZ axes and cycle time between 3500-3600 but small quad in the corner isn't reacting much. When I move NK, it's very slightly shaking (+-2 degrees) but not moving propely. It seems to be moving only because of "parasitic" influence of NK data, for proper reactions it probably needs also some gyro, which is not connected.
I hope it can help you. My advice is to check everything about supply and I2C pullups - all my troubles were related to this. All Wii components seems to work best at about 3.3V and with ONLY ONE pair of pullups between 1K8 and 10K connected to +3.3V.
Later edit: I really tested that with two pairs of 1k8 pullups on the I2C it's not working, just when I removed one pair it started to work, so double check whether you really removed/disabled all unnecessary pullups!
Roman

lovegroove
Posts: 3
Joined: Wed Apr 13, 2011 8:27 pm

Re: WM+ with ITG3205

Post by lovegroove »

I now have 3 clones with the ITG3205 and none of them behave correctly. My quad has tried to kill me a few times now as it sometimes just goes mental when I move the throttle away from zero. Has anyone at all managed to get an ITG3205 working properly with no funny behaviour? Sometimes I can fly around for a few minutes and the quad is really nice and stable and then it will randomly death flip. Wish I had just bouth an original wm+ controller, but they're getting rare now as they all come with motion+ built in now.

dodecopter
Posts: 35
Joined: Fri Jan 21, 2011 7:37 am

Re: WM+ with ITG3205

Post by dodecopter »

hello,

do the mod mentioned some pages earlier and be happy :)

http://wbb.multiwii.com/viewtopic.php?f ... d&start=20

Erazotropa
Posts: 5
Joined: Mon Dec 19, 2011 3:39 pm

Re: WM+ with ITG3205

Post by Erazotropa »

Hi Guys

I have a issue opposite to this oversensitive ITG3205

I am using a AIO board with a ITG3205,

I noticed that the Yaw headinghold lock is very soft.. even when I increase the P value.. it wont start to oscillate..
The Roll and Elevator is super locked that works fine..
Also the Gyro output reading in the GUI seems ok.. same values for all 2 axis when rotating the quad.

Compared to my KK board it is very very soft.. :S

Does anyone have a idea? maybe some adjustment in the code?

Tnx!

d_tree
Posts: 2
Joined: Sat Dec 24, 2011 10:52 pm

Re: WM+ with ITG3205

Post by d_tree »

Hi guys

I'm building my own multiwii board right now and I'm using a clone WMP+ (from DX, V1.6B) as gyro. I directly soldered the cables to the WMP+ board, as shown in another thread after having problems with oversensitivity. I'm powering the WMP with 3.3V (from a LM1117).

I also removed the pullup resistors on the WMP board (right where I soldered the wires to) because I want to use external Pullups on my diy-board.

After doing that, the gyros worked fine on multiwii 1.8p2 and 1.9 (gui running on XP Computer), no oversensitivity any more (thanks for the tipp ziss_dm).

Then I tried to add a BMA020. I soldered the wires and made the jumpers on BMA020, as recommended. BMA020 is also powered by 3.3V.I did not use the pullups on the BMA020 (left PULLUP unconnected) because I have external pullups (4k7) on my board.

When I connect it parallel to the WMP+, there is no movement in the GUI (acc lines) :( .

Now my question:
Is my "idea" correct or is there already an error (maybe with logic levels)? Why isn't this working properly? I ordered some new BMA020s, maybe this one is damaged so I'm just looking for some confirmation on my idea :D .

Thanks for the help, and great community by the way!!! :)

d_tree
Posts: 2
Joined: Sat Dec 24, 2011 10:52 pm

Re: WM+ with ITG3205

Post by d_tree »

Ok guys, sorry for my previous post. I've just found this one: http://www.multiwii.com/forum/viewtopic.php?f=8&t=986&hilit=llc
which helped a lot.

I updated my schematic and layout. I put the LLC between my "breakout" ITG3205 board (without pullups on the board itself) and the SDA/SCL port.

I now have an LLC for the 3.3V sensors, also pullups, but only on the 5 volt side. (LLC is made of BS170, Pullups with 2k2 resistors).

And I added a second connector pad with 5V and (same) pullups for connecting any 5V sensors (if necessary). Now I have to wait for the BMA020 to arrive and then I can test it out.

I made a small drawing to illustrate what I mean:

What do you guys think? Is that a good hardware configuration for multiwii 1.9 and higher?
Image


(Sorry my ugly sketch :D )

Post Reply