M.2 pour les pirates – Développez votre ordinateur portable

Vous avez déjà vu des cartes M.2 dans des ordinateurs portables modernes. Si vous achetez un SSD aujourd’hui, il s’agit probablement d’un M.2. Beaucoup de nos ordinateurs portables contiennent des cartes WiFi M.2, les cartes WWAN orientées grand public sont désormais disponibles en M.2, et de temps en temps, nous voyons des cartes M.2 qui défient nos attentes. De nos jours, l’utilisation de M.2 est l’un des moyens les plus viables d’ajouter de nouvelles fonctionnalités à votre ordinateur portable. J’ai trouvé que la norme M.2 est assez accessible et aussi très piratable, et je voudrais vous le démontrer.

Si vous avez déjà cherché sur le Web pour essayer de comprendre ce qui fait fonctionner le M.2, vous avez peut-être trouvé l’un des nombreux articles déroutants qui transcrivent simplement des éléments du PDF de spécification M.2 et rendent les choses plus compliquées qu’elles ne le sont en réalité. . Regardons plutôt l’utilisation réelle du M.2. Aujourd’hui, je vais vous montrer les appareils M.2 que vous rencontrerez dans la nature et vous apprendre ce que vous devez savoir pour les utiliser. Dans la partie 2, je vous montrerai également comment créer vos propres cartes M.2 et périphériques acceptant les cartes !

Bien pensé, surtout

Vous pouvez vraiment apprécier la norme M.2 une fois que vous commencez à l’examiner, surtout si vous avez travaillé avec des appareils mPCIe pendant un certain temps. mPCIe est ce que nous utilisons depuis toutes ces années, et il est progressivement devenu un méli-mélo de brochages difficilement compatibles. Au fur et à mesure que les fabricants imaginaient toutes sortes d’appareils qu’ils pouvaient intégrer, vous trouviez des hacks comme les extensions de coexistence mSATA et WWAN, et le manque de normalisation est perceptible dans des choses comme les modems mPCIe WWAN dès que vous avez besoin de quelque chose comme UART ou PCM. Heureusement, la spécification M.2 a pris en compte toutes ces leçons.

La norme M.2 est conçue avec des cas d’utilisation réels à l’esprit et définit autant de broches que possible, garantissant que les cartes à usage identique de différents fabricants peuvent être remplacées les unes par les autres. Il est divisé en différentes clés qui servent chacune un objectif, comme les clés orientées stockage, WWAN, WiFi et autres. Chaque incrustation définit un brochage pour un groupe d’interfaces telles que PCIe, USB 2.0 ou 3.0, SATA, I2C, DisplayPort, etc. La plupart de ces interfaces sont, naturellement, assez appétissantes pour un hacker.

Ni une carte ni un socket ne sont nécessaires pour prendre en charge toutes les interfaces définies dans le brochage du keying, ou une interface particulière. Cela a du sens si vous concevez des systèmes – de nombreuses interfaces définies sont situationnelles ou coûteuses. Cependant, bien sûr, cela peut entraîner une confusion du genre «ça va, mais ça ne marche pas». Par exemple, un SSD SATA à clé B + M ne fonctionnera pas dans certaines prises M-key NVMe uniquement, et certaines normes propriétaires comme CNVi jettent une clé dans le concept «toute carte WiFi M.2 fonctionnera avec votre ordinateur portable».

Certaines cartes M.2 peuvent sembler flippables, mais elles ne le sont pas

Cependant, dans le monde réel, il y a des ancres sur lesquelles vous pouvez compter – si vous voyez un slot M-key, A-key ou E-key, il a PCIe, si vous voyez un slot B-key, A-key ou E -fente pour clé, il a USB 2.0 ; et si vous avez des schémas ou quelques appareils M.2 sous la main, vous pouvez rapidement tester la compatibilité d’un emplacement particulier. Il y a aussi des broches I2C SDA et SCL définies dans toutes les clés, mais si elles sont connectées à quoi que ce soit, c’est une chance sur deux, apparemment en fonction de la phase de la lune du jour exact où la carte mère de votre ordinateur portable a été conçue.

B+M ? La norme M.2 permet de combiner des clés sur des cartes, de laisser une carte s’insérer dans deux types de socket différents et d’augmenter la compatibilité de votre carte. Vous verrez deux combinaisons – B + M et A + E, utilisées respectivement pour les SSD et les cartes WiFi, et les brochages des touches B, M, A et E sont conçus pour que ces deux combinaisons soient possibles. Vous perdez certaines des fonctionnalités optionnelles, mais les éléments cruciaux comme PCIe restent accessibles. En passant, bien que vous puissiez avoir l’impression de pouvoir insérer un SSD B + M à l’envers si vous appliquez suffisamment de force, ou poussez une carte M-key dans une prise B-key, non seulement cela ne fonctionnera pas, vous inverserez la polarité de la tension d’entrée et il pourrait y avoir des conséquences incendie. Même compte tenu de ces quelques ratés, M.2 est bien plus raisonnable et puissant que mPCIe ne pourrait jamais l’être.

Un bâton d’état solide

Deux SSD B+M – un SATA et un NVMe via une liaison 2x PCIe

Les SSD M.2 sont sans aucun doute les plus populaires. Ils sont soit SATA, soit NVMe – ce dernier est une interface de stockage utilisant PCIe comme couche physique. Nous avons parlé en profondeur des composants internes de NVMe, n’hésitez pas à le vérifier. Les SSD SATA utilisent généralement la clé B + M – certains sont uniquement des clés B, mais c’est rare. Les SSD NVMe utilisent généralement la clé M, certains utilisant une combinaison de B+M et étant donc limités à 2 voies PCIe, vous le verrez avec des SSD moins chers.

Un SSD ne peut prendre en charge qu’une seule de ces normes, jamais les deux. Il peut être difficile de déterminer lequel, donc s’il n’y a pas de logo NVMe ou SATA sur l’étiquette, recherchez le numéro de modèle. Si vous avez le SSD en main ou si vous avez des images à plus haute résolution, regardez le nombre de paires différentielles. S’il n’y en a que deux, c’est SATA ; s’il y en a trois, cinq ou neuf, c’est NVMe. Statistiquement, vous êtes beaucoup plus susceptible de voir des SSD NVMe, car ils deviennent de plus en plus abondants.

Un port M-key ou B-key peut prendre en charge les deux ou un seul d’entre eux. Sur les brochages B et M, une broche est définie pour faire la distinction entre les SSD PCIe et SATA, et si un hôte prend en charge les deux normes, il basculera automatiquement entre elles. Avec certains ordinateurs portables, il peut être difficile de dire si un SSD SATA M.2 serait pris en charge. En revanche, NVMe est une valeur sûre, car il n’est presque jamais pris en charge. Et, si vous avez un simple adaptateur externe qui n’a qu’un connecteur PCIe ou un connecteur SATA, il ne prendra en charge que ce type de SSD.

Toutes les façons de faire du WiFi

Le WiFi M.2 utilise des clés A ou E – la plupart des cartes WiFi que vous verrez utiliseront une clé combinée A + E, et les sockets étaient autrefois des clés A, mais de nos jours, la clé E est la règle. Vous obtenez un lien PCIe 1x et USB 2.0, le premier étant utilisé pour le WiFi réel et le dernier utilisé pour le Bluetooth. Sur les touches A et E, vous pouvez obtenir un deuxième lien PCIe 1x – pas une voie, un lien ! – mais il est rare de voir des sockets qui le connectent, il est donc difficile de trouver des hôtes pour des cartes comme cet accélérateur Google Coral Dual TPU. Par rapport à mPCIe, les connecteurs d’antenne ne sont plus uFL – ils sont MHF3, également connus sous le nom de wFL, il se peut donc que vous ayez besoin d’un nouveau matériel d’antenne.

Bien sûr, toutes les cartes WiFi intégrées ne fonctionnent pas en PCIe – le brochage de la clé électronique tient également compte des cartes WiFi SDIO. SDIO est une interface intégrable utilisée principalement pour les cartes SD et les connexions de puces WiFi – par exemple, sur des cartes comme le Raspberry Pi. Quelques cartes et adaptateurs ont été vus là-bas en utilisant E-key, ayant les pirates encore non initiés lève sourcils. Étant donné à quel point il est facile de concevoir vos propres cartes M.2, nous espérons que les cartes WiFi M.2 SDIO deviendront plus populaires un jour – peut-être alors, Pine64 ne concevra plus de modules WiFi étranges.

carte WiFi demi-taille en haut, module WiFi 1216 M.2 en bas

Il est rare de voir des cartes pures E-key ou A-key – l’une des exceptions, CNVi, utilise E-key, et ce n’est pas le bon type d’exception. Il s’agit d’une interface dérivée de M.2 propriétaire d’Intel uniquement qui permet au chipset d’effectuer la plupart des travaux WiFi qui étaient effectués sur les cartes WiFi PCIe. Non seulement ces maudites cartes WiFi M.2 ne fonctionnent pas avec les processeurs AMD ou les ordinateurs portables plus anciens, mais il existe deux versions de CNVi et elles n’ont ni rétrocompatibilité ni rétrocompatibilité, ce qui entraîne la confusion des utilisateurs, des dépenses supplémentaires et des déchets électroniques. Il y a un avantage provisoire – les emplacements connectent généralement à la fois CNVi et PCIe + USB2, de sorte que vous pouvez théoriquement utiliser une carte CNVi, puis vous procurer des liens PCIe et USB internes supplémentaires à des fins de piratage.

Il existe deux facteurs de forme de carte WiFi quelque peu loufoques que vous pourriez rencontrer. Tout d’abord, il y a cette carte WiFi E-key de taille amusante – rendue possible car une grande partie du brochage est inutilisée par défaut. De plus en plus amusants mais pas nécessairement aussi amusants, vous avez peut-être vu ces petits modules soudés blindés dans des ultrabooks. Ceci aussi est le facteur de forme M.2, appelé 1216. Il est soudable et donc pas aussi facilement évolutif, mais avec un brochage prédéfini tout de même. Malheureusement, ces modules sont également disponibles dans la variété CNVi – en revanche, ce n’est pas comme si vous alliez souvent échanger ces cartes.

Allez dans le monde entier avec B-Key

Modems USB 4G prêts pour le projet à bas prix

Si vous avez besoin d’un modem 4G connecté par USB bon marché avec une prise en charge décente de Linux dans votre projet, vous ne vous tromperez pas en vous procurant un modem M.2 B-key d’occasion, généralement de format 3042, donc 30 mm de large. Un grand nombre de ces cartes ont été fabriquées pour les ordinateurs portables avec connectivité WWAN, et le marché de l’occasion les propose à des prix ultra bas. La plupart d’entre eux sont USB 2.0, avec quelques cartes USB 3.0 disponibles – pour l’un ou l’autre, vous pouvez trouver des évasions équipées d’une prise USB en ligne, et il y a aussi des évasions open source homebrew.

Ceux-ci vont dans les emplacements de clé B sur les ordinateurs portables – de tous les emplacements M.2 disponibles, ce sont les plus « far west », en ce sens que vous ne pouvez vraiment compter que sur la présence de l’USB 2.0 – tout le reste varie fortement. La norme définit un certain nombre d’autres fonctionnalités – certains emplacements de clé B ont un SATA supplémentaire, certains ont un PCIe supplémentaire, certains ont à la fois SATA et PCIe commutables par la même broche de configuration PCIe/SATA que les SSD M-key utilisent. Parfois, il y a aussi l’USB 3.0, mais aucune garantie. Vous aurez certainement l’USB 2.0 pour votre modem, mais pour tous les autres appareils comme les SSD, vous devrez chercher sur Google le numéro de modèle de votre ordinateur portable avec les demandes « Puis-je mettre le SSD dans l’emplacement de la clé B ».

Malheureusement, si votre ordinateur portable n’est pas réellement équipé d’une option WWAN, non seulement les antennes WWAN peuvent être absentes, mais la prise de clé B sur la carte mère peut ne pas être soudée non plus – c’est un choix d’assemblage bizarre et frustrant à affronter et il entrave l’évolutivité, mais ce n’est rien que nous n’ayons pas vu faire avec mPCIe, je suppose. En revanche, si vous disposez d’un emplacement pour clé B, vous n’avez pas à vous limiter aux SSD et aux cartes WWAN – par exemple, voici une connexion USB 2.0 open source Carte d’extension M.2 basée sur RP2040 par [Timonsku], susceptible d’être une mise à niveau amusante pour votre ordinateur portable !

M.2 : En évolution, toujours présent, ici pour rester

Certaines parties de la norme M.2 disparaissent dans l’obscurité et ne sont plus accessibles sur les ordinateurs portables – si elles l’ont déjà été. Si vous voulez descendre dans un terrier de lapin, le document M.2 Electromechanical Specification Rev1.0 peut être trouvé en ligne, et vous pouvez apprendre beaucoup de ses 201 pages. Par exemple, vous constaterez que la touche F est réservée à une chose obscure appelée Future Memory Interface, sans aucun doute un projet Intel mis de côté décrit uniquement sur une page Blogspot qui n’est même plus indexée par Google.

Pour des parties plus réelles mais non moins amusantes, il y avait une norme appelée WiGig, et certains ThinkPad ont exposé un lien DisplayPort sur l’emplacement WiFi A-key pour cela – en plus d’utiliser le deuxième lien PCIe sur le A-key J’ai mentionné ci-dessus. Apparemment, vous pourriez avoir des stations d’accueil sans fil pour ordinateur portable, avec une connectivité DisplayPort et USB3.0 vous apportant une tonne d’appareils sans câble en vue. Il existe des images intéressantes des composants internes du dock WiGig – le matériel du récepteur intégré au dock est en fait une carte M.2 G-key elle-même. Vous pouvez en fait trouver les cartes dans le dock sur eBay, en tant qu’éléments de l’histoire relativement récente des périphériques informatiques.

Vous trouverez M.2 pratiquement partout. Il a beaucoup de potentiel caché, et si jamais nous avons besoin d’exploiter cela, cela vous aidera à apprendre comment il est utilisé dans la nature. Même si vous n’allez jamais concevoir une carte M.2, vous savez maintenant comment différencier les SSD SATA et NVMe M.2, et pourquoi insérer une carte B-key 4G dans votre emplacement SSD M-key n’entraînera pas rien de bon. Dans le prochain article, je vous montrerai également comment concevoir une carte M.2 ou installer un socket M.2 sur votre propre carte !