1
\$\begingroup\$

I'm currently making a little electronic board on my own. On it, a microcontroller: an ATmega328p running with 5V. To communicate with a computer, I've planned to use an XBee, but for now I'm using simply an adapter TTL <-> USB based on an FTDI FT232RL chip (here).

The problem is, no matter if the power is plugged to my board or not, as soon as I plug this serial adapter to it, a little LED used to display whether my own board is alimented or not lights. After verification, the TX pin of the adapter is guilty: from it flow almost 11 mA.

The problem doesn't seem to come from my home-made electric board, since with an arduino, the same issue occurs. Moreover, the programmer (an USBasp clone) heats a bit, and I have the feeling my serial adapter is responsible...

How can I fix this ? Is this normal ? Couldn't it damage my microcontroller ?

\$\endgroup\$
  • \$\begingroup\$ Just for clarification, are you trying to run the circuit at 3.3v or 5v? I assume the LED that's lit on the programmer is the "TX" LED? If you can provided a photo of your connections it would be much easier to diagnose. \$\endgroup\$ – neufuture May 8 '15 at 18:20
  • \$\begingroup\$ @neufuture I've edited my post: 5V, and the led is on my board, sorry for being unclear! Is the photo necessary ? Because with an arduino uno R3, with the same microcontroller, the same problem appears! \$\endgroup\$ – Spirine May 8 '15 at 18:32
5
\$\begingroup\$

The USB<->TTL_serial adapter is being powered from USB.
One of its main jobs is to drive the TX signal line to whatever state is appropriate for whatever communication is taking place.
If there's no comms happening, the default state for a TTL UART TX line is high (so 3.3V or 5V or whatever the device's supply is).
As a result, you're feeding this 'high' into your other circuit (ATmega, adruino, whatever).
So now what does this other circuit do with this 'high'?
Well most microcontrollery things (and many others too) will have some sort of diode arrangement between their I/O pins and their supply lines - either deliberately as ESD protection, or simply as an unavoidable result of the manufacturing process - something like this:

schematic

simulate this circuit – Schematic created using CircuitLab

So as you can see, if your USB<->TTL_Serial adapter is trying to do its job and apply a 'high' to the micro's I/O pin, due to the micro's internal diodes it will end up trying to supply power to the whole circuit. Some adapters may be more or less tolerant of this state of affairs than others...

\$\endgroup\$
  • \$\begingroup\$ How could I avoid this consumption ? \$\endgroup\$ – Spirine May 8 '15 at 19:07
  • 2
    \$\begingroup\$ A series resistor, say 1k or 4.7k would do that. Or use an opto-isolated adapter. Otherwise use the xbee you wanted to ise \$\endgroup\$ – Passerby May 8 '15 at 19:18

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.