EmbeddedRelated.com
Forums
The 2026 Embedded Online Conference

USB Suspend Current enforcement

Started by Unknown February 24, 2015
I'm working on a USB device that will need to be powered during "Global Suspend" and will draw around 150mA of current - this maybe reduced to around 95mA. I'm getting confused about suspend current rules. Note that the device does Not require USB Certification, I just want it to work with 99% of the PCs (Desktops and laptops) in the market with USB 2.0 ports.

1. The suspend current limit is 2.5mA, but I also read that battery powered devices can draw upto 100mA in suspend mode. Is this true? If yes, Is the 'battery powered' aspect enforced during device enumeration or is that only used for USB compliance testing? i.e. since I'm not interested in USB certification, can I enumerate my device as an HID Mouse and still draw 100mA during suspend?

2. In your experience, do most hubs/host controllers enforce USB suspend current limit? what seems to be the max safe current draw during suspend...100mA? By safe, I mean current draw that doesn't cause the port to be reset/shutoff.

Am Dienstag, 24. Februar 2015 09:42:59 UTC+1 schrieb goat...@hotmail.com:
> I'm working on a USB device that will need to be powered during "Global Suspend" and will draw around 150mA of current - this maybe reduced to around 95mA. I'm getting confused about suspend current rules. Note that the device does Not require USB Certification, I just want it to work with 99% of the PCs (Desktops and laptops) in the market with USB 2.0 ports. > > 1. The suspend current limit is 2.5mA, but I also read that battery powered devices can draw upto 100mA in suspend mode. Is this true? If yes, Is the 'battery powered' aspect enforced during device enumeration or is that only used for USB compliance testing? i.e. since I'm not interested in USB certification, can I enumerate my device as an HID Mouse and still draw 100mA during suspend? > > 2. In your experience, do most hubs/host controllers enforce USB suspend current limit? what seems to be the max safe current draw during suspend...100mA? By safe, I mean current draw that doesn't cause the port to be reset/shutoff.
You could use a powered hub on systems where you have problems. Andreas
On Tue, 24 Feb 2015 00:42:55 -0800, goata007 wrote:

> I'm working on a USB device that will need to be powered during "Global > Suspend" and will draw around 150mA of current - this maybe reduced to > around 95mA. I'm getting confused about suspend current rules. Note that > the device does Not require USB Certification, I just want it to work > with 99% of the PCs (Desktops and laptops) in the market with USB 2.0 > ports. > > 1. The suspend current limit is 2.5mA, but I also read that battery > powered devices can draw upto 100mA in suspend mode. Is this true? If > yes, Is the 'battery powered' aspect enforced during device enumeration > or is that only used for USB compliance testing? i.e. since I'm not > interested in USB certification, can I enumerate my device as an HID > Mouse and still draw 100mA during suspend? > > 2. In your experience, do most hubs/host controllers enforce USB suspend > current limit? what seems to be the max safe current draw during > suspend...100mA? By safe, I mean current draw that doesn't cause the > port to be reset/shutoff.
Enumerate your device as a battery-powered HID mouse. Problem solved. -- Tim Wescott Wescott Design Services http://www.wescottdesign.com
> You could use a powered hub on systems where you have problems. > > Andreas
Unfortunately, powering device or using powered hub is not an option in this case. The device will be plugged directly into the usb port of the computer and must draw its power from there.
> > Enumerate your device as a battery-powered HID mouse. Problem solved. > > -- > > Tim Wescott
Tim, I saw your posts to a similar problem from a while ago and greatly appreciate your input. Just to be clear you are saying that if I enumerate my device as a battery-powered HID mouse and then the computer goes to Standby(S3) then my device will still be able to draw 100mA the entire time system is in standby mode, whether it's a laptop or desktop? Is this behavior compliant with USB 2.0 spec - which is the most common USB port on majority of the computers out there? In your experience, how much current can I draw over 100mA while in global suspend mode, without running into issues?
 From what I've seen, current draw is never enforced.  The USB 
controller assumes your device is following the spec.  There are 
boatloads of cheap chargers and a myriad of other non-smart devices that 
will suck as much current as they can (for example, USB powered lights).

I think it's all about cost.  It costs more to implement current limit 
enforcement than it does to assume the client will do self enforcement. 
  The USBIF enforces the limit by imposing certificationb for those who 
choose to pay.

JJS

On Tuesday, February 24, 2015 at 12:43:36 PM UTC-8, John Speth wrote:
> From what I've seen, current draw is never enforced. The USB > controller assumes your device is following the spec. There are > boatloads of cheap chargers and a myriad of other non-smart devices that > will suck as much current as they can (for example, USB powered lights). > > I think it's all about cost. It costs more to implement current limit > enforcement than it does to assume the client will do self enforcement. > The USBIF enforces the limit by imposing certificationb for those who > choose to pay. > > JJS
Are you talking about Suspend current? I read somewhere that suspend current isn't strictly monitored but still if I were to go over 100mA, I should expect issues in suspend mode? About the current limit enforcement, isn't the circuitry built into the USB host controllers? My understanding was that if during device enumeration I was to request 100mA max power, but then use let's say 200mA then the device would be disconnected. Is that true? If so, then the current monitoring circuity is already built-in and could be used for suspend current enforcement as well?
On Tue, 24 Feb 2015 10:04:03 -0800, goata007 wrote:


>> Enumerate your device as a battery-powered HID mouse. Problem solved. >> >> -- >> >> Tim Wescott > > Tim, I saw your posts to a similar problem from a while ago and greatly > appreciate your input. Just to be clear you are saying that if I > enumerate my device as a battery-powered HID mouse and then the computer > goes to Standby(S3) then my device will still be able to draw 100mA the > entire time system is in standby mode, whether it's a laptop or desktop? > Is this behavior compliant with USB 2.0 spec - which is the most common > USB port on majority of the computers out there? > > In your experience, how much current can I draw over 100mA while in > global suspend mode, without running into issues?
I was tossing out a possibility -- I haven't designed anything USB by any means other than pasting down an FTDI chip. I _think_ that you can say that you're battery powered, but I don't _know_. I'm pretty sure that the whole USB current consumption thing is a gentleman's agreement anyway -- you can _say_ you're only drawing 2.5mA and then draw 500mA, and the only thing to stop you is burning wires and (more likely) failing power supplies. -- Tim Wescott Wescott Design Services http://www.wescottdesign.com
On Tue, 24 Feb 2015 16:22:39 -0800, goata007 wrote:

> On Tuesday, February 24, 2015 at 12:43:36 PM UTC-8, John Speth wrote: >> From what I've seen, current draw is never enforced. The USB >> controller assumes your device is following the spec. There are >> boatloads of cheap chargers and a myriad of other non-smart devices >> that will suck as much current as they can (for example, USB powered >> lights). >> >> I think it's all about cost. It costs more to implement current limit >> enforcement than it does to assume the client will do self enforcement. >> The USBIF enforces the limit by imposing certificationb for those who >> choose to pay. >> >> JJS > > Are you talking about Suspend current? I read somewhere that suspend > current isn't strictly monitored but still if I were to go over 100mA, I > should expect issues in suspend mode? > > About the current limit enforcement, isn't the circuitry built into the > USB host controllers?
It's not typically built in to the host or hub controller IC. The controller ICs have an output for turning the +5V on and off, and there's a "fault" input to the controller to indicate a current overload, but there's no output from the controller IC to adjust the current limit. For a low cost design (e.g. PC motherboard) the current limit might be implemented with a (self-resetting) PTC fuse. The limit is a function of the fuse and cannot be adjusted. For ones *I* design, the current limit is implemented with one of these: http://www.ti.com/product/tps2560a I set the current limit so that it's comfortably above 500ma for USB2 (or 900mA for USB3). The current limit could be set to that it's exactly those values and still comply with the USB standard, but experience says that might cause problems with certain devices that have an out of spec inrush current (e.g. hard disk startup). Regards, Allan
> I was tossing out a possibility -- I haven't designed anything USB by any > means other than pasting down an FTDI chip. > > I _think_ that you can say that you're battery powered, but I don't > _know_. I'm pretty sure that the whole USB current consumption thing is a > gentleman's agreement anyway -- you can _say_ you're only drawing 2.5mA > and then draw 500mA, and the only thing to stop you is burning wires and > (more likely) failing power supplies. > > -- > > Tim Wescott > Wescott Design Services > http://www.wescottdesign.com
Got it...Thanks!
The 2026 Embedded Online Conference