Powering and programming the Pro Mini?

Disclaimer (can be skipped):

This seemed like the correct sub-forum for this question, please move it if I’m wrong. It also seems like noob question, and it sure is, but I haven’t found an answer to it. I didn’t look under every rock on the Internet, but I feel like the answer should be easier to find. For instance, none of these pages mention anything about the subject:
http://arduino.cc/en/Main/ArduinoBoardProMini

https://learn.sparkfun.com/tutorials/using-the-arduino-pro-mini-33v
And make no mistake, I am a complete noob, even with electricity, let alone electronics or the Arduino.

Details:

Best to look at the rough circuit I made. It is not complete, but should give an idea of what’s going on. A FT232RL breakout, a Pro Mini and a shift register are involved. An appropriate external power supply can handle all those devices, but there are at least two issues.

  1. If external power is disconnected and the breakout is connected to USB the breakout is powering everything! I’m not sure I’m reading the FT232RL datasheet correctly, but it looks like it can source a maximum of 50mA through its +V pins. Even if I misunderstood the specs the load could require much more current in this kind of circuit. Am I right in assuming this could be a problem and if so is the only solution to disconnect the rest of the project from VCC or even all Pro Mini pins while programming?

  2. Is it an issue if both the USB to breakout and external power supply are connected at the same time? I know grounds should be connected, but I still can’t wrap my brain around what would happen if I basically power my circuit from two different supplies at the same time. They could even be at slightly different voltages! Is simply disconnecting the external power while programming and disconnecting USB while running enough? Assuming, of course, the 1st issue is solved.

That’s it for now, hopefully these are not too annoyingly dumb questions. Any help, tip or link appreciated! Especially about this whole ground connecting business and how it works with different power supplies, even with different voltages apparently!

Firstly the FT232RL isn't providing power to the circuit beyond it is just providing serial. The USB would be providing power.

As long as the two grounds are connected together it is OK to connect via USB and external 5V power, unless you are connecting to the raw pin.

But the breakout has a 3.3V/5V selection jumper. Which, as far as I can tell, affects VCC as well as data lines and uses the FT232RL internal regulator for 3.3V. Which must have some current limit. And the IC pins themselves have it to?

The point is, there is a current limit on the USB side of things and I'm asking what happens when my circuit goes over it.

Can the USB cable be modified in such a way that the programming works, but the whole thing is powered from the external power supply? What if I cut the + wire, so the grounds are still connected? Basically something like this: http://digistump.com/products/42

I just want to avoid (un)plugging stuff all the time while developing. I feel queasy about leaving both power sources connected, especially when there could be some situations where voltages could be significantly different. It would probably be helpful if the Pro Mini kept its unused pins low while programming, but it seems not to be what's going on.

Set the FT to the correct voltage for the Pro mini (5V for 16MHz, 3.3 for 8).

Connect the grounds.

Do not connect VCC from the FT, as you are providing power elsewhere, which must be above 4V ish and below 5.5.

JohnRo: But the breakout has a 3.3V/5V selection jumper. Which, as far as I can tell, affects VCC as well as data lines and uses the FT232RL internal regulator for 3.3V. Which must have some current limit. And the IC pins themselves have it to?

The point is, there is a current limit on the USB side of things and I'm asking what happens when my circuit goes over it.

Yes, changing the jumper to 3.3v sets thes operating voltage of the FT232R chip as well as the vcc output pin to 3.3 volts. Exceeding the current limit of the FT232R on-board ptc fuse (which is powering both the chip and anything connected to its vcc pin) will cause the fuse open, protecting things as designed.

JohnRo: Can the USB cable be modified in such a way that the programming works, but the whole thing is powered from the external power supply? What if I cut the + wire, so the grounds are still connected? Basically something like this: http://digistump.com/products/42

I just want to avoid (un)plugging stuff all the time while developing. I feel queasy about leaving both power sources connected, especially when there could be some situations where voltages could be significantly different. It would probably be helpful if the Pro Mini kept its unused pins low while programming, but it seems not to be what's going on.

As Chilli said, just omit the vcc connection between the FT232R board and your mini. In that configuration, there is no need for the inline USB switch and there no chance that the two supply sources will ever be connected together, something that you are correct in not wanting to allow.

You will most likely discover that you'll want to keep your USB to serial adapter connected at all times. This is due to the IDE having issues re-connecting to the device. This could be just a Windows problem but it makes sense since the handle to the device will change when it is disconnected and then re-connected. The IDE has no knowledge of this change and it tries to use the old, invalid handle. It (the IDE) should be smarter about this since I would think this is a fairly common occurrence. I do not know if other platforms have this problem and so YMMV.

Brilliant! Thank you guys so much! It did not occur to me to just omit the VCC line between the breakout and the Pro Mini. Only the FT232RL gets powered through USB, as it was intended, with the Pro Mini and the rest of the circuit being powered from external supply, which is my responsibility to choose correctly anyway. And the two power supplies don’t “bother” each other!

I think there really ought be a sentence or two about this in the documents I linked to in the 1st post.

BTW, I’ve got a 5V/16Mhz Pro Mini and I’m experimenting with undervolting it. It’s happy running blink with 3.3V and that got me thinking that the USB and external power supply could differ significantly in voltage in some scenarios.

You can run a 328 at 16MHz and 3.3V but it will be running out of specification and may behave erratically.

Also, the fuses would have to be set up to allow it. The fuses could/should be set for brown out detection above 3.3V and should then shut the processor down,