Configurer un Raspberry Pi A(+) sans Ethernet

Ce dont je parlais hier avec les Raspberry Pi Zero fonctionne aussi avec les Raspberry Pi A : il est possible de relier la carte à un Mac, en USB, et de se connecter dessus en SSH.

En fait, les Raspberry Pi A (A, A+, 3 A+) disposent d’une prise USB de type A qui peut fonctionner en mode OTG. La première chose à faire est donc de trouver un câble avec deux prises USB A mâle. On en trouve sur Amazon, mais je n’ai pas testé. Je suis passé par un câble de ce type que j’avais reçu avec un boîtier USB. J’ai tenté avec un câble USB-C vers USB-A, mais sans succès : le passage en USB-C doit limiter sur un point technique que je ne connais pas. Vous verrez facilement si ça fonctionne : le Raspberry Pi s’allume avec le bon câble. J’ai testé avec un Raspberry Pi A, un Raspberry Pi A+ et un Raspberry Pi 3 A+. Attention, il faut bien passer par le port USB classique, le microUSB ne transmets pas les données.

Un Raspberry Pi A+ avec un câble USB-A vers USB-A

La suite est assez proche de mon article d’hier, mais avec une différence. Le mode OTG s’active normalement de façon matérielle, en fonction de ce qui est branché, mais pas sur les Raspberry Pi A. Il faut le forcer logiciellement avec une commande.

Placez la carte dans un Mac, la partition boot devrait apparaître. Il faut ajouter la ligne suivante dans le fichier config.txt. Attention, elle diffère de celle utilisée avec un Raspberry Pi Zero.

dtoverlay=dwc2,dr_mode=peripheral

Ensuite, ajoutez cette ligne dans le fichier cmdline.txt. Vous pouvez la mettre à la fin du fichier, avec une espace devant.

modules-load=dwc2,g_ether

Enfin, ajoutez un fichier ssh à la racine de la partition (vide, c’est sans importance).

Et voilà. Rien de bien compliqué, le plus embêtant reste finalement de trouver un câble adapté. A noter, pour terminer, que ça peut aussi fonctionner avec un Raspberry Pi Compute Module, mais a priori uniquement avec les supports qui n’intègrent pas de hub USB interne. De même, ça ne fonctionne pas sur les Raspberry Pi B à cause de ce point.