[Résolu] SSD en usb lent sur le Raspberry pi4b



  • Bonjour à tous,

    Matériel utilisé : Raspberry pi 4b 8Go avec une microSD "Sandisk" de 16Go et un disque SSD de 1To en usb 3.0 de marque Crucial (disque dur alimenté depuis 1 port usb du raspberry)

    Symptôme : Recalbox fonctionne très bien sur SD ou quand les roms sont installées sur clé usb. Mais le système devient très lent (démarrage ou pour lancer un jeu) si l'on utilise un SSD en port usb.

    Résolution : problème de "quirks" sur le disque SSD (merci à "cpasjuste" sur discord de recalbox)

    Solution : source
    Il faut au préalable avoir installer recalbox sur sa microSD et avoir demander à recalbox (dans l'écran d'accueil) d'utiliser le disque dur SSD comme disque externe. Attendre un redémarrage. Puis éteindre recalbox. Et enfin récupérer la micro SD.

    Etape 1 : Trouver le VID et le PID du USB SSD

    Depuis linux :
    Ne pas connecter le ssd en usb
    Lancer le terminal et tapez le code suivant :

         sudo dmesg -C Puis entrée
    

    Connecter le SSD et tapez le code suivant :

         dmesg    (sans paramètres) Puis entrée
    

    Capture d’écran 2020-11-18 à 19.07.10.png
    Vosu obtenez un message comme ci-dessus. Le idVendoret idProduct sont des chiffres hexadécimaux a noter.

    Etape 2 : éditer le fichier cmdline.txt sur la "microSD" depuis un ordinateur

    Depuis la carte "micro SD" de la recalbox chercher et éditer le fichier "cmdline.txt"

    Ajouter la commande suivante devant la 1ère ligne de commande depuis le fichier cmdline.txt

    usb-storage.quirks=aaaa:bbbb:u (avec un espace après)

    aaaa = idVendor et bbbb = idProduct

    Capture d’écran 2020-11-18 à 19.14.05.png

    Sauvegarder LE FICHIER

    FIN

    J'espère que cela pourra être utilise à d'autres.



  • @ndeclochez Bonjour,
    Et merci à toi de proposer cette soluce!
    J'ai un soucis d'accès, ralentis depuis un boitier Nespi 4 Case via un SSD monté dans la cartouche SSD---->USB3. Ralentissement jusqu'à la freeze totale, le son finit par disparaitre...mais après plusieurs dizaines de secondes (parfois 1 minute ou 2) le système repart! Idem avec une clé USB3. En gros dès qu'un périphérique de stockage externe est branché au port USB3. Je précise que j'utilise une alimentation officielle.
    Test effectué connecté au port USB 2 et le problème semble disparaitre!
    C'est très curieux car je possède 3 raspberry PI4, je rencontre ce problème sur 2 PI4 (2 Go achetés récemment) et pas sur le dernier! (version 4 Go acheté il y a 1 an) monté dans une borne DIY et non dans ce foutu boitier pourtant très sympa! c'est à n'y rien comprendre.
    J'ai testé plusieurs clés USB, plusieurs SSD et le problème est le même...
    Je pense que le problème est lié au boitier Nespi 4 Case.
    Je testerai ce week-end, après démontage du PI4 du boitier.
    Pour vérifier si une clé USB3 connectée en DIRECT au port USB3 du PI, si cela merdouille toujours. Car le boitier déporte les connectiques!
    La manip que tu proposes est elle accessible depuis Windows via le réseau?
    Désolé je ne maîtrise pas tout 😉
    Merci à vous!!



  • Bonjour,

    Je ne suis pas un spécialiste. J'ai longtemps cherché et trouvé une réponse sur le discord de recalbox.

    Mais on m'a donné plusieurs conseils pour les port usb du raspberry :

    • c'est de mettre à jour le firmware.
    • tester plusieurs clés usb (voir si cela vient des clés usb)

    Essaye de faire cette manipulation qui prend quelques secondes et qui a été radicale pour moi.
    La manipulation est accessible depuis le réseau. Sur ce site il fait les modifications à distance pour faire démarrer le RPi depuis le ssd : https://www.domo-blog.fr/configurer-boot-ssd-raspberry-pi-4-box-domotique-jeedom-performante-fiable/



  • Bonjour,
    Après plusieurs tests il est apparu que la lenteur au démarrage était lié au SSD dans la cartouche en port usb3. Et la solution proposée ici marche, donc c'est parfait, merci @ndeclochez 👍

    J'ai réduit le temps de boot par deux. (voir plus bas)

    Pour info, si on a pas de linux installé sur un PC, on peut obtenir le idVendor et idProduct en bootant sur Raspberry Pi Os et en suivant les commandes indiquées.


    A titre indicatif voici les chiffres que j'ai obtenu. J'ai recommencé la mesure du boot au moins 5 fois, ici c'est la moyenne que j'indique (c'est fait avec le chrono du téléphone donc on pardonne les arrondis). J'ai fait le test avec le port USB2 parce que c'était proposé dans un autre topic du forum, et que c'est un work around super simple aussi 🙂

    Démarrage sur la carte mirco SD en 35 secondes

    Utilisation d'un connecteur ugreen pour SSD externe dans le port USB3 :
    27 secondes avec le SSD comme périphérique de stockage
    27 secondes avec AnyExternal comme périphérique de stockage

    Utilisation d'un connecteur ugreen pour SSD externe dans le port USB2 :
    28 secondes avec le SSD comme périphérique de stockage
    28 secondes avec AnyExternal comme périphérique de stockage

    Utilisation du connecteur nespi4case dans le port USB3 :
    58 secondes avec le SSD comme périphérique de stockage
    xxx avec AnyExternal comme périphérique de stockage j'ai obtenu des temps très différents: 2'26" 2'30" 2'59" 1'28" et 59"

    Utilisation du connecteur nespi4case dans le port USB2 :
    27 secondes avec le SSD comme périphérique de stockage
    28 secondes avec AnyExternal comme périphérique de stockage

    A titre indicatif, le connecteur est de marque ugreen, je l'ai acheté sur amazon, il fait le café avec tous les autres SSD que j'utilise. Le quirk vient bien donc du nespi4case.


  • Staff
    Global moderator
    Team

    @Shuu
    il suffit de le faire via ssh avec recalbox, et récupérer les valeurs des lignes indiquées.



  • Salut à tous,

    J'ai essayé de suivre le tuto de @ndeclochez mais je n'arrive pas à lancer le code "sudo dmesg -C"

    Je précise que je n'ai pas linux et que j'ai essayé via putty.

    D'après @acris, il est possible de le faire vis ssh. C'est possible d'avoir une explication? Dans tous les cas, je comprends pas comment on peut y arriver sans la carte insérée ??? Il y a un truc que j'ai zappé 😞

    Merci par avance



  • Bonjour, j'ai eu le même problème de SSD lent sans le nespi case et j'ai trouver une solution pour Windows en fouillant a droite a gauche je vous la partage donc.
    Matos: RPi4 4go, carte sd et SSd 1To Samsung evo 860 en usb3.
    Problème : le ssd mais plus de 5 minute a lancer recalbox, sans aucune rom dessus.

    Si l'on branche le ssd sur le port usb standard du rpi4 il se lance normalement, pas de problème mais sur le port usb3 il mouline en boucle, dut certainement au problème de quirks cité en début de ce topic.
    Il faut installer normalement recalbox puis ensuite brancher le disque dur ssd sur le port standard usb du rpi4 (pour ne pas attendre 5 minute). et passer recalbox sur le ssd.

    citation :Il faut au préalable avoir installer recalbox sur sa microSD et avoir demander à recalbox (dans l'écran d'accueil) d'utiliser le disque dur SSD comme disque externe. Attendre un redémarrage. Puis éteindre recalbox. Et enfin récupérer la micro SD.

    Ensuite récupérer le ssd et la carte sd et brancher votre ssd sur votre ordi.
    le but est de récupérer le VID et le PID du SSD sur windows.
    Aller dans le panneau de configuration (taper panneau de config dans la barre de recherche de windows) puis sous "matériel et audio", selectionner "afficher les périphérique et imprimante".
    Vous devriez avoir votre ssd de présent. Clic droit dessus et selectionner "propriété", puis "matériel". Dans mon cas dans la fenêtre je me retrouve avec trois noms (dispositif de stockage de masse, hdd recalbox, ext scsi disk). selectionner "dispositif de stockage de masse" puis en bas propriété. Dans la nouvelle fenêtre selectionner "détail" puis dans l'onglet selectionner "chemin d'accès a l'instance du périphérique". Dans mon cas j'obtient la ligne : USB\VID_152D&PID_0578\MSFT3033A9E20E1303938.
    notez le VID et le PID, toujours 4 chiffre et lettre après le tiret bas donc pour mon cas:
    VID = 152d PID = 0578.

    Débranchez votre ssd et branchez votre carte sd et suivez l'etape 2 en début de topic

    Etape 2 : Depuis la carte "micro SD" de la recalbox chercher et éditer le fichier "cmdline.txt"
    Ajouter la commande suivante devant la 1ère ligne de commande depuis le fichier cmdline.txt
    usb-storage.quirks=aaaa:bbbb:u (avec un espace après)
    aaaa = VID et bbbb = PID
    5984f770-260a-49ae-81e2-a9ac25ed7f7d-image.png
    puis sauvegardez le fichier.

    Et voilà cela a marcher pour moi.



Want to support us ?

209
Online

81.5k
Users

22.3k
Topics

161.6k
Posts