HELP! I fried my board, not sure how.

Hi folks.
I've been fooling around trying to drive a small robot using a wireless wii nunchuck. It took me a while, but scouring these forums i found code by Mike T, MadMax11, XenonJohn and others which with a bit of manipulation i got to work. I'm using Duemilanove with an ardumoto shield and a wiichuck adaptor from todbot.
When i say work, i mean i got to read the i2C from the nunchuck and serial print it. When i went to use the code to drive my robot, i attached my motor shield and plugged in its own power supply (7.4V battery - i'd discovered with previous version using wired chuck that the motors would only work with an independent power supply to the ardumoto) The moment i attached the battery the trace smoked.
I thought there must have been a short from the leg of one of the 1.8K pullup resistors i had between pins 4 and 5 and +5V. I soldered in a jumper across the burnt trace and trimmed the resistor legs so they couldn't touch anything, and tried again. The moment i attached the battery another length of trace, just up from where i had attached the jumper, went up in smoke.
The code i'm using to connect the chuck sends power to pins 2 & 3:

#ifdef POWER_VIA_PORT_C2_C3 // power supply of the Nunchuck via port C2 and C3
PORTC &=~ _BV(PORTC2);
PORTC |= _BV(PORTC3);
DDRC |= _BV(PORTC2) | _BV(PORTC3); // make outputs
delay(100); // wait for things to stabilize
#endif

I'm wondering, is there any chance this could be interfering with the ardumoto shield and causing a short? Is there any known issues which would cause the motor shield to fry? I'm stumped, and i don't want to burn any more boards!
Thanks in advance for your responses,

Jonny Moonshine

Your code is not going to matter. What you have is an excess of current caused by either a short or by the battery being wired up the wrong way round. The problem is that your power source can provide so much current you are melting the traces. If you used a current limited bench supply for the test this would not happen.
The clue is in exactly what trace melted, if you can identify that on the schematic you might be able to see the circuit area where you have problem.

Thanks for the quick reply Grumpy Mike!
The trace that melted comes directly from the positive of the power in. After i soldered in a jumper, the trace directly after the jumper, just before the chip on the ardumoto fried. Thanks for the tip about the bench supply - i had one, unfortunately i cooked it! I think you might begin to see a pattern forming . . .
If i'd wired up the battery the wrong way round, surely the trace from the negative terminal would cook yeah?

No not at all, the trace melts at the weakest point, it could still be the wrong way round. If you have a large power 10R resistor you could try putting that in line with the power supply while you work out what is wrong.
Use your meater and measure voltages to check they are the right way round. When unpowerd use the continuity measurements to try and trace the short, does it only short when the shield is plugged in?

Thanks for the help Mike. I discovered my problem. As you thought, i'd taken out my battery lead to tidy it up and put it back arse about. Another expensive lesson in electronics! :blush: