Hallo, ich baue gerade eine Schaltung, die eine USB-C 2.0 Buchse (GND, D+, D-, CC) (https://www.mouser.de/datasheet/2/837/USB4085-2888250.pdf) vorgesehen hat, über welche ein VCP bereitgestellt wird um mit dem Mikrocontroller auf der Platine zu kommunizieren. Ein anderer Teil der Schaltung kann u.U. eine Stromaufnahme von > 500mA haben, was für gewöhnlich an einem USB 3.0 Port kein Problem ist, bei einem alten USB 1 oder USB 2 Port jedoch schon. Gibt es eine Möglichkeit vom Device aus zu überprüfen, ob der Port genug Strom zur Verfügung stellen kann? Wenn es sich beim Host um eine USB-C Source handelt, ließe sich das eventuell mit dem richtigen IC oder Mikrocontroller über die CC Pins lösen, denke ich? Gruß
Ja, du erstellst zwei Sätze Device-Deskriptoren. Einen (bevorzugten) mit 900mA, einen mit 500mA (oder was auch immer die Schaltung braucht, wenn der "andere Teil" nicht eingeschaltet wird). Wenn das Gerät dann an einem Port hängt, der 900mA ausgeben kann, wird es schon bei der ersten Enumeration akzeptiert. Wenn nicht, wird die erste Enumeration verweigert und du darfst es mit dem zweiten Satz Device-Deskriptoren nochmal versuchen. Und wenn dein Gerät mit max. 100mA noch etwas sinnvolles anfangen kann, auch noch einen dritten Satz, falls dein Gerät mal an einem Bus-Powered Hub angeschlossen wird. Wenn nicht, kannst du dir den dritten natürlich sparen und bei fehlgeschlagener 500mA-Enumeration einfach ganz abschalten. So war das jedenfalls, als ich das letzte Mal ernsthaft auf dem Niveau USB gemacht habe. Die Geräte von damals sind inzwischen fast volljährig, kann durchaus sein, dass sich der Ablauf mit USB 3 wesentlich geändert hat. Power Delivery ist jedenfalls hinzugekommen. Aber wenn du ein USB-A- zu USB-C-Kabel hast, wird Power Delivery dich ja nicht viel weiterbringen... Das schöne an USB: Die Specs sind komplett offen: https://usb.org/documents Das hässliche an USB: Sie sind reichlich komplex. MfG, Arno
usb schrieb: > Ein anderer Teil der > Schaltung kann u.U. eine Stromaufnahme von > 500mA Wieviel mehr? Die USB 2.0 HDDs hatten gerne mal >1A Anlaufstrom. Ging auch - meistens. War natürlich nie 100%ig konform zur spec. Bei USB-C (und 5V) geben die Pullups den möglichen Strom vor, d.h. man müsste die nur auswerten. Hat den dicken Perdefuß das man dann vom USB Kabel abhängt wenn noch USB-A verwendet wird. Denn da sind die Pullups im Kabel drin, und es gibt AFAIK 500mA, 1,5A und 3A Kabel die USB-A auf USB-C konvertieren. Letztere sind extrem muting in der Verwendung - 3A kann schon mal rauchen.
Was Du machen könntest wäre den Spannungsabfall im Kabel bzw. Netzteil zu messen. Dafür müsstest Du aber die Stromaufnahme in Stufen schrittweise erhöhen können und jeweils die Spannung dabei messen. Wenn die Spannung zu niedrig wird dann war es zu viel Strom. Du solltest das mit Stufen machen, denn wenn Du gleich den Maximalstrom ziehst, kann es gut passieren daß das Netzteil in den Foldback geht und Dein Gerät dann einen Brownout-Reset macht.
Als USB 2.0 gerät sind meines wissens nur 500mA möglich. der host wird dich da nur usb 2.0 angeschlossen ist auch nur als usb 2 gerät erkennen und dir nur die 500mA freigeben, ... Aber, da du usb C hast, ... sollten wenn die gegenstelle auch eine USB C ist, bis zu 5A möglich sein, (je nach kabel und je nach quelle, ... für 5 A sind elektronisch markierte kabel notwendig) aber deutlich mehr als die 500mA. dafür sind die CC leitungen da, ... und ggf auch mehr als die 5V (geht hoch bis 20V). Irgend wie müssen über ein USB C calbe ja die 100Watt ja ausgehandelt werden können.
Hi, es gibt specs. bei usb.org. Alles andere ist nicht garantiert. PS: Ich entwickle USB-Geräte seit 1996.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.