I did a search for anything like this, but I wasn't sure how to describe it concisely. I've got an Arduino Duemilanove that I'm trying to interface with serially (USB->RS232->TTL, which is the output). The circuit works great, and I'm able to communicate fine with my Arduino...
...sort of. I've got the TTL serial connection wired onto digital pins 0 and 1 (TX and RX), and that connection ONLY works fine when I'm talking with it when USB is plugged in (but not communicating over the USB COM port, just having it plugged in for power). I've got putty opened up and running on the COM port that my USB->RS232 adapter is talking through (i.e. COM8), and I do all the communication via that port fine, but as soon as I try to go off of battery power or an external supply, I can't talk at all with the Arduino.
I've narrowed down what happens with it, too. As soon as I switch over to a different power supply than the USB, any communication directed toward that COM8 is looped right back around as if the digital pins 0 and 1 are jumpered together. Doing a little bit of multimeter-ing and random programming, I'm fairly certain that this is what's happening deep within one of the chips.
So, my question is, what's going on here? Are the digital pins 0 and 1 only available when there's a USB connection made, and they're bridged otherwise? Could it be a function of the power sources I'm using (the USB source is the lowest by a few volts... I tested with a 9 volt battery and 12 volt supply)?
Edit: I meant to put this in the hardware section, could a mod move this or is it acceptable to cross-post?
Well that's not how it is suppose to work. The USB serial (via FTDI chip) capability should be available for use under program control regardless of the power source.
Tell me about it. I might try pushing 5v through the VIN pin instead of the 9v/12v I've already tried to see if that makes a difference. Maybe I'll also try setting the 0 and 1 pins as inputs or outputs and seeing if I can control them/read them while it's on battery power. Any advice or ideas would be great though. It's the strangest thing...
Edit: Did some more testing and it looks like I was wrong about other DC voltages not working--now it's just the battery that causes this weird problem.
now it's just the battery that causes this weird problem
Problem seen with both the 9v battery and the 12v battery? If just the 9v you might try and measure the actual Vin voltage while attempting to power the board with the 9v batter. The auto voltage selector needs to see at least 7.5vdc or so at the Vin pin before it works correctly and many 9v batteries under load if not fresh can be below that amount. At least that is all I can think of at the time. A standard 9vdc battery is not a great way to power the board, especial if you are powering any external I/O components, just not very much current capacity in a 9v battery.
It turns out that I never actually connected the digital ground to the MAX232 circuit, unfortunately... major oops. So I had a lot of incoherent stuff going on, the least of which was that batteries wouldn't work. I didn't find this all out til a little bit ago, but it turned out wall power ALSO wouldn't really work: the Arduino was accepting bum packets and saying that they were real.
But I've got it all wired up and working great now. I appreciate the help, though it ended up being sort of a lame problem... haha.