element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet & Tria Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • About Us
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      • Japan
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Vietnam
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Raspberry Pi
  • Products
  • More
Raspberry Pi
Raspberry Pi Forum Incompatible Self-Powered Hub
  • Blog
  • Forum
  • Documents
  • Quiz
  • Events
  • Polls
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Raspberry Pi to participate - click to join for free!
Featured Articles
Announcing Pi
Technical Specifications
Raspberry Pi FAQs
Win a Pi
Raspberry Pi Wishlist
Actions
  • Share
  • More
  • Cancel
Forum Thread Details
  • Replies 31 replies
  • Subscribers 679 subscribers
  • Views 6822 views
  • Users 0 members are here
  • raspberry_pi
Related

Incompatible Self-Powered Hub

morgaine
morgaine over 13 years ago

[This thread was split off from an earlier general one about Powered Hubs and has been given a more appropriate subject line.  Note that replies prefix "Re:" to the old subject line.]

 

 

The Pi's very poor power design results in some perfectly good self-powered hubs being incompatible with it.  For example, the cheap little 7-port self-powered Dynamode USB-H70-1A2.0 hub that Farnell advertises as a Pi accessory:

 

  • http://uk.farnell.com/dynamode/usb-h70-1a2-0/hub-usb-2-0-7-port-with-ac-adaptor/dp/2115058

 

is not actually Pi-compatible at all, because in addition to powering its 7 host ports, it also powers the Pi board through its A-B upstream lead yet is incapable of supplying enough power to do that successfully (the Pi's Vcc drops to well below 4V).  As a result, when the micro-USB is powered down but the hub is powered up and connected, the Pi ends up rebooting continuously every couple of seconds, potentially leading to destroyed HDMI displays among other worries.

 

So, buying a self-powered hub is not necessarily the end to your Pi power problems.

 

Really the Pi's power design needs to be nuked from orbit and redesigned from scratch.  It's just plain bad in numerous ways.

 

Morgaine.

  • Sign in to reply
  • Cancel
Parents
  • recantha
    recantha over 13 years ago

    I'm not sure it's the RPi design that's wrong, more that USB hubs are not always very careful about where their power goes. For instance... I have a Logik LP4HUB10. But, it sends power through the hub-Pi cable (just like Morgaine's problem) and I had to follow instructions http://www.raspberrypi.org/phpBB3/viewtopic.php?f=28&t=8926 here that meant taking apart the hub, snipping a wire and putting it back together again.

    I guess the only thing the Pi could do is to prevent incoming power into the two USB ports... But then again why should it - power going through the wrong wire in a hub is a power drain, surely?

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
Reply
  • recantha
    recantha over 13 years ago

    I'm not sure it's the RPi design that's wrong, more that USB hubs are not always very careful about where their power goes. For instance... I have a Logik LP4HUB10. But, it sends power through the hub-Pi cable (just like Morgaine's problem) and I had to follow instructions http://www.raspberrypi.org/phpBB3/viewtopic.php?f=28&t=8926 here that meant taking apart the hub, snipping a wire and putting it back together again.

    I guess the only thing the Pi could do is to prevent incoming power into the two USB ports... But then again why should it - power going through the wrong wire in a hub is a power drain, surely?

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
Children
  • johnbeetem
    johnbeetem over 13 years ago in reply to recantha

    Michael Horne wrote:

     

    I'm not sure it's the RPi design that's wrong, more that USB hubs are not always very careful about where their power goes. For instance... I have a Logik LP4HUB10. But, it sends power through the hub-Pi cable (just like Morgaine's problem) and I had to follow instructions http://www.raspberrypi.org/phpBB3/viewtopic.php?f=28&t=8926 here that meant taking apart the hub, snipping a wire and putting it back together again.

    I guess the only thing the Pi could do is to prevent incoming power into the two USB ports... But then again why should it - power going through the wrong wire in a hub is a power drain, surely?

    RasPi shouldn't have to do anything.  A well-designed powered hub should not be sending 5V current upstream.  My cheap Inland 4-port hub has a Schottky diode to make sure this doesn't happen.  A better solution is to use a hot swap controller to reduce voltage drop, but that adds cost.  Hubs should not directly connect 5V external power to the upstream line, but obviously some do.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • morgaine
    morgaine over 13 years ago in reply to recantha

    Michael, the Pi's power design is wrong in various areas, but in this thread I'm referring only to the Pi's USB host end by the type A sockets, ie. not to the micro-USB end.  Other problem areas are for other threads.

     

    The Pi's power design is very badly wrong at the USB host end because even if a downstream hub were supplying more than 500mA per port (which the USB spec does not require it to do), and even if a self-powered hub's type B port were supplying that current upstream through the type-B to type-A lead (which it is not required to do), and even if that upstream current were sufficient to power the Pi (which it is certainly not required to do), then even under the combination of all these auspicious circumstances the Pi will still not boot properly when powered through this B-A upstream path because the F1/F2 polyfuses have far too high a resistance to keep the upstream voltage above 4.75V as per the USB spec.

     

    This end of the power design is wrong whichever way you look at it.  The voltage drop across an F1/F2 polyfuse (eg. 4 ohms on my Pi) at the Pi's nominal 700mA is around V=IR = (0.7 * 4) = 2.8V, so even a perfect infinite-current supply at the upper end of the USB voltage spec (5.25V) would provide the SoC with (5.25 - 2.8) = 2.45V through the polyfuse, which cannot possibly work.

     

    There is simply no in-spec way for the Pi to be powered from a downstream self-powered hub via that A-B path, and therefore the Pi design should prevent A-B power from being applied upstream.  And because the Pi power design doesn't block it, the Pi can go into rapid reboot cycles and damage HDMI equipment with perfectly in-spec hubs, as in this case.

     

    Of course there are ways to hack hubs and cables to prevent the worst of this, but that's beside the point.  And applying power from the hub to the micro-USB charger socket is completely outside the topic of this thread.  That doesn't work either with this low-current unit, but it's not my topic here, and I can't criticize this cheap little hub for that --- it's not intended to be a Pi power supply.  It is however intended to be a working self-powered hub for USB devices downstream of the Pi, and in that it fails completely for reasons already described.

     

    Morgaine.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • recantha
    recantha over 13 years ago in reply to johnbeetem

    John, I think what's most shocking is that I got my hub from PC World, of all places. You would've thought a high street chain like that would only sell things of the highest quality... Mind you, this is the company that popularised the Packard Bell make of PCs, so...

     

    Morgaine, I wasn't attempting to hijack the thread, just seeking to contribute to the discussion... I may have made the wrong assumption. I'm assuming that NO device (Pi, PC whatever) is supposed to be powered through a type A socket that is specifically there to provide data inputs?

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • morgaine
    morgaine over 13 years ago in reply to recantha

    That's correct, but because self-powered hubs can usually also work in bus-powered mode and hence draw power from their host, it seems to be common for them to link their powered +5V directly upstream as well.  Unfortunately this is bad for the Pi because it starts her boot cycle, despite successful booting being 100% impossible because of the designed F1/F2 polyfuse values.

     

    Of course it's nothing new that two devices are not compatible, especially when one of them has a pretty oddball power design.  In this situation though, a device that isn't compatible with the Pi's idiosyncracies should not be marketed as an official Pi accessory.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • johnbeetem
    johnbeetem over 13 years ago in reply to morgaine

    Morgaine Dinova wrote:

     

    There is simply no in-spec way for the Pi to be powered from a downstream self-powered hub via that A-B path, and therefore the Pi design should prevent A-B power from being applied upstream.  And because the Pi power design doesn't block it, the Pi can go into rapid reboot cycles and damage HDMI equipment with perfectly in-spec hubs, as in this case.

    Morgaine.

    I stated upstream that a hub should not be sending current upstream.  Just to make sure, I took a quick look at the USB 2.0 Standard and found this:

     

    Section 7.2.1:

     

    No device shall supply (source) current on VBUS at its upstream facing port at any time. From VBUS on its upstream facing port, a device may only draw (sink) current.

     

     

    If a USB hub is sending current upstream, it's not in compliance with the USB 2.0 standard.  IMO, it's not RasPi's responsibility to work around non-compliant hubs, but it may be in RasPi's interest to do so anyway since there seem to be a lot of non-compliant hubs out there.

     

    In general, I find the USB 2.0 Spec to be quite readable.  An exception to this is the software sections, which help me appreciate why it's so difficult to write host controller software well.  The spec is available for free at http://www.usb.org/developers/docs/.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • recantha
    recantha over 13 years ago in reply to johnbeetem

    Is it possible to put something (i.e. simply solder) on the Pi so that it stops the upstream voltage? (Not from a it's-the-Pi's-problem point of view, more of a hobbyists question).

    As for the USB spec... I choose not to read that. Please don't make me image ;-)

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • johnbeetem
    johnbeetem over 13 years ago in reply to recantha

    Michael Horne wrote:

     

    Is it possible to put something (i.e. simply solder) on the Pi so that it stops the upstream voltage? (Not from a it's-the-Pi's-problem point of view, more of a hobbyists question).

    As for the USB spec... I choose not to read that. Please don't make me image ;-)

    According to my read of the schematics, all you need to do is remove F1 or F2, depending on which RasPi USB port you want to connect to the hub.  The LAN9512 can still detect whether +5V is present or not using D11 or D10.  I don't see any other connections to +5V0_USBA/B.

     

    Aw c'mon, the USB spec is mostly quite readable, and has lots of pretty pictures.  But whatever you do, start with Chapter 4.  Chapters 1 - 3 can cure insomnia instantly.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • morgaine
    morgaine over 13 years ago in reply to johnbeetem

    If the USB spec says "No device shall supply (source) current on VBUS at its upstream facing port at any time" then I agree with John that no hub that does this is certifiably USB compliant.

     

    Farnell are then in an even worse situation than I feared.  Not only should this hub be removed from the Farnell Pi accessory page since it is not Pi-compatible, but all alleged "USB" hubs that do likewise should either be removed from stock or no longer be described as "USB" hubs.  It's very common, so this would have a massive impact.

     

    Of course, we know that the latter is not going to happen.  Pragmatically, one has to accept the situation as it is and work with it.

     

    Engineers are typically very pragmatic.  The standard engineering mantra of "Be generous in what you accept but strict in what you send" is a very good mantra to apply in this area, and it should have been applied when the Pi was designed.  It wasn't, and so the Pi design has given Farnell and RS a big headache, rendered many a hub product on the market unusable with Pi, and endangered HDMI gear through the pathological rapid boot cycling.  Not good.

     

    Pi design issues aside, I don't think it's good for Farnell to be listing a Pi non-compatible device as a Pi accessory.  At its exceedingly low price though, it's sure to be worth a simple hack to bring it into compliance.  Of course, official Pi accessories shouldn't need hacking to work.

     

    Morgaine.

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • Cancel
  • Former Member
    Former Member over 13 years ago in reply to morgaine

    The Pi's power design is very badly wrong at the USB host end

    I was curious about how the USB host end worked for a more normal x86 PC, so picked a random Asus board that happened to be lying around. You know what, it seems to use something very similar to the Pi. The polyfuses appear to be  1.6A (0.14ohm so unlikely to be 160mA) and there's a ferrite bead between the fuse and the usb connector. Difficult to tell if there's a diode to allow detecting a fault condition or not.

    Of course the big difference is that the other side of the polyfuse is directly onto the main 5v rail - in this case something that can do 5v @ 25A. So even if we assume a 4 port powered hub has a 5v 2A supply it's rather unlikely to have any chance of powering something that can potentially draw 10x that current. 

    Still, these non-compliant powered hubs can't be doing themselves any favours trying to dump whatever power they have available back into a load like that. The Pi has the disadvantage(!) of being such a low power device that this reverse power can cause the symptoms you describe.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • morgaine
    morgaine over 13 years ago in reply to Former Member

    Aye, the high resistance of the F1/F2 polyfuses causes a variety of problems, and this is just one.

     

    As we've been saying for many months now, F1/F2 should be specc'd to trip at a far higher current than at present because low trip points entail high values of resistance which are a design error when present in a USB power line.  Using them as a 100-140mA USB current limit is a misapplication of the devices and a total disregard for voltage regulation.

     

    Once the Pi is available ex-stock, I bet it'll be common to short out F1 and F2 and power the Pi from such badly behaving hubs through their upstream host A-B lead, thus eliminating one mains adapter from the system.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube