Bug ssh sur les nouvelles séries de raspberry lorsque le câble HDMI n'est pas branché

Voilà plusieurs semaines que je me casse les dents sur l’installation de la distribution Archlinux sur un raspberry pi 0.
J’ai cru avoir un modèle défectueux et ayant besoin d’un autre modèle, j’ai repassé commande mais rien n’y a fait. J’ai eu le même problème avec la nouvelle machine. Du coup, j’ai testé la totalité de mon installation, du câble RJ45 jusqu’au routeur pensant à une incompatibilité matériel. Nada !

L’installation se passe bien quand le RPi0 est branché sur un écran via un câble HDMI ou même à distance cependant dans ce dernier cas dès le premier reboot la machine ne répondra plus au ping.

Si vous laissez la machine branchée, elle va chauffer de manière très importante

Après toutes ces péripéties, j’ai fini par comprendre qu’il fallait que le câble HDMI soit branché !

Résoudre le bug

Déjà, il n’affecte pas toutes les machines mais seulement les nouvelles séries.

Si vous vous retrouvez confrontés au problème, il suffit de rebrancher le câble HDMI avec un écran pour pouvoir récupérer l’accès à celle-ci via ssh.
Si vous êtes comme moi et que vous souhaitez utiliser votre machine sans écran, ce n’est pas une solution !
Voici les étapes pour corriger le problème:

  • Créez un fichier ssh (sans extension) dans /boot. Vous n’avez rien besoin d’y mettre dedans, un fichier vide est suffisant
  • Remplacez la ligne dtoverlay=vc4-kms-v3d (ou similaire) par dtoverlay=dwc2 dans le fichier /boot/config.txt
  • Ajoutez modules-load=dwc2,g_ether juste après rootwait dans le fichier /boot/cmdline.txt. Attention à bien garder une seule et unique ligne pour ce fichier

C’est tout !
Il n’y a plus qu’à redémarrer votre machine et vous allez pouvoir récupérer l’accès à distance de celle-ci.