Mocking USB



Une fois de plus, en branchant une clĂ© USB haut dĂ©bit dans le port USB 3.0, j'ai vu l'inscription " Cet appareil peut fonctionner plus rapidement ... ". Mais attendez, je l'ai dĂ©jĂ  branchĂ© sur le port 3.0! Le contact est-il indĂ©sirable? Et si oui, comment le lecteur flash dĂ©termine-t-il Ă  quelle vitesse il fonctionne? AprĂšs tout, les PC modernes prennent en charge jusqu'Ă  trois normes de connexion - USB 1.1, 2.0 et 3.0. Est-il possible de «rĂ©trograder» la norme USB en forçant l'appareil Ă  fonctionner, par exemple, sur USB 1.1? Toutes ces questions n'ont pas trouvĂ© de rĂ©ponse sur le rĂ©seau, et j'ai dĂ©cidĂ© de le comprendre moi-mĂȘme, en cours de route, face Ă  des situations peu Ă©videntes.



RĂ©trograder USB 3.0 vers 2.0

Vous allez maintenant dire - ce qui pourrait ĂȘtre plus simple, il suffit de prendre un cĂąble USB 2.0 - et vous aurez tout Ă  fait raison. S'il n'y a pas de broches USB 3.0 dans le cĂąble ou le connecteur, l'appareil n'aura pas d'autre issue que de dĂ©marrer Ă  la vitesse USB 2.0:





Mais quels fils de déconnexion passeront à l'USB 2.0? Que se passe-t-il si vous n'en désactivez qu'un seul ou fermez les voisins? C'est intéressant d'aller au-delà de la norme et d'expérimenter!



Pour des expériences, j'ai soudé l'USB «mÚre» et l'USB «papa» avec des fils sur la maquette:





Sur la photo, il n'y a pas qu'un seul fil dans l'air. Il s'est avĂ©rĂ© que la connexion fonctionne correctement mĂȘme sans l'un des conducteurs de diffĂ©rence SS_TX. des couples! (pour la paire SS_RX, cette astuce ne fonctionne plus)



De plus, si vous dĂ©connectez tous les contacts USB 3.0, Ă  l'exception de SS_TX, l'appareil continue de penser qu'il est connectĂ© Ă  USB 3.0 et n'est pas dĂ©tectĂ© du tout dans le systĂšme. Pour ĂȘtre honnĂȘte, j'Ă©tais sĂ»r que la connexion dans ce cas passerait en mode 2.0:



ici SS_RX-, SS_RX + et SS_TX + sont désactivés.Totalement,



nous concluons que le pĂ©riphĂ©rique USB 3.0 vĂ©rifie une connexion SuperSpeed ​​sur la ligne SS_TX, et l'Ă©metteur-rĂ©cepteur est si rĂ©sistant aux erreurs qu'il crachez sur la cassure d'une des lignes de la paire. Pour garantir que l'appareil bascule sur USB 2.0, les deux lignes doivent ĂȘtre dĂ©chirĂ©es: SS_TX- et SS_TX +.



RĂ©trograder USB vers 1.1



L'USB 2.0 est bon pour tout le monde, mais ça fait trop mal. Si vous avez déjà essayé de le renifler avec un analyseur logique, vous avez soit un analyseur trÚs cool, soit vous avez trouvé un ancien hub USB comme celui-ci:





Malgré le fait qu'Internet regorge de questions "comment rétrograder USB 2.0 vers 1.1", je n'ai vu nulle part de solution simple:





Regardons de plus prÚs! Selon la norme USB, la vitesse de fonctionnement est cohérente au niveau du signal. L'appareil élÚve le niveau D à 0,8 V et l'hÎte répond avec un signal en dents de scie:





On voit la mĂȘme chose sur notre "stand expĂ©rimental" sur un oscilloscope:





Autrement dit, vous devez vous assurer que l'hĂŽte ne voit pas cette augmentation de tension. On place donc la diode dans l'espace de la ligne D (Schottky pour minimiser la goutte):





Iiii il supprime avec succÚs le signal de l'appareil sans interférer avec la transmission de données normale:









Et ici, j'étais sûr que la diode perturberait la transmission de données le long de la ligne et que rien ne fonctionnerait, mais non - je ne pouvais pas trouver un seul appareil qui ne fonctionnait pas avec un tel "adaptateur".



Assembler un downgrader



En guise de généralisation des expériences ci-dessus, j'ai fait un simple commutateur de mode USB passif - 1.1 / 2.0 / 3.0



Mon dĂ©sir de simplicitĂ© est parfois impossible Ă  retenir. Je voulais tout mettre en Ɠuvre sur un seul interrupteur Ă  trois positions, comme ceci:







L'idée originale était - une rangée de contacts commutateurs D- entre:



  • «Diode» (USB 1.1)
  • Vide (USB 3.0)
  • "D-" (USB 2.0)


Et l'autre rangée de broches connecte SS_TX - uniquement en mode USB 3.0:



  • Vide (USB 1.1)
  • "SS_TX-" (USB 3.0)
  • Vide (USB 2.0)


Mais j'ai rejeté cette idée en raison de doutes - presque tous les périphériques USB 3.0 ne pourront fonctionner que sur une seule ligne de diff. des couples. J'ai donc refait l'interrupteur avec des pinces coupantes:





Maintenant, le contact du milieu bascule entre les contacts extrĂȘmes et, en position mĂ©diane, l'interrupteur ferme deux paires de contacts indĂ©pendants. IdĂ©alement! Il reste Ă  souder et vous avez terminĂ©:



TODO: diluez le circuit imprimé et rendez-le beau



Tout, maintenant vous pouvez ĂȘtre sĂ»r que le lecteur flash fonctionne en mode 3.0 (2.0, 1.1), sinon il ne sera tout simplement pas trouvĂ© dans le systĂšme. En conclusion, nous testons notre lecteur de carte dans diffĂ©rentes positions d'interrupteur.



«3.0»:



«2.0»:


pour une raison quelconque, la vitesse de l'USB 1.1 n'aimait pas Crystal Disk Mark et, à la suite du test, il montrait des zéros



Question piĂšge



Il y a deux paires de contacts dans le connecteur USB 3.0 - USB 2.0 et USB 3.0, nous avons déjà découvert que l'appareil (clé USB, lecteur de carte) grimpe d'abord sur les broches 3.0, et s'il ne fonctionne pas, il passe en mode 2.0.



Que faire si vous connectez un appareil Ă  3,0 broches et un autre Ă  2,0 broches? Quel appareil verra l'ordinateur?





Essayez de répondre au sondage ci-dessous avant de regarder sous le spoiler.



RĂ©pondre
, USB 3.0 SATA- USB 2.0 :














! , USB 3.0 . , Intel.




All Articles