Author Topic: Getting 900mA for USB 2.0 using 3.0 hub  (Read 20576 times)

aclark

  • Member
  • ***
  • Posts: 6
Getting 900mA for USB 2.0 using 3.0 hub
« on: July 07, 2014, 05:30:13 pm »
A common problem with USB is the 500mA current limit in 2.0 for bus power applications.  This is a very common problem with high performance audio devices since high quality data converters tend to require high power. Adding DSPs makes the problem even more difficult.

The USB 900mA limit for 3.0 is very helpful but unfortunately not available when operating in high speed (480Mb/s).

I was thinking that there might be a legitimate trick. What if we use an internal two port USB 3.0 hub such as a TI TUSB8020 and use 1 port as a self powered 2.0 interface. The remaining port could be used as a 3.0 charging port or some kind of USB 3.0 power supply circuit. This would in essence, function as the device's  power supply. This would make the composite a 3.0 device (hub) that would draw no more than 900mA.

Has anyone explored this idea and willing to provide a schematic?

This seems like a great topic to expand in the "5th edition" I have spent a lot of time building efficient low noise power supplies chasing this problem.

Would this arrangement technically meet USB requirements and if not, would it work reliably regardless of the logo certification.

Thx

Al
 

Jan Axelson

  • Administrator
  • Frequent Contributor
  • *****
  • Posts: 3033
    • Lakeview Research
Re: Getting 900mA for USB 2.0 using 3.0 hub
« Reply #1 on: July 07, 2014, 06:15:07 pm »
Here are my thoughts off the top of my head. As I understand it, you are considering a compound device consisting of:

USB 3.0 2-port hub with:
Self-powered USB 2.0 device
USB 3.0 device that functions as a power supply for the USB 2.0 device

The USB 3.0 device can provide 900 mA only after the host enumerates it. What will happen if the host tries to enumerate the USB 2.0 device first?

A USB charging port connects via USB to the device being charged, so I don't see how you could connect a USB 2.0 device to a host and at the same time connect it to a charging port.

Since you will need a USB 3.0 host to get 900 mA, why not develop a USB 3.0 device that can draw 900 mA without requiring a hub and second device?



aclark

  • Member
  • ***
  • Posts: 6
Re: Getting 900mA for USB 2.0 using 3.0 hub
« Reply #2 on: July 08, 2014, 01:20:04 am »
The USB 2.0 device is an audio class 2 implementation based on XMOS. I don't know of an easy way to duplicate this. In our case, we have also added HID support for control functions.
I don't know of any USB 3.0 devices that support USB Audio Class 2. Furthermore, we can get Windows driver support for UAC2 from XMOS without licensing fees since Microsoft has never stepped up to provide native support.

Can we just make the second port a charging port with no need for enumeration? I don't actually need a second USB port at all. Since the 3.0 device is a hub, is it acceptable to use one port as a charging port?
Perhaps there is a way to hold off the USB 2.0 section enumeration (USB switch?) to avoid the race problem you mention.

It is beyond me why the USB 3.0 spec didn't allow a USB port to work to 900mA in high speed mode since the port can clearly supply it. Disk drives are not the only devices that need more current.

If a charging port idea is not workable, is there a very simple USB 3.0 peripheral IC that we could just enumerate to ask for 900mA? It would just be a power supply used to self power the USB 2.0 port. I know this is even a bigger kludge, but I don't see a simple solution.

Thanks

Al

Jan Axelson

  • Administrator
  • Frequent Contributor
  • *****
  • Posts: 3033
    • Lakeview Research
Re: Getting 900mA for USB 2.0 using 3.0 hub
« Reply #3 on: July 08, 2014, 12:00:38 pm »
A device without a battery is basically a "dead battery" device, and the charging spec's dead-battery provision (DBP) says:

PD (portable device) shall not use the DBP current to perform unrelated tasks, such as:
Charging beyond the Weak Battery Threshold
Making a phone call
Playing a song, video or game
Establishing a wireless connection

Only devices that can operate stand-alone from internal battery power are allowed to use the
DBP.

So I think using a charging port is not an option.

The spec defines a dedicated charging port (DCP), which resides on a charging device that provides power but doesn’t enumerate the attached device. But that is not what you have with a hub port.

What if you tried creating a compound device with a hub, and two downstream devices: your device and a USB 3.0 device that functions as a power supply and uses a vendor-defined connection to provide power to your device (generic HID would be one option).

The USB 3.0 device can draw > 150 mA only after it enumerates so your device would need to able to enumerate using < 150 mA in case the power isn't available yet. Maybe you could emulate detach and reattach when power becomes available, but at least one method for doing so is currently patented. Instructing the hub to delay enumerating one of the ports until the other port is enumerated might be feasible in theory but doesn't sound easy to implement, could require a hub filter driver.

Again these are my initial thoughts and I may have missed something.

 


aclark

  • Member
  • ***
  • Posts: 6
Re: Getting 900mA for USB 2.0 using 3.0 hub
« Reply #4 on: July 08, 2014, 03:49:37 pm »
Thanks Jan for sharing your thoughts.

Since my target will not actually be charging a battery, it would violate the CDP spec, however I may be able to live with that.
The TUSB8020 can enable the CDP independently for each downstream port. The only reason to try to use this is so that the hub will not follow USB 2.0 500mA rules. I'm still not sure if enabling downstream CDP will essentially cause the hub to follow 3.0 power rules if no 3.0 device is enumerated.

The basic idea is that most new devices support USB 3.0 and therefore can supply 900mA. Another real issue that most people ignore is that USB 2.0 cables (even the A - B style) usually have significant IR drops as a function of cable length. This is noticeable when you use a maximum length cable. I think that USB 3.0 cables are likely to use a larger gauge wire for the VBUS & GND. 

There is no advantage to supplying external power via an external supply. If you have a portable device such as an IPAD or notebook computer, AC power is not really an option.

I agree that a 3.0 device that did nothing but enumerate and ask for 900mA would solve the problem. Do you know of any very simple 3.0 devices that can do this without being overly complex. There are many small USB 2.0 devices but this won't work because the hub will change to USB 2.0 upstream if none of the downstream devices are 3.0.

My targets do stay within 100mA before enumeration. The USB circuit controls a FET switch to power up the remaining circuits after enumeration.

The 500mA limit has been perhaps my biggest nemesis with USB for years. I think we have all seen the old Y cables that disk drive people used in the past. I would love to solve this problem once and for all. It seems like TI, SMSC or others could implement a solution that would appeal to many others besides me.

Thanks

Al




Barry Twycross

  • Frequent Contributor
  • ****
  • Posts: 263
Re: Getting 900mA for USB 2.0 using 3.0 hub
« Reply #5 on: July 08, 2014, 04:28:22 pm »
If you're not worrying about violating spec, you could do like everyone else does and violate the current spec. You'll still find some hosts that your device doesn't work with, but it'll be less than the hosts which don't support super speed.

I applaud your trying to stay within spec, but complicated schemes like this are rarely worth it, or do much apart from introduce you to all the corner cases in the world. If you don't mind using two ports, put a dedicated chip to supply you with power on the other one, like a power vampire: http://www.codemercs.com/index.php?id=io-warrior&L=1 and use that as the extra power supply.

If you have a hub and expect to draw 900mA from one port, the hub must have a power supply. If the hub doesn't have a power supply, its limited to supplying 150mA (SuperSpeed) or 100mA (other speeds) per port. You might as well have the power supply just plug into your device.

aclark

  • Member
  • ***
  • Posts: 6
Re: Getting 900mA for USB 2.0 using 3.0 hub
« Reply #6 on: July 08, 2014, 05:34:29 pm »
I have thought about using a USB 3.0 B connector and cheating as usual.

This would allow us to use better cables and maybe point people to the USB 3.0 blue ports on their computer.

I might try a few experiments with all the computers, notebooks and tablets that we have around here. It would be interesting to see how much current we can actually pull from the same computer with both USB 3.0 and 2.0 ports. Will there be a difference?

I don't like the idea of using two USB ports from the host since USB ports are often limited on portable devices.

Al


Barry Twycross

  • Frequent Contributor
  • ****
  • Posts: 263
Re: Getting 900mA for USB 2.0 using 3.0 hub
« Reply #7 on: July 08, 2014, 06:05:57 pm »
If yours is a portable device, you may just need to put in a battery and supply a charger.

aclark

  • Member
  • ***
  • Posts: 6
Re: Getting 900mA for USB 2.0 using 3.0 hub
« Reply #8 on: July 08, 2014, 06:27:08 pm »
I mentioned the TI TUSB8020 in an earlier post. This needs to be self powered and therefore useless for this application. The SMSC (Microchip) usb5532b looks like a better candidate.

Al

Jan Axelson

  • Administrator
  • Frequent Contributor
  • *****
  • Posts: 3033
    • Lakeview Research
Re: Getting 900mA for USB 2.0 using 3.0 hub
« Reply #9 on: July 09, 2014, 09:49:03 pm »
Barry is correct; only self-powered USB 3.0 hubs can provide 900 mA to a downstream port.

The capabilities specified in the USB Power Delivery (PD) specification (bus currents as high as 5A) could solve your problem if PD provider ports were available.