Hi, I'm the creator of the "wiichuck adapter" and the "nunchuck_funcs.h" library referenced by the OP. Everything said above is correct as far as I know. I've used a '595 with a Wii Nuchuck with no problems. The "Wire" library and the underlying I2C stuff doesn't interfere with any digital or analog pins beyond analog pins 4 & 5.
justfred, the fact that the your '595 is "going crazy" makes me wonder if you've got some PWM going on. Are you doing 'analogWrite() anywhere? Alternatively, it could be that the pins going to the '595 aren't being configured as outputs. Also what do you mean by "For this example, I'm not even connecting to the 595 pins from my program." Do you mean you can't get data from the Nunchuck when it's the only thing connected to the Arduino? Have you tried this? Also, have you gotten the '595 to work with it being the only thing connected to the Arduino?
John_Ryan, I'm unclear what you mean by "The 'hack' seems to be on a continuous journey of corrections". The only change made to the wiichuck adapter hardware & software in the two months since my blog post went online was the addition of the function "nuchuck_init_with_power()" to enable analog pins 2 & 3 to be used as power & ground so one doesn't need a breadboard and wiring to play with a Nunchuck with an Arduino. This has been really popular with new Arduino users.
Thanks for getting back to me, todbot! Didn't mean to imply that your stuff was a hack (except in the complimentary sense)! Thought I'd read somewhere (Blinkm docs?) that using 2+3 was sub-optimal but easier.
I'm going to try to figure it out, but...
-Not using analogWrite anywhere.
-595 works great when I'm not loading nunchuck code.
-Only latchPin is configured as output to begin with; the others are set to output when data is sent out. I'm using code almost directly from the ShiftOut page.
-Now I'm trying backtracking and adding the 595 code to the Blinkmchuck code.-Nunchuck works great when using only your code. Except...interesting. When I comment out the Blinkm code, the nunchuck code doesn't work! This could very likely be the problem!
nunchuck_init(); // send the initilization handshake
Hmph. This is with the Blinkm unplugged, and no 595 code or plugs. I'll see what I can run down.
I've got the latest version of yr nunchuck_funcs code.
Well, heck, there it is.
fixed it. I had the new lib but the old code.