Die wahre Funktion des USB-zu-PS/2-Adapters bei Microsoft-Mäusen
(devblogs.microsoft.com)- In der frühen USB-Zeit lag Microsoft-Mäusen oft ein kleiner grüner Adapter bei, mit dem sich USB Type-A wie ein PS/2-Stecker einstecken ließ
- USB und PS/2 sind völlig unterschiedliche Protokolle, daher wandelte dieser Adapter allein keine Signale um
- Im Inneren des Adapters befand sich keine Schaltung; er war eher ein passiver physischer Adapter, der lediglich Pins auf der einen Seite mit Pins auf der anderen Seite verband
- Die eigentliche Umschaltung erfolgte dadurch, dass die Maus an den Pins USB-artige Signale oder PS/2-artige Signale erkannte und ihren Betriebsmodus selbst änderte
- Einen in der Schublade gefundenen Adapter als universellen Konverter zu verwenden, ist schwierig; ob er funktioniert, hängt von der Dual-Bus-Maus am anderen Ende ab
Was der USB-zu-PS/2-Adapter tat
- In der frühen USB-Zeit wurden Microsoft-Mäuse häufig mit einem USB-Stecker am Kabelende ausgeliefert, zusammen mit einem kleinen grünen Adapter, der ihn in die Form eines PS/2-Steckers brachte
- Dieser Adapter übersetzte nicht zwischen den Protokollen USB und PS/2
- Die beiden Verfahren sind separate Protokolle, die in keiner Weise direkt kompatibel sind
Die Umwandlung erledigte nicht der Adapter, sondern die Maus
- Der Adapter war ein rein mechanisches und passives Gerät
- Er verband einen Satz Pins mit einem anderen Satz Pins
- Im Inneren befand sich keine Schaltung
- Er hatte keine Funktion zur Signalinterpretation oder Protokollumwandlung
- Die eigentliche Entscheidung fand im Inneren der Maus statt
- Die Maus erkannte, ob sie an den Pins USB-ähnliche oder PS/2-ähnliche Signale erhielt
- Je nach Erkennung änderte die Maus ihren eigenen Betriebsmodus
- Daher hing die Umwandlungsfunktion nicht vom Adapter ab, sondern von der Implementierung in der Maus
Ähnlicher Aufbau wie bei einem Netzstecker-Adapter
- Dieses Prinzip ähnelt einem günstigen Steckdosenadapter, der die Form von Netzsteckern für verschiedene Länder anpasst
- Auch ein Steckdosenadapter besitzt keine Intelligenz; er verbindet lediglich einen Stecker physisch mit einer anderen Steckerform
- Die eigentliche Kompatibilität übernimmt das Gerät selbst oder dessen Netzteil
Warum er leicht als universeller Maus-Konverter missverstanden wird
- Selbst wenn man einen solchen USB-zu-PS/2-Adapter in der Schublade findet, ist er nicht als universeller Mausadapter zu betrachten
- Da das Teil nur die physische Verbindung ändert, kann es nur funktionieren, wenn die angeschlossene Maus beide Verfahren unterstützt
- Die eigentliche Umwandlung findet in der Dual-Bus-Maus am anderen Ende statt
Worauf man bei heute verkauften ähnlichen Adaptern achten sollte
- Internetsuchen zeigen, dass es auch heute noch Hersteller solcher Mausadapter gibt
- Ob ein kaufbares Produkt ein smarter Adapter ist, der die Signalprotokolle von PS/2 und USB übersetzt, oder ein rein mechanischer Adapter, der davon ausgeht, dass die Maus die Umwandlung übernimmt, ist nicht sicher
1 Kommentare
Meinungen auf Hacker News
Wow, das weckt wirklich Erinnerungen. Irgendwann um 2000 oder 2001 bekam ich eine optische Maus geschenkt; ich hatte mir schon lange eine gewünscht, weil StarCraft mit einer mechanischen Maus ziemlich schmerzhaft war.
Natürlich war es eine USB-Maus, und mein Computer hatte nur PS/2. Ich kaufte einen Adapter, aber selbst nach langen Tests mit mehreren PCs und Mäusen funktionierte er überhaupt nicht.
Schließlich brachte ich ihn zu einer Elektronikwerkstatt; dort öffneten sie ihn und erklärten mir, dass es ein Fake-Adapter sei, bei dem nur die Leitungen verbunden waren, ohne echte Schaltung für USB-Unterstützung. Erst jetzt verstehe ich, warum so etwas existierte; eine Zeit lang dachte ich einfach, ich hätte einen gefälschten Adapter gekauft.
Vielleicht sollte es so aussehen, als wäre innen etwas drin und damit „echter“ wirken; aber dann wäre selbst ein 1-Cent-IC überzeugender gewesen, daher verstehe ich es immer noch nicht so recht.
Ich hatte früher einmal ein ziemlich unangenehmes Gespräch mit einem Verkäufer bei PC World.
Ich hatte von der Firma einen ausgemusterten alten Server bekommen und wollte zu Hause damit lernen; das Problem war, dass er kein USB hatte.
Als ich sagte, ich suche eine PS/2-Tastatur, meinte der Mitarbeiter, so etwas verkauften sie nicht, ich solle einfach irgendeine USB-Tastatur nehmen. Ich erklärte, dass ich eine PS/2-Tastatur brauche, weil es keinen USB-Port gibt.
Nachdem der Mitarbeiter ein paar Mal zum Manager und zurück gelaufen war, sagte er am Ende wieder, ich solle USB verwenden. Es stellte sich heraus, dass er dachte, ich wolle eine PlayStation-2-Tastatur kaufen, und noch nie von PS/2 gehört hatte.
Irgendwo habe ich wahrscheinlich noch eine alte Maus, der ein PS/2-USB-Adapter beilag. Ob das eine PS/2-Maus mit PS/2-USB-Adapter war oder eine USB-Maus mit USB-PS/2-Adapter, werde ich wohl erst wissen, wenn ich sie herauskrame.
Mehr Details und interessanten historischen Hintergrund gibt es hier: https://superuser.com/questions/704920/how-to-determine-if-u...
Um 2014 unterstützte die große Mehrheit der Mäuse und Tastaturen Dual Protocol, aber etwa ab 2019 tauchten offenbar die ersten Berichte auf, dass Geräte nur noch USB können.
Viele der günstigsten Maus-SoCs werden vermutlich noch immer genauso produziert wie beim ursprünglichen Design, das gut funktionierte, und könnten daher weiterhin Dual Protocol sein.
Eine Erklärung der Pinbelegung und der Protokollerkennung gibt es hier: https://retrocomputing.stackexchange.com/questions/28288/how...
Ich habe einen Roland S760 Sampler aus den frühen 90ern. Eine der Innovationen, die Roland in diesem günstigeren Segment brachte, war, dass man Monitor und Maus anschließen konnte; damit ließen sich Samples schneiden und Patches programmieren, statt auf den kleinen Bildschirm eines Akai S1000 oder das noch kleinere zweizeilige Display des S760 starren zu müssen.
Der Mausanschluss ist MSX, was heutzutage sehr schwer zu bekommen ist; meinem Gerät lag daher ein DIY-MSXC->PS/2-Stecker bei. Die mitgelieferte PS/2-Maus war fast am Ende ihrer Lebensdauer, also wollte ich sie durch etwas Moderneres ersetzen, aber damals fand ich nur eine MS-Maus mit USB-PS/2-Adapter. Eingesteckt funktionierte sie gerade so, und ich verstand überhaupt nicht, warum.
Als ich schließlich eine neue alte Lagerware einer PS/2-Maus fand, lief wieder alles perfekt. Bis ich diesen Artikel sah, wusste ich nicht, warum es vorher nicht ging.
Der S760 ist ein großartiger Sampler. Er hat nicht die Komplexität einer vollständigen Synthesizer-Engine, fühlt sich aber wie eine Sampler-Version des JD990 an; berühmt wurde er, weil der digitale Multimode-Filter des S760 zum charakteristischen Sound von Daft Punk und mehreren anderen Musikern wurde.
Um moderne USB-Geräte an Retro-Computern zu verwenden, braucht man einen aktiven Konverter. Vor ein paar Jahren habe ich einen für mehrere Computer gebaut.
https://github.com/dekuNukem/USB4VC
Ein neueres Projekt ist HIDman, allerdings nur für PCs.
https://github.com/rasteri/HIDman
Die Logitech G305-Maus läuft mit 1000 Hz; daher habe ich in ps2x2pico die Maus-Polling-Rate auf 100 Hz erzwungen, damit der Cursor unter Windows 98 auch ohne Programme wie PS2Rate sehr flüssig ist. Auch N-Key-Rollover der Keychron-S1-Tastatur funktioniert perfekt.
https://github.com/No0ne/ps2x2pico
Allein anhand des Titels und der URL
microsoft.comwar ich mir zu 99 % sicher, dass es ein Beitrag von Raymond Chen aus The Old New Thing sein würde.devblogs.microsoft.comzu sein. @dang oder jemand aus dem Team hat die HN-Software schon ein paar Mal so angepasst, dass auf der Startseite mehr URL-Details angezeigt werden.In diesem Fall wäre das auch schön.
fortune.comist ein gutes Beispiel: Deren Blog ist ziemlich schlecht, deshalb wird auf der ersten Seite inzwischen nicht mehr einfachfortune.com, sondern eher etwas wie „fortune.com/blogs“ angezeigt.Ich habe noch die Tastatur von meinem ersten 386/33-Computer. Über eine Adapterkette DIN5 -> PS/2 -> USB-A -> USB-C kann ich sie an meinen aktuellen Mac anschließen.
Ich freue mich schon darauf, diese Adapterkette in Zukunft noch weiter zu verlängern.
sermouse.sys, wenn man eine serielle Maus über einen seriellen USB-Adapter anschließt.Funktioniert auch auf arm64.
Nach etwa 35 Jahren funktioniert sie immer noch hervorragend, und ich benutze sie täglich. Ich hoffe, dass ich der Kette in Zukunft keinen weiteren Adapter hinzufügen muss, aber wer weiß.
Tastaturen aus den späten 90ern und frühen 2000ern machten oft etwas Ähnliches. Der Controller unterstützte sowohl PS/2 als auch USB, und die Tastatur wurde mit PS/2-Stecker plus passivem Adapter ausgeliefert.
Wenn man also eine PS/2-Tastatur, die vor der USB-Einführung entworfen wurde – etwa ein Model M –, an einem modernen Computer verwenden will, muss man einen aktiven PS/2-USB-Adapter wählen, der das Protokoll tatsächlich umsetzt.
Viele mechanische Gaming-Tastaturen unterstützen wegen der erwähnten Interrupts bis heute PS/2.
Ich habe nicht viel Erfahrung damit, aber beim Debuggen einiger früher 3D-Drucker unter Linux habe ich gelernt, dass das U in USB wirklich ziemlich wörtlich „universal“ bedeutet und dass serielle Daten an Betriebssystem, Treiber und Software weitergereicht werden, damit diese sie verarbeiten.
Bei günstigen DisplayPort-zu-HDMI-Adaptern funktioniert es ähnlich: Der Adapter selbst ist im Grunde vollständig passiv.
Viele DisplayPort-Ausgabegeräte unterstützen Multimode und können statt DP-Paketen TMDS-basierte HDMI- oder DVI-Signale ausgeben. Solche Ports tragen manchmal ein ++DP-Logo.
Deshalb sieht man selten günstige Adapter von einer HDMI-Quelle zu einem DisplayPort-Sink; die dafür nötige Intelligenz ist nicht im Quellgerät eingebaut.
Mein alter Dell-Monitor unterstützt nur HDMI 1.3, daher musste man für die volle Auflösung den DisplayPort- oder Dual-Link-DVI-Eingang nutzen, aber moderne Geräte haben meistens beides nicht. Dieses Gerät löste das Problem und ermöglichte 2560x1440.
Für DP->HDMI braucht man mindestens Elektronik wie einen Level-Shifter.
Etwas am Rande: Vor Kurzem funktionierte die interne Tastatur eines relativ neuen ThinkPad X1C Gen 12 nicht mehr. Ich schloss eine USB-Tastatur an und suchte im Linux-Kernel-Ringpuffer und anderswo nach Fehlern, die das Problem erklären könnten.
Überraschenderweise war die interne Tastatur kein USB-Gerät, sondern i8042. Ich bin kein Hardware-Mensch, aber irgendwie hatte ich angenommen, dass heutzutage alles USB ist. i8042 scheint das im Artikel erwähnte PS/2-Protokoll zu sein.
Ich fand keinen Fehler, aber nach einem Neustart funktionierte sie wieder.
Da auf Tastaturseite ohnehin ein Controller nötig ist, ergibt es Sinn, kein USB zu verwenden.
Viele ECs haben dafür einen 8042-kompatiblen IP-Block eingebaut. Für Software sieht es exakt wie eine PS/2-Tastatur und -Maus aus, aber die physische Schicht existiert möglicherweise gar nicht mehr. Ältere Laptops, die externe PS/2-Tastaturen und -Mäuse unterstützten, könnten noch eine echte PS/2-Schnittstelle haben.
Wenn die Tastatur komplett ausfiel, würde ich einen Bug in der EC-Firmware oder einen zufälligen Glitch vermuten.