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 6823 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
  • 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
  • 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
Reply
  • 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
Children
  • 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
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