 USB, großartiges Medium. Heute die kleine Runde. Wir haben ja noch ein paar Jährchen, hoffentlich können wir noch mehr USB machen. USB für alle. Erstmal, wer bin ich eigentlich? Mal abgesehen davon, dass ich Tochubin habe. Ich habe hier in Karlsruhe studiert und dann das warme Wetter und all das ist nicht so gemocht. Das Essen in Deutschland auch nicht. Jetzt finde ich irgendwo, wo es besser ist mit dem Essen und dem Wetter. Obwohl ich eigentlich sowas hier baue, wunderbare USB-Docking Stations, auch mit wundervoll überklebten Logo, ganz professionell, arbeite ich eigentlich viel mehr an Displayport, aber das ist ein ganz anderes Thema und da will ich eigentlich eher da unten rollen und weinen. Und der kleine Hinweis, ich bin Legas Tänik, also Fan. Vielleicht ist da noch so der einen oder eine Rechtscheidfehler drin. Genau. Warum USB? Warum überhaupt USB? Anfang der 90er-Jahre mit dem aufkommenden PC-Markt und mit dem aufkommenden wundervollen Ding, so ATX, Mainboards, generelle Prozessoren, wurde auch irgendwie so der Anschlussmarkt für Peripheriesachen und sowas ein bisschen unübersichtlich und es kamen immer mehr so ganz tolle Schnittstellen raus und das ist irgendwie ein bisschen ausgeartet und daraufhin haben sich ein paar größere Namen, so wie IBM, Intel, Nordel und Compact, zusammengesetzt und gesagt, so Leute, wir müssen jetzt hier irgendwie mal was bauen, dass alle vereint, den kleinen Sauchern spielen. Das Ganze war dann auch 96 fertig standardisiert und ist veröffentlicht worden. Hat dann in so der ersten Version gute zwei Jahre gehalten, bis es dann mit USB 1.1 ein paar Updates bekommen hat, nichts wirklich Großes und Weltbewegendes, um dann zwei Jahre später groß und massiv ergänzt zu werden, einfach weil die Geschwindigkeit und die Anforderungen ganz andere sind oder ganz anders fortgeschritten sind und dann, wenn wir auch gleich an der Geschwindigkeit sehen, dass das ein kleines Schrittchen war. Dann ist ziemlich lange ziemlich wenig passiert, es ist sowas wie Battery Charging eingeführt worden und Kleinigkeiten und dann ist 2008 USB 3.0 spezifiziert worden, ganz wichtig und spannende an der Stelle ist, dass USB 2 immer noch ein Standard ist, der immer noch gültig ist, dass es nicht ersetzt worden von USB 3, sondern ergänzt worden. Also zu der erste Absatz des USB 3 Standards ist einfach so USB 2 G und Lies ist und kommt dann wieder. Und 2013 haben wir dann nochmal mehr Geschwindigkeit gewollt, mehr ist immer besser und dann USB 3.1 standardisiert und mit USB 3.1 nennt man dann 3.0, 3.1 Gen 1 und 3.1 Gen 2, weil unten haben wir noch die zwei kleinen Marker für Power Delivery und Type C, das ist so langsam und schleichend am einschlurfen, wer von euch hat den Power Delivery Gerät? Genau, Type C schon eher, ich hab sogar eins, auch da ist noch so ein bisschen am Reinschwubeln, da ist auch nicht so viel dabei heute, ist ein bisschen komplexer. Die langweiligen Zahlen, USB als Standard selber 5 Volt und initial ein halbes Ampere, das war dann relativ schnell, nicht mehr genug, deswegen ist das dann mit USB 3.0 nochmal ein bisschen erhöht worden und wie ich vorhin schon gesagt habe zwischen USB 2.0 und 3.0 ist Battery Charging spezifiziert worden, mit dem man dann 5 Volt und 5 Ampere fahren kann, wenn man das unbedingt will. Type C macht auch nochmal ein bisschen mehr und Power Delivery habe ich mal ausgeklammert, weil das ist ganz andere Schwarzmagie. An der Stelle kleine Hinweise, ich mache Software, keine Hardware, entsprechend nagelt mich nicht darauf fest, aber so ganz grundsätzlich und grob, haben wir bei USB immer Twisted Pairs und legen auf beiden Kabelsignal an, auf dem einen Kabel das invertierte Signal des anderen, am Ende invertieren wir eins und summieren auf und wenn wir so irgendwelche Störungen auf dem Kabel haben, können wir das relativ gut rauskompensieren. Das ist der Clue dieser Twisted Pairs. Für USB 1 und 2 haben wir genau eins und Twisted Pairs, sehen wir gleich an den Steckern nochmal kurz und für USB 3 haben wir drei Twisted Pairs, damit wir dann auch tatsächlich Vollduplex miteinander reden können in beide Richtungen gleichzeitig und Type C hat mehr als fünf Paare, also mehr Kabel, aber im Großen und Ganzen fünf Paare über die wir Datenschreiben. Geschwindigkeit. An der Stelle direkt zum Anfang ist eine logarithmische Skala. Ich habe den Fehler gemacht und diese Fully erst mit einer nicht logarithmischen Skala gebastelt. Wenig Informationsgehalt. Wir haben initial Low Speed und Full Speed gehabt. Low Speed ist für so Maus und Tastatur eigentlich ganz praktisch und robust angenehm auch mitzuarbeiten, kann man noch so mitklopfen gefühlt. Full Speed für damals Festplatten, heute nicht mehr Festplatten. Full Speed stirbt langsam aus, ist auch insofern spannend zu sehen, weil du zertifizieren musst, dass dein Device funktioniert. Kommen wir noch zu und dafür brauchst du Full Speed Hardware und die kannst du einfach nicht mehr richtig kaufen. Stehst du durft da. Dann haben wir das wundervolle High Speed. Jeder hat es, sofern man nicht irgendwie Type C am Handy hat, am Handy, so der Stand hat. Super Speed und Super Speed Plus machen komplett andere Magie auf den Kabeln. Das ist sehr weit weg von High Speed und Full Speed und Low Speed. Deswegen werden wir auch heute nicht auf Super Speed und Super Speed Plus eingehen. Ich gehe eigentlich davon aus, dass jeder, die irgendwie gesehen hat, außer vielleicht Mini B und an der Stelle ist auch spannend zu erwähnen. Es gibt auch Micro A und Mini A, aber ich habe praktisch auf Arbeit so ein Berg USB-Kabel und ich wüsste nicht, wo ich im ganzen Office einen Mini A oder einen Micro A Stecker finden würde. Genau, das Ganze ist insofern auch ganz cool, weil wir mit USB 3.0 tatsächlich Stecker haben, die rückwärtskompatibel sind und die 2.0 Stecker tatsächlich in solche Sockets noch einpassen. Der Typ A Stecker, also der große Stecker ist ein bisschen schwierig, immer irgendwie darzustellen, weil der die Pins hintereinander liegen hat. So ist vorne die alten Pins und dann hast du hinten am Ende noch mal neue Pins. So viel zu dem hardware nahen Part. Lassen wir USB 3.0 hinter uns, das ist eine ganz andere, komplett ungearbeitete Protokollierung, wie du redest über USB 3.0 und es wird einfach den Rahmen so ein bisschen sprengen. Deswegen sind wir jetzt zufrieden und glücklich mit High Speed. Und wir machen was USB am liebsten macht, wir bauen uns einen Baum. Und zwar bauen wir uns einen Baum mit der maximale Tiefe von sieben. Ich weiß auch nicht, wer das weiß nicht. Also ich habe nicht so richtig einen Anwendungsfall für meine sieben Hubs ineinander, aber da ist es auch wichtig zu sehen, dass wir immer nur einen Host haben, niemals mehrere und dass eigentlich alles, was du so an Laptops oder sowas hast, immer schon direkt mit einem Hub im Laptop ist. Also hast dann den Laptop Host und dann darunter direkt ein Hub, damit du die ganzen Laptop-Ports bespielen kannst. Und wir können 127 Geräte anschließen und das inkludiert aber auch Hubs, aber nicht den Host. Denn Kommunikation ist immer nur und komplett von vorne bis hinten kontrolliert vom Host. Und der Host spricht auch die einzelnen Geräte an. Das heißt der Host selber braucht keine Adresse, der Host zieht los und sagt, du, ich brauche ein Bild von dir und vielleicht Audio. Und der Host redet immer nur mit Endpoints, da kommen wir gleich zu was ein Endpoint ist, aber es ist wichtig zu verstehen, dass die Kommunikation immer Host Endpoint ist. Nicht irgendwie so Broadcast, ich schieße mal an alle raus. Ich mache mal so, sondern es ist ein klares Zieladressen mit den Endpoints. Außerdem karten wir unsere Kommunikation in einzelne Frames. Das sind in low- und full-speed normale 1 ms Frames und damit man bei High-Speed ein bisschen reaktionär schneller regieren kann, hat man das dann nochmal aufgeteilt in Mikro Frames. Und das ganze schreit natürlich nach paketbasierten Übertragungen. Der Endpoint. Endpoints haben Nummer, wir können Nummern von 1 bis 15 vergeben und Endpoints haben auch immer eine Richtung. Also wir können Endpoints 1 als Input und Endpoints 1 als Output vergeben. Damit können wir noch ein paar mehr. Die weißes Endpoints ansprechen. Endpoint 0 muss immer präsent sein. Jedes Device braucht ein Endpoint 0. Das ist der Control Endpoint, mit dem du auch das Device sich initial identifiziert und du die Initialen Informationen, also den Initialen Kommunikationsaufbau machst, zu dem wir auch noch kommen. Endpoints sind in der Regel irgendwelche Funktionalität. Was das ganz angenehm macht, du kannst damit auch irgendwie dein Device nur an Audio arbeiten und alles was die anderen da so machen, vielleicht ein Pixeln oder so. Das ist weit weg. Genau, jetzt haben wir ein Kabel, ein Endpoint und jetzt wollen wir mit anderen reden und haben da verschiedene Kommunikationstypen. Wir haben den Kontrolltransfer, mit dem wir so was wie Schlafzustände kontrollieren können. Wir können auch die Devicemöglichkeiten wieder diese Innovation durchführen, genau über Kontrolltransfers und vielleicht andere Settings oder Modi einstellen. Wir haben den Bulktransfer, das ist so, weiß ich nicht, ich habe eine externe Festplatte und ich will Daten schreiben und das ist eigentlich jetzt nichts irgendwie zeitkritisches und nichts latentskritisches. Ich will einfach viel Daten rausschaufeln, dann nehme ich Bulktransfers. Iso-Transfere sind so der ganz typische Griff, wenn du irgendwie Audio machst und nicht irgendwie mein externe DA-Wandler, irgendwie mein Soundkarte da habt, dann spiele ich gerne mit Iso, um die minimal Audio Samples rüber zu bekommen, damit nicht irgendwie Pops und Klicks sind. Und der Interrupt ist ganz typisch für Mäuse, Tastaturen, also ein Käse, wo man das zyklisch abfragt. Genau, ein Transfer splittet sich auf in eine ein oder mehrische Transaktion und jede Transaktion beinhaltet immer genau drei Pakete. Wir sehen unsere Pakete aus. Pakete haben eine Pit, das ist mein absoluter Lieblingspart. Pit in dem Fall ist das Packet Identifier, das ist nicht zu verwechseln mit der Product ID, ist auch nirgendwo ausgeschrieben und alles immer aus dem Kontext zu erschließen. Das ist so ein Standard, 700 Seiten und dann Pit. Danke. Wir haben eine Device Adresse, das ist wieder unsere 127 Devices mit dem wir reden können und wir haben eine Endpoint Adresse. Pit ist in dem Fall dann auch Input oder Output Kommunikation, damit dann auch der Input oder Output Endpoint spezifiziert. Wir machen nur über Tokenpakete und über unsere Datenpakete eine CAC Summe. Wenn das Handshake Packet verloren geht, müssen wir E-Neue senden, dann wäre es auch egal, ob das jetzt irgendwie charopt ist oder ob das gar nicht ankommt oder was los ist. Deswegen unten keine CAC Summe und wir können tatsächlich auch Zero-Length Pakete für die Daten schicken, also es muss im Datenpaket keine Daten drin sein, hat tatsächlich einen Vollanlösungsfälle. So, nun haben wir unsere Pakete gebastelt, jetzt wollen wir mit unseren Paketen von unten hoch einzelne Transaktionen bauen, weil es so ein bisschen ausarten würde, wenn ich jetzt durch alle verschiedenen Transfer durchgehe, in dem Fall einen Ride und Hole-Transfer beispielhaft, der Rest ist ziemlich logisch analog weiter zu denken. Und in dem Fall auf die Anmerkung, wir denken nur von Hausseite aus, auch wenn du das Device selber bist und Firma auf dem die Weisschreibst, musst du immer verkehrt umdenken. Genau, Setup Transaction, wir fangen an, bauen uns unser Setup Paket, schicken einen Setup Tokenpacket mit der PID Setup, damit weiß der Endpoint jetzt passiert was. Wir schicken ein Datenpaket, in dem wir den Control Ride, den wir jetzt ausführen wollen, beschreiben, bevor wir dann tatsächlich die veränderten Settings oder die zu senden Daten übertragen. Und das Device muss uns einen Akk schicken, das Device darf uns nichts anderes als ein Akk schicken, weil die initialen Setups und Actions müssen vom Device akzeptiert werden. Das in der Stelle auch ganz wichtig, alles was wir jetzt hier gerade angucken, diese Transfers, sind eigentlich immer hardware basiert. Das ist nichts was du in Software machst, weil du einfach nicht schnell genug bist. Du hast einen Buffer, den schreibst du direkt rein, wenn du das Paket reinbekommst und dann meldest du bei der Software, ich habe ein Paket bekommen, aber zu der Zeit ist es schon viel zu spät für das Akk. Also das ist sehr viel schneller. Deswegen das Akk. Genau, jetzt haben wir unsere Data Transaction, schicken unser Outpaket, schicken unsere Daten, können einen Akk senden, wenn alles gut ist. Wir können einen Akk senden, wenn unser Buffer voll ist oder wir, was weiß ich, gerade eigentlich keinen Bock auf USB-Kommunikation haben. Und wir können stallen und damit dem Haus zeigen, dass wir die geforderten, die geforderte, den Transfer so gar nicht kennen. Also das ist ein Feature, das wir nicht unterstützen. Und am Ende müssen wir nochmal umgekehrt bestätigen, dass die Daten Transaction korrekt war und in dem Fall schicken wir tatsächlich ein Zero-Length Data Packet als Acknowledging. Ich finde es auch schön, dass wir in der Stelle wieder stallen können so. Wir haben die Daten angenommen, ist alles gut, aber jetzt beim Status fällt uns auf, dass wir das nicht unterstützen. Top. Genau, analog geht es dann, wenn du auch richtig Bulk-Tunz-Fairs machst, wobei ich glaube beim Bulk-Tunz-Fair z.B. eben dann kein Status mehr so in dem Sinne krass ausgehandelt wird, weil du einfach los jubelst. Genau, jetzt können wir grundsätzlich kommunizieren. Jetzt ist die Frage, wie komme ich überhaupt als Host dazu zu wissen, was ich von USB-Device freue mich habe. Und dafür gibt es die magischen Diskriptoren, die wir in dem initialen Prozess der Innovation auslesen. Und da gibt es eine ausführliche Liste von Diskriptoren, die du unterstützen musst oder unter bestimmten Umständen eben nicht herausgeben darfst, obwohl du sie hast, also in verschiedenen Geschwindigkeiten darfst du irgendwie neuer spezifizierte Diskriptoren nicht rausgeben, wenn es in älterer Geschwindigkeit ist. Und wir können auch in einem eigenen Adress-Face unsere Firmen-Eigenden oder unsere Hardware-Eigenden Diskriptoren spezifizieren, um dann da so die ganz eigene Magie wirken zu lassen. Und die von den requireden Diskriptoren baut man sich jetzt eine Art Baumstruktur auf, indem man ein Device-Diskriptor spezifiziert. Da gibt es dann verschiedene Klassen, zum Beispiel Billboard oder USB Hub. Da sind noch so ein paar schöne Sachen dabei. Oder eben Anspecified, wenn wir Anspecified sind als Device, geht der Host ein Schritt tiefer und schaut sich an, was habe ich den für Konfigurationen übrig. Was finden wir für Konfigurations-Diskriptoren? Da liest die aus, guckt sich das an. Kann sich das Ganze auch noch mal als Interface angucken. Mit so einem Interface würde ich natürlichermaßen mehrere Endpoints-Capsulen, die schöne Funktionalität haben. Also meine Wege audio in und audio out, können wir als ein Interface verpacken. Und dann können wir so auch verschiedene Konfigurationen mittragen. Das ist meine Soundkarte, unterstützt jetzt 48 kHz und 192 kHz. Und in der Konfiguration 48 kHz geben wir einfach keine Funktionalität zurück, weil das unter unser Audio würde es. So was. Dafür haben wir unser wundervollen Diskriptor. Hatten wir gerade? Wir sind unglaublich schnell. Ich bin schnell. Jetzt haben wir grundsätzliche Kommunikation. Wir haben unsere grundsätzliche Information. Wir haben die Diskriptoren gelesen auf Basis der Diskriptoren. Können wir dann auswählen, welchen Treiber wir auf Hausseite laden und dann richtige Kommunikation initialisieren. Damit haben wir unsere grundsätzliche Funktionalität hergestellt. Jetzt können wir also tatsächlich unser eigenes USB-Device bauen. Jetzt haben wir das gebaut und stellt sich die Frage, was wollen wir denn nun damit machen? Damit wir das tatsächlich kommerziell irgendwie so richtig benutzen können, müssen wir das Ganze als Komplein lizenzieren lassen. Sonst wird es uns so de facto niemand abkaufen, weil das potenziell gefährlich sein könnte für andere Hardware, die wir anschließen oder einfach schlechte User-Erfahrungen schaffen könnte. Dafür haben wir das wundervolle Standard-Cremium der USB Implementers Forum, die da die Wächter und Herrscher sind. Für die Compleins müssen wir jetzt ein paar Kleinigkeiten machen. Wir müssen an Electrical Testing durchlaufen. Das sind wundervolle, ich darf Spannungen nicht überschreiten, ich darf nicht zu schnell ansteigen an den Spannungen und ich darf nicht zu langsam ansteigen an den Spannungen, dessen potenziell teurere Tests, weil du so richtig teure Oszilloskope und Logic Analyse anschleifen darfst, aber an sich jetzt nicht überkrass komplex. Wir haben Cune Measurement, analog schön, auch in einem Stromverbrauch darf ich gebe ich dem anderen genug Strom, wenn ich mir nicht enumeriert bin, da darf ich nur minimale Level an Strom ausgeben. Wir haben Chapter 9 Tests, die im neunten Kapitel für Compliance beschrieben werden, total kreativ, in dem wir eben so die grundsätzliche initiale Kommunikation abtesten und abschlopfen, damit da nichts unerwartetes auftritt. Da die wunderschönen Randnote verweist unten, wir haben sowohl 2,0 als auch 3,1 und bei den Chapter 9 Tests sind tatsächlich die 2,0er einen Subset von den 3,0en, aber du musst trotzdem beide laufen und beide bestehen lassen. Kann ich auch keine erklären, also kannst du zum USBF, zum Workshop hingehen, zum Leuten sagen, wo ist denn der Unterschied? Ja, steht 2,0 und 3,0 drauf. Top. Und wir haben den Golden Tree, der absolute Horror. Das ist ein klar spezifiziertes Geferenzkonstrukt aus Meereserson Host Controller in einem HostPC und diversen Hubs, die ineinander geschachtelt sind, Full Speed Hubs, High Speed Hubs, alles das und dann steckst du dein Device in verschiedene Stellen rein und darfst dann so runterfahren, hochfahren, schlafen, gucken, dass alles funktioniert. Das ist normalerweise so der große Spaß dabei, wenn du Compliance machen willst. Jetzt sind wir unsicher, dass wir das alles bestehen. Damit können wir dann zu einem von zwei jährlichen Compliance-Workshops fahren. Das ist auch nur 4.000 Dollar für eine Membership. Und den Moment, in dem ihr Member werdet im Implement das Forum, kriegt ihr eure eigene PID, ne, WenderID und dann PID könnt ihr dann unter eurer WenderID vergeben und damit tatsächlich eure eigenen Devices identifizieren lassen. Und ich finde das ziemlich cool, alle Dokumente, alles. Das letzte bisschen zum Beschreiben, was musst du machen für Compliance, was musst du wissen für die Standard, wie funktionieren die Tests, liegt einfach auf der Webseite vom Implement das Forum. Das ist nicht irgendwie so, ich finde es total abwartig, diese Standards, wo dann so ein Riesen-Branding ist. Wisst ihr das, kennt ihr das? Also zum Beispiel Displayport macht das. Da hast du so über die jede einzelne Seite in so einem hellgrau so, lizenziert für Tofu. Kannst du nicht richtig lesen? Kannst du nicht mal richtig rauskratzen? Total essend. Ist in dem Fall nicht der Fall. Also kann jeder von euch losziehen und angucken. Und wenn man jetzt keinen Bock hat nach Portland oder nach Taiwan zu fliegen zu den Workshops, dann kann man sein Produkt auch immer noch zu den Testlabs schicken und die testen das dann hoffentlich für einen. Kleiner von Ficht am Rande. Früher waren die Compliance-Workshops auch gerne mal auf Hawaii. Gerüchten zufolge ist es voll irgendwann schwer geworden vor den XX zu argumentieren, warum du zweimal im Jahr nach Hawaii fliegen darfst. Aber nee, nicht mal das. Jetzt der Hundertste ist jetzt dann, ich glaube am 9. Juli fängt der Hundertste Compliance-Workshop an und nicht mal der ist auf Hawaii. Schade ist. Und weil ich es euch nicht komplett vorhanden halten kann, haben wir auch nochmal eine Runde Type C und Power Delivery. Type C ist im Großen und Ganzen zusammengeklebt, zwei 3.0 Verbindungen. Es gibt Type C sowohl als Superspeed als auch als Superspeed Plus und dann nochmal eintwistet per, mit dem du High Speed sprechen kannst. Und der Fakt, dass du zwei Superspeed Connections hast, macht es möglich, dass du über eine der Superspeed Connections ein anderes Protokoll sprichst. Der bekanntere Fall in dem Fall ist dann Type C im Alt Mode, über dem du dann über zwei dieser Kabel anfängst Displayport zu sprechen. Und dann in der Theorie tatsächlich einfach keine Docking-Station mehr brauchst, mich arbeitslos machst. Und den Wildschirm direkt anschließen kannst, dann dein Handy-Laptop. Genau. Und für die Leute, die noch nicht gesehen haben, dieser wundervolle Connector ist tatsächlich in beide Richtungen reinsteckbar. Und Power Delivery ist für das Laptop-Laden über USB, glaube ich, im Großen und Ganzen die Idee aufgekommen. Und man kann bis 100 Watt mitspielen. Das führt dazu, dass du hochgehst zu 20 Volt, also du handelst die Capabilities aus und fängst dann erst an spannungsreich und höchst dann die einzelnen Stromfluss-Limits. Und wenn du bei fünf Ampere angekommen bist, dann schraubst du eine Spannungsstufe hoch und fängst wieder an. Und das ist insofern cool, weil du nicht mehr nur den Capabilities die Exchange machst zwischen Host und Device, sondern tatsächlich mit dem Kabel. Und ich finde es an sich eine coole Sache so. Ich bin jetzt hier und ich habe ein Device vor mir und mein Device redet mit meinem Kabel. Ja, vielleicht, also das unendliche Möglichkeiten, ich sage euch das, ganz Großartiges kommt da auf uns zu. Und Power Delivery hat auch so coole Feature, dass du nicht mehr, also das hält sich nicht strikt an dieses Host-Device-Konstrukt. Das heißt, du kannst auch mit dem Device den Host laden in dem Fall, was bis Power Delivery eigentlich nicht geht, was immer den Host der Strom verteilt an seine Downstream-Devices oder der Hub der Strom verteilt an seine Downstream-Devices. So, ich bin unglaublich schnell gewesen. Wir haben den wundervollen Bus, der Kleine, und ihm bei Gemobst und der Rest sind Wikimedia-Bilder. Und jetzt hoffe ich, dass ihr nicht so viele Fragen habt. Aber wir haben eine halbe Stunde Zeit für Fragen. Es tut mir schrecklich leid. Ja, also wahnsinnig schnell. Zum einen kannst du ja dein Device tatsächlich dann auch nur noch, oh mein Fehler, sorry, wie ist es möglich, dass ich dann auch so kleinen Kreteldingern schnell genug reagieren kann, wenn ich doch so schnell reagieren muss, um diese initialen AX und NUX zu senden. Du kannst als Deskriptoren dein Device einfach nur als Low-Speed-Device ausbrechen lassen und damit hast du dann natürlich gefühlt Zeiten, ganz andere Zeiten, wenn du dir die Geschwindigkeiten anguckst zu einem High-Speed, die Reaktionszeit musst irgendwie so was wie 25, 30 vor schneller reagieren. Oder mehr sogar. Und das ist ja auch keinen, macht das Sinn? Mehr Fragen? Die Frage ist, warum die Entscheidung getroffen wurde, dass so einseitig alles vom Host initialisiert wird. Das macht das einfacher. Das macht vor allem auch das Device einfacher. Mein Device muss viel weniger Logik implementieren und mein Device kann damit billiger sein. Mein Host ist potenziell das teure Gerät, so ein Laptop ist jetzt nicht billig, aber so die Hardware in der externen Festplatte, mal abgesehen von der Festplatte, ist jetzt wirklich nicht so teuer. Macht das sinnvoll? Oder wieso? Ja, dann schieß los mithin. Das ist aber dann die Aufgabe vom Host, sorry, wenn ich jetzt eine Maus habe, dann will ich ja als Maus die Updates hochschicken. Warum darf ich dann als Maus nicht so was? Ich nenne man Interrupt Raising. Weil das genauso gut funktioniert, wenn du einen stark genupen Host PC hast, der dann einfach zyklisch dran denkt, damals zu pollen. Und damit muss die Maus selber einfach nur noch irgendwie so ein Waffe aufbauen, in den sie ihre Werte reinschreibt und die werden halt dann von der Hardware abgearbeitet und hochgeschickt. Das macht die Maus auch wieder billiger und einfacher zu bauen. Mehr Fragen? Ja. Ja, ich wollte es ja nicht so machen, aber wie ist es denn jetzt, wenn ich dann die mehrere Geräte zusammen schließe, die alle Tickets schlagen, dann schließe ich mein Laptop, der hat den Nacken, kann gleich noch hinladen. Ich leg mein Letztal dran und dann hab ich vielleicht noch ein zweites Laptop, der auch einen Nacken hat. Nein, also das ist schon eher eine Software. Sorry. Power Delivery, wenn ich jetzt irgendwie da auch wieder Bäumchen aufbaue mit Power Delivery Devices, wie kommunizieren die das untereinander und ist das eine Hardware Kommunikation, habe ich das richtig aufgenommen? Also ich glaube, sofern, so weit wie ich das Power Delivery Devices sind noch nicht so richtig verbreitet, außerdem ist Power Delivery auch gerade, glaube ich, noch im Revisionsprozess wieder. Also ich glaube, Sie sind jetzt gerade dran, Power Delivery 1.3 oder 1.2 fertig zu spezifizieren. Das ist noch so wirklich so ein Ding, das nimmt langsam Fahrt auf irgendwie und wenn du dir auf der USB-Wertseite anguckst, was so das Ding ist, was gerade groß bei den Workshops, du siehst einen Zeitplan auf der Webseite, also ihr könnt euch von den Implementer-Forums dann auch tatsächlich die Zeitpläne angucken. Ihr könnt nicht sehen wer kommt und ihr könnt nicht sehen, was Leute mitbringen. Dafür darfst du dann logischer Maßen auch nicht erzählen. Aber du kannst zumindest sehen, was grob getestet wird und das ist einfach wahnsinnig jetzt viel voll mit PD. Das ist einfach noch nicht fertig ausgereift, sag ich mal. Und der weiter oben liegende Handshake, den kannst du dann schon wieder ins Software machen. Das ist tatsächlich wirklich, das ist weiter oben und langsam genug. Da hast du dann auch nicht so krasse Constraints. Und die Baumstrukturen so, das darf dann durchaus auch ausführlich ausgehandelt werden, habe ich mich tatsächlich noch nicht tief genug reingeworstelt, um das in den letzten Details zu kennen. Flo. Gibt es irgendwie, es ist erkennbar, dass man auch wieder bei Power Delivery diese doch 100 Watt nach oben setzt, weil also mein Laptop daheim verlangt 1,570 Watt als Zeit. Und ich hätte schon eine Möglichkeit zu verlässigen, auch die der Workstations dann überrascht haben. Die Frage war, können wir Power Delivery noch erweitern, um auch Schlachtschiffe mit Strom zu versorgen. Schlag mich tot, wenn ich mich ganz dunkel erinnere, meine ich da irgendwie sowas aufgeschneppt zu haben. Aber auch da Power Delivery ist immer noch schwerst Unterentwicklung. Und 100 Watt sind glaube ich mal ein guter Startwert, wenn du 100 Watt über dein USB-Kabel prügelst so und das nur nicht anfängt zu glühen, hast du schon mal gut was geleistet. Und dann können wir danach, du kannst ja im Zweifelsfall, ja ist nicht so angenehm, könntest 2 Kabel bauen. Bestimmt kannst du als so Hersteller so ganz toll so verzwirbeln, dann so 2 Kabel mit 2 Steckern machen. Ich meine, wenn du so ein 150 Watt Laptop hast, hast du ja eh schon so ein Power Clots, oder? Dein Netzteil ist doch ein Mordgerät. Noch mehr Fragen? Ja, noch mal. Oh je. Ich wusste, dass du mein Nämesis bist. USB und AGO, wie verhält ich das, wie ist das Ganze dazu gekommen? USB und AGO ist, lasst mich mal gerade hier schnell hopsen. USB und AGO ist auch in dieser riesigen Lücke zwischen 2.0 und 3.0 entstanden und im Wesentlichen auf 2.0 oder auf 2.0 drauf spezifiziert worden. Mit USB und AGO ist dann, ich glaube, es ist ziemlich zeitgleich mit Battery Charging ausgekommen. Und für den Rest, wenn ich das jetzt stark möchte, das ist die Idee, dass du, glaube ich, oh Gott, nee, ich werde euch keinen Unsinn erzählen wollen. Es tut mir schrecklich, da hat du mich ganz bösen kalt erwischt. Richtig. Ist das auf Wasser bezogen oder nicht? Okay, die Wiederholung. USB und AGO ist die Möglichkeit, dass wir die Rollen tauschen können und damit zum Beispiel ein Handy selber wieder ein Host werden könnte, wenn es eigentlich ein Device war. Und das funktioniert über den fünften Pin in den Steckern. Wie wir sehen, Mini und Micro haben tatsächlich ein Pin mehr und je nachdem, wo wir den hinziehen, wollen wir Host sein oder nicht. Ich glaube, dass du vielleicht auch dann worden kannst, dass bei Mini das Ausschnitt brauchst, oder die meisten, die würde so kann, dass es nicht so gehen kann. Das war gut für dich gedacht, dass du von einer Kamera die Bilder auf den Drucker ausgeben kannst und dann Wahlweise an der Kamera oder im Drucker, dass die die ganze Zeit den Späten muss, das eine ausdrücken. Mache ich auch immer. Mein Drucker ist total gut im Raw Dateien verarbeiten. Aber auch das tut mir schrecklich leid. On The Goes ist auch krass, kein Benusserfall für uns. Genial! Genial, kannst du mit deinem Taschen nach hinten den Drucker bedienen? Das ist die Zukunft. Okay, noch mehr. Großartig. Nicht sprachlos, aber ohne Fragen. Genau. Dann danke ich in dem Fall und halb vor. Ja, schieß los. Ich habe meine Maus verloren. Das ist schlechter als unseres. Type C Alt Mode. Da muss ich jetzt ein bisschen vorsichtig werden, was ich erzählen darf. Type C Alt Mode hat tatsächlich Limitierungen, was du kannst. Displayport, deiner Vorgriff hat verschiedene Geschwindigkeiten und verschiedene Anzahlen an Lanes, also wie viel Kabel du verfügbar hast. Und das ist dann ein Handshake über die Capabilities, die du hast zwischen deinem Source und deiner Sync. Und Type C Alt Mode kann, das hilft euch alles nix, Type C Alt Mode kann im Maximum glaube ich 4K, aber nur bei 30 Hertz sprechen. Und du kannst dann so schreckliche Dinge tun, wie dieses Displayport Daisy Chaining. Wer von euch hat das jemals gemacht? Tatsache, zwei Leute, drei Leute, mein Beileid. Und dann kannst du tatsächlich darüber auch mehrere Monitore ansprechen. Das ist aber mit Vorsicht zu genießen. Also Type C Alt Mode muss halt nicht nur dann in dem Fall dein Host, also dein Host muss sehr viel mehr unterstützen können. Ein Host muss ja dann tatsächlich de facto ein Displayport Chipsatz an dem USB Chipsatz dran gebacken bekommen. Und du musst dann nicht nur ein USB Compliance durchlaufen, sondern auch ein Displayport Compliance. Und das Wundervolle ist, dass dieses Daisy Chaining nicht Compliance Requirement für das Displayport ist. Die wissen genau warum. Und außen ist es null Backwards kompatibel. Also Type C Alt Mode kannst du halt so als Unternehmen hergehen und Docking Stations Alt Mode kaufen theoretisch. Und dann alle deinen Laptops wegschmeißen und einkaufen. Voll was gewonnen. Wann war das die Frage? Ich bin voll der Fan von Alt Mode. Okay, sonst noch was. Wunderbar. Trumptzeit. Ich danke euch fürs Zuhören. Hoffentlich zum nächsten Jahr.