{"id":1791,"date":"2011-05-23T09:47:55","date_gmt":"2011-05-23T08:47:55","guid":{"rendered":"https:\/\/blogs.mentor.com\/colinwalls\/?p=1791"},"modified":"2011-05-23T09:47:55","modified_gmt":"2011-05-23T08:47:55","slug":"usb-power","status":"publish","type":"post","link":"https:\/\/blogs.stage.sw.siemens.com\/embedded-software\/2011\/05\/23\/usb-power\/","title":{"rendered":"USB power"},"content":{"rendered":"<p><a href=\"http:\/\/www.mentor.com\/embedded-software\/nucleus\/usb\" target=\"_blank\" rel=\"noopener noreferrer\">USB<\/a> seems to be a subject of great interest among embedded developers. I recently delivered a couple of Web seminars on the topic and had a very good sized audience and lots of questions. If you attended, thanks for coming along. If you were not there, but are interested, you can find a recording <a href=\"http:\/\/www.mentor.com\/embedded-software\/multimedia\/advanced-usb\" target=\"_blank\" rel=\"noopener noreferrer\">here<\/a>. Please <a href=\"mailto:colin_walls@mentor.com\">email<\/a> me if you would like a copy of the slides. There was a very wide range of questions, but a few common themes became apparent. USB 3 seems to be sparking a lot of interest and there is certainly a demand for a more detailed, specific session and we will do one in the coming months.<\/p>\n<p>Another topic that seemed to stir interest and queries is power delivery over USB &#8230;<!--more--><\/p>\n<p>As a user of numerous electronic devices, I really like the ability that many have to get their power from the USB connection. When I want to use my scanner, I just plop it on my desk, plug in the USB and I am ready to go. As a user, I am completely insulated from the details of what is happening [as is generally the case with USB]. It just works. However, the embedded developer may need to know a bit more.<\/p>\n<p>With USB 2, a device can be defined as &#8220;low power&#8221; or &#8220;high power&#8221;; this implies a limitation of 100mA and 500mA respectively. Although a host will be able to supply enough current for a high power device, a hub may not necessarily have that capacity. When a USB device is connected to a host, the enumeration process is performed, which provides the host with a selection of information about the device, including its power requirements. If insufficient power is available, the device is informed and the host may inform the user [if the host is a PC, for example]. This raises an interesting question: what if there is insufficient power for the device to operate and participate in the enumeration process? The answer is simple: this should not occur, as it is a requirement [of the USB specification] that a device be able to perform the most basic USB communications using [only] low power.<\/p>\n<p>USB 3 provides increased device power: 150mA and 900mA for low and high power respectively. This is only available to devices that utilize the increased speed capability of USB 3 &#8211; SuperSpeed. Again, an interesting question arises: what are the power implications if you plug a USB 3 device into a USB 2 host\/hub. The answer is that the enumeration process will reveal whether the device needs more power than USB 2 can provide; this error condition can be handled in a controlled way. Interestingly, as I mentioned before, a device must be able to participate in enumeration at low power, but what has only recently become clear to me is that this means &#8220;USB 2 low power&#8221; &#8211; i.e. no more than 100mA, not the USB 3 level of 150mA. Otherwise, backwards compatibility would be compromised and a USB 3 device might fail totally when connected to a USB 2 hub.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>USB seems to be a subject of great interest among embedded developers. I recently delivered a couple of Web seminars&#8230;<\/p>\n","protected":false},"author":71677,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"spanish_translation":"","french_translation":"","german_translation":"","italian_translation":"","polish_translation":"","japanese_translation":"","chinese_translation":"","footnotes":""},"categories":[1],"tags":[300,326],"industry":[],"product":[],"coauthors":[],"class_list":["post-1791","post","type-post","status-publish","format-standard","hentry","category-news","tag-embedded-software","tag-usb"],"_links":{"self":[{"href":"https:\/\/blogs.stage.sw.siemens.com\/embedded-software\/wp-json\/wp\/v2\/posts\/1791","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogs.stage.sw.siemens.com\/embedded-software\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.stage.sw.siemens.com\/embedded-software\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.stage.sw.siemens.com\/embedded-software\/wp-json\/wp\/v2\/users\/71677"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.stage.sw.siemens.com\/embedded-software\/wp-json\/wp\/v2\/comments?post=1791"}],"version-history":[{"count":0,"href":"https:\/\/blogs.stage.sw.siemens.com\/embedded-software\/wp-json\/wp\/v2\/posts\/1791\/revisions"}],"wp:attachment":[{"href":"https:\/\/blogs.stage.sw.siemens.com\/embedded-software\/wp-json\/wp\/v2\/media?parent=1791"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.stage.sw.siemens.com\/embedded-software\/wp-json\/wp\/v2\/categories?post=1791"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.stage.sw.siemens.com\/embedded-software\/wp-json\/wp\/v2\/tags?post=1791"},{"taxonomy":"industry","embeddable":true,"href":"https:\/\/blogs.stage.sw.siemens.com\/embedded-software\/wp-json\/wp\/v2\/industry?post=1791"},{"taxonomy":"product","embeddable":true,"href":"https:\/\/blogs.stage.sw.siemens.com\/embedded-software\/wp-json\/wp\/v2\/product?post=1791"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/blogs.stage.sw.siemens.com\/embedded-software\/wp-json\/wp\/v2\/coauthors?post=1791"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}