Rasperry Pi 5 - Nvme wird nicht erkannt/angezeigt

  • Guten Abend,

    ich konnte meinen RPi 5 nun in Betrieb nehmen und auch mit Oscam versorgen.
    Ich habe im Netz nun diverse Installationsmöglichkeiten zu einer nvme gesehen. Nachdem ich sämtliche Befehle wie z.B.

    dtparam=pciex1
    dtparam=pciex1_gen=2

    und auch

    sudo rpi-eeprom-config -edit
    boot_order=0xf416
    pcie_probe=1

    ausgeführt habe, wird mir die nvme dennoch nicht als Datenträger angezeigt. Meine Absicht war es die komplette SD Karte auf die nvme zu kopieren. Klappt aber nicht, da die nvme nicht unter "lsbulk" erkannt wird.

    Ich bitte um Hilfe

  • @Andreas_der_erste
    Danke für die Unterstützung. Was muss ich denn unter dem Punkt "Flash from file" auswählen ? Wenn ich "flash from file" auswähle wird mir

    C:\Users\xxx\AppData\Local\Programs\balena-etcher

    angezeigt

    Ich habe meinen Raspberriy Pi 5 mit dem "image loader" auf die aktuellste Version auf eine sd card installiert und möchte sämtliche daten (inkl. der oscam dateien) nun auf die verbaute nvme verschieben und die sd karte entfernen.

    Edited 2 times, last by FastEddie (March 5, 2024 at 12:32 AM).

  • Du musst Flash von USB (deine SD-Karte im Adapter) und im zweiten Schrittwählat du deine Nvme aus anschließend Flashen.

    Damit hast du dann deine Karte geklont. Auf dem Pi musst du dann noch einstellen sudo raspi-config das die gesamte Größe benutzt wird

    Andreas

    Ich weiß nicht immer wovon ich rede. Aber ich weiß das es richtig ist. (Muhammad Ali)

    quod erat demonstrandum

  • Du musst Flash von USB (deine SD-Karte im Adapter) und im zweiten Schrittwählat du deine Nvme aus anschließend Flashen.

    Das habe ich soeben versucht. Ich erhielt jedoch die Meldung "Flash failed".

    Ich bin mir jedoch nicht sicher ob die Kopie der SD auf die Nvme nicht doch mit dem Raspberry Tool SD Card Copierer funktioniert hat, obwohl der gesamte Kopiervorgang ohne Fehler verlief.

    Die Nvme wurde auch unter lsblk angezeigt.

    Leider wird sie mir nun nicht mehr angezeigt.

    Ich weis echt nicht mehr weiter wie ich das gesamte System auf die Nvme bekomme und auf die SD verzichten kann.

    Edited once, last by FastEddie (March 5, 2024 at 5:08 PM).

  • Wie ist denn überhaupt der jetzige Status? Bootet sie von SD und wird die NVME erkannt und ist da schon das System drauf kopiert?

    Ich hab an meinem keine NVME sondern eine SSD via USB angeschlossen, deswegen bin ich nicht wirklich sicher, wieweit ich überhaupt helfen kann. Und meiner ist ein R4 und kein R5.

    Auf die schnelle: Ausgabe von lsblk und rpi-eeprom-config mal zeigen.

    Diskutiere nie mit einem Idioten. Er zieht dich auf sein Niveau runter und schlägt dich mit seiner Erfahrung.

  • Der Bootvorgang von der SD klappt problemlos. Per SD Card Copier des Raspis wurde auch das System auf die nvme kopiert. Nun nvme wird jedoch nicht erkannt

    Display Spoiler


    lsblk
    NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
    mmcblk0 179:0 0 29.1G 0 disk
    ├─mmcblk0p1 179:1 0 512M 0 part /boot/firmware
    └─mmcblk0p2 179:2 0 28.6G 0 part /


    rpi-eeprom-config
    [all]
    BOOT_UART=1
    POWER_OFF_ON_HALT=0
    BOOT_ORDER=0xf146

    Edited 3 times, last by FastEddie (March 5, 2024 at 5:39 PM).

  • Wie siehts mit den Parametern dazu in der Datei /boot/firmware/config.txt aus? (Die gibt es bei mir schon gar nicht, ich habe aber schon mehrere Beiträge dazu gesehen...) - sollte wohl der Parameter dtparam sein.

    Diskutiere nie mit einem Idioten. Er zieht dich auf sein Niveau runter und schlägt dich mit seiner Erfahrung.

  • Hier die config.txt

    Display Spoiler


    For more options and information see
    # configtxt
    # Some settings may impact device functionality. See link above for details

    # Uncomment some or all of these to enable the optional hardware interfaces
    #dtparam=i2c_arm=on
    #dtparam=i2s=on
    #dtparam=spi=on

    # Enable audio (loads snd_bcm2835)
    dtparam=audio=on

    # Additional overlays and parameters are documented
    # /boot/firmware/overlays/README

    # Automatically load overlays for detected cameras
    camera_auto_detect=1

    # Automatically load overlays for detected DSI displays
    display_auto_detect=1

    # Automatically load initramfs files, if found
    auto_initramfs=1

    # Enable DRM VC4 V3D driver
    dtoverlay=vc4-kms-v3d
    max_framebuffers=2

    # Don't have the firmware create an initial video= setting in cmdline.txt.
    # Use the kernel's default instead.
    disable_fw_kms_setup=1

    # Disable compensation for displays with overscan
    disable_overscan=1

    # Run as fast as firmware / board allows
    arm_boost=1

    [cm4]
    # Enable host mode on the 2711 built-in XHCI USB controller.
    # This line should be removed if the legacy DWC2 controller is required
    # (e.g. for USB device mode) or if USB support is not required.
    otg_mode=1

    [all]

    dtparam=pciex1
    dtparam=pciex1_gen=2

  • Ich habe jetzt schon zweimal gelesen, dass die BOOT_ORDER auf 0xf416 gesetzt sein sollte, nicht wie bei dir 0xf146. Das würde ich auch mal probieren.

    Und dtparam=pciex1_gen=1 hast du sicher auch schon probiert?

    Kannst auch noch PCIE_PROBE=1 in der rpi-eeprom-config noch setzen.

    Nach dem Reboot: wie ist die Ausgabe von lspci?

    Die letzten Infos habe ich alle von NVMe SSD's nutzen (Pi 5) [Dr. Klipper Wiki]

    Diskutiere nie mit einem Idioten. Er zieht dich auf sein Niveau runter und schlägt dich mit seiner Erfahrung.

    Edited 3 times, last by rdamas (March 5, 2024 at 5:48 PM).

  • Ich habe nun die Boot_Order auf 0xf416, sowie dtparam=pciex1_gen=1 gesetzt und per sudo reboot neugestartet. Leider ohne Erfolg......die nvme wird immer noch nicht unter lsblk angezeigt

    [all]
    BOOT_UART=1
    POWER_OFF_ON_HALT=0
    BOOT_ORDER=0xf416
    PCIE_PROBE=1

    lspci
    root@raspberrypi ~ > lspci
    0001:00:00.0 PCI bridge: Broadcom Inc. and subsidiaries Device 2712 (rev 21)
    0001:01:00.0 Ethernet controller: Device 1de4:0001


    root@raspberrypi ~ > dmesg |grep brcm-pcie |grep link
    [ 2.025781] brcm-pcie 1000110000.pcie: link down
    [ 2.297782] brcm-pcie 1000120000.pcie: link up, 5.0 GT/s PCIe x4 (!SSC)

    Ich vermute, dass der Controller nicht erkannt wird...

    dmesg |grep nvmegibt nichts aus


    Ich nutze diesen Controller Geekworm X1002 M.2

    Edited 4 times, last by FastEddie (March 5, 2024 at 6:06 PM).

  • Allerletzte Frage, die ich noch nicht beantwortet gesehen habe, was du aber hoffentlich auch schon gemacht hast: sudo rpi-eeprom-update

    Laut dem angesprochenen Wiki muss zwingend eine Version neuer als 6.12.2023 benutzt werden.

    Ansonsten habe ich auch keine Idee mehr.

    Diskutiere nie mit einem Idioten. Er zieht dich auf sein Niveau runter und schlägt dich mit seiner Erfahrung.

  • hab ich schon ausgeführt. Das einzige, was ich mir noch denken kann, dass es bei dem vielen zusammen- und auseinanderbauen vielleicht dazu kam, dass das kleine Flachbandkabel evtl. falsch angebracht wurde. Das müsste ich noch checken.

    Oder ist das irrelevant?

    Vielleicht muss die Nvme ja separat gemountet werden? Kennt jemand den erforderlichen Befehl dazu?

    Edited 2 times, last by FastEddie (March 5, 2024 at 9:06 PM).

  • @FastEddie,

    von Fertigungsproblemen und den notwendigen Anpassungen im Bootloader/Firmware des RPi5 mal gesehen, scheint auch die Stromversorgung (Netzteil mit 27W Minimum) eine sehr große Rolle zu spielen. Das offizielle vom RPi4 mit 18 W reicht dafür nicht. Auch alternative Varianten vom Smartphone o.ä. können da ungeeignet sein, obwohl die maximale Ausgangsleistung theoretisch reichen sollte.

    Falls die Erkennung per Power Delivery fehlschlägt oder nicht unterstützt wird, kann man die Freigabe dennoch erzwingen. Ich habe dies im Zusammenhang mit dem Argon40 Gehäuse gesehen.

    EEPROM config:
    PSU_MAX_CURRENT=5000
    PCIE_PROBE=1
    BOOT ORDER=0xf416

    config.txt
    usb_max_current_enable=1
    dtparam=nvme
    dtparam=pciex1_1=gen3

    Im Forum bei denen gibt es aber immer noch genügend Meldungen mit Nutzern bei denen die NVMe nicht erkannt wird. Auch gab es welche, die das flache Kabel mit den Kontakten zur falschen Seite zeigend eingesetzt hatten. Falls nicht noch ein generelles Fertigungsproblem vorliegt, könnten auch noch weitere Korrekturen am Bootloader notwendig sein, bevor die NVMe sauber erkannt wird.

    Edited 2 times, last by Sledge (March 6, 2024 at 8:26 AM).

  • Guten Morgen,

    es lag wohl an dem falsch angeschlossenen Flachbandkabel. Nun wird mir die nvme auch unter lsblk angezeigt.

    Display Spoiler


    NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
    mmcblk0 179:0 0 29.1G 0 disk
    ├─mmcblk0p1 179:1 0 512M 0 part
    └─mmcblk0p2 179:2 0 28.6G 0 part
    nvme0n1 259:0 0 465.8G 0 disk
    ├─nvme0n1p1 259:1 0 512M 0 part /boot/firmware
    └─nvme0n1p2 259:2 0 28.6G 0 part /


    Wenn ich die ausgegebenen Daten richtig interpretiere, wurde die SD Karte auch korrekt auf die nvme kopiert.

    Es scheint auch soweit alles ok zu sein was ich mit u.a. Befehlen geprüft habe

    root@raspberrypi ~ > lspci

    Display Spoiler


    0000:00:00.0 PCI bridge: Broadcom Inc. and subsidiaries Device 2712 (rev 21)
    0000:01:00.0 Non-Volatile memory controller: Micron Technology Inc Device 5416 ( rev 01)
    0001:00:00.0 PCI bridge: Broadcom Inc. and subsidiaries Device 2712 (rev 21)
    0001:01:00.0 Ethernet controller: Device 1de4:0001

    root@raspberrypi ~ > dmesg |grep nvme

    Display Spoiler


    [ 1.818378] nvme nvme0: pci function 0000:01:00.0
    [ 1.823128] nvme 0000:01:00.0: enabling device (0000 -> 0002)
    [ 1.905015] nvme nvme0: allocated 64 MiB host memory buffer.
    [ 1.994980] nvme nvme0: 4/0/0 default/read/poll queues
    [ 2.015186] nvme0n1: p1 p2
    [ 3.344647] EXT4-fs (nvme0n1p2): mounted filesystem with ordered data mode. Quota mode: none.
    [ 4.273729] EXT4-fs (nvme0n1p2): re-mounted. Quota mode: none.


    root@raspberrypi ~ > dmesg |grep brcm-pcie |grep link

    Display Spoiler


    [ 1.705996] brcm-pcie 1000110000.pcie: link up, 2.5 GT/s PCIe x1 (!SSC)
    [ 2.065998] brcm-pcie 1000120000.pcie: link up, 5.0 GT/s PCIe x4 (!SSC)


    Jedoch kann ich noch nicht davon booten, sobald ich die SD Karte entferne, habe ich keinen Internetzugriff und ein Bootversuch des Raspberrys schlägt fehl.

    Muss denn unter /boot/firmware/config.txt vielleicht der u.a. Eintrag

    dtparam=pciex1
    dtparam=pciex1_gen=2

    in

    dtparam=nvme
    dtparam=pciex1
    dtparam=pciex1_gen=2

    geändert werden ?

    Vielleicht ist die nvme auch nicht gemounted ? Oder passiert dies automatisch ?

    Wenn ich mich per VNC Viewer auf dem Raspi anmelde, sehe ich unter "Devices" die SD Karte und die nvme. Wenn ich auf die nvme klicke erscheint die Meldung:

    The specified directory "computer:///CT500P3SSD8.drive" is not valid

    Auf dem Pi musst du dann noch einstellen sudo raspi-config das die gesamte Größe benutzt wird

    Habe nun auch unter raspi-config das Dateisystem erweitern können

    ALT:

    Display Spoiler


    NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
    mmcblk0 179:0 0 29.1G 0 disk
    ├─mmcblk0p1 179:1 0 512M 0 part
    └─mmcblk0p2 179:2 0 28.6G 0 part
    nvme0n1 259:0 0 465.8G 0 disk
    ├─nvme0n1p1 259:1 0 512M 0 part /boot/firmware
    └─nvme0n1p2 259:2 0 28.6G 0 part /

    NEU:

    Display Spoiler


    root@raspberrypi ~ > lsblk
    NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
    mmcblk0 179:0 0 29.1G 0 disk
    ├─mmcblk0p1 179:1 0 512M 0 part
    └─mmcblk0p2 179:2 0 28.6G 0 part
    nvme0n1 259:0 0 465.8G 0 disk
    ├─nvme0n1p1 259:1 0 512M 0 part /boot/firmware
    └─nvme0n1p2 259:2 0 465.3G 0 part /

    Edited 12 times, last by FastEddie (March 6, 2024 at 12:35 PM).

  • "dtparam=nvme" ist ein Synonym zu "dtparam=pciex1" weil man es sich besser merken kann. Brauchst Du in Deinen Fall nicht extra hinzufügen, siehe: raspberry-pi-5.html#enabling-pcie

    Das mounten sollte automatisch funktionieren und scheint doch schon so eingehangen und von der NVMe gestartet zu sein:

    Code
    nvme0n1 259:0 0 465.8G 0 disk
    ├─nvme0n1p1 259:1 0 512M 0 part /boot/firmware
    └─nvme0n1p2 259:2 0 28.6G 0 part /

    Musst nur sicherstellen, dass in der config.txt auf der NVMe die Parameter genauso enthalten sind wie vorher auf der SD-Karte. Ist das der Fall?

    Edited 2 times, last by Sledge (March 6, 2024 at 12:40 PM).

  • Ich habe nun den u.a. Befehl ausgeführt:

    sudo nano /boot/firmware/config.txt

    Display Spoiler


    # For more options and information see
    # configtxt
    # Some settings may impact device functionality. See link above for details

    # Uncomment some or all of these to enable the optional hardware interfaces
    #dtparam=i2c_arm=on
    #dtparam=i2s=on
    #dtparam=spi=on

    # Enable audio (loads snd_bcm2835)
    dtparam=audio=on

    # Additional overlays and parameters are documented
    # /boot/firmware/overlays/README

    # Automatically load overlays for detected cameras
    camera_auto_detect=1

    # Automatically load overlays for detected DSI displays
    display_auto_detect=1

    # Automatically load initramfs files, if found
    auto_initramfs=1

    # Enable DRM VC4 V3D driver
    dtoverlay=vc4-kms-v3d
    max_framebuffers=2

    # Don't have the firmware create an initial video= setting in cmdline.txt.
    # Use the kernel's default instead.
    disable_fw_kms_setup=1

    # Disable compensation for displays with overscan
    disable_overscan=1

    # Run as fast as firmware / board allows
    arm_boost=1

    [cm4]
    # Enable host mode on the 2711 built-in XHCI USB controller.
    # This line should be removed if the legacy DWC2 controller is required
    # (e.g. for USB device mode) or if USB support is not required.
    otg_mode=1

    [all]

    dtparam=pciex1
    dtparam=pciex1_gen=2


    allerdings bin ich mir nicht sicher ob dieser Befehl auch auf der nvme ausgeführt wurde oder ob weiterhin die SD Karte angezeigt wird. Ich denke, dass es zum Testen am einfachsten wäre, wenn ich das System mit sudo shutdown -h now herunterfahre, die SD Karte ausbaue und den Raspi starte. Oder siehst Du @Sledge eine andere Möglichkeit ?

    Edited 4 times, last by FastEddie (March 6, 2024 at 12:54 PM).

  • Bevor Du die SD-Karte rausnimmst schau mal ob und wo das Boot Flag gesetzt ist:


    Code
    sudo fdisk -l /dev/nvme0n1
    sudo fdisk -l /dev/mmcblk0

    Gibt es in dem /boot/firmware Pfad auch die cmdline.txt? Wie sieht deren Inhalt aus?

    Edited once, last by Sledge (March 6, 2024 at 1:19 PM).

  • Nachdem ich die SD Karte entfernt und neu gebootet habe hatte ich keinen Internetzugriff und konnte mich auch nicht auf den Raspi aufschalten. SD wieder rein, reboot, alles funktioniert.

    Hier die Ausgabe der beiden Befehle:

    root@raspberrypi ~ > sudo fdisk -l /dev/nvme0n1
    Disk /dev/nvme0n1: 465.76 GiB, 500107862016 bytes, 976773168 sectors
    Disk model: CT500P3SSD8
    Units: sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disklabel type: dos
    Disk identifier: 0xb1634a50

    Device Boot Start End Sectors Size Id Type
    /dev/nvme0n1p1 8192 1056767 1048576 512M c W95 FAT32 (LBA)
    /dev/nvme0n1p2 1056768 976773167 975716400 465.3G 83 Linux

    root@raspberrypi ~ > sudo fdisk -l /dev/mmcblk0
    Disk /dev/mmcblk0: 29.12 GiB, 31266439168 bytes, 61067264 sectors
    Units: sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disklabel type: dos
    Disk identifier: 0xb1634a50

    Device Boot Start End Sectors Size Id Type
    /dev/mmcblk0p1 8192 1056767 1048576 512M c W95 FAT32 (LBA)
    /dev/mmcblk0p2 1056768 61067263 60010496 28.6G 83 Linux

    Hier der Inhalt der cmdline.txt
    console=serial0,115200 console=tty1 root=PARTUUID=b1634a50-02 rootfstype=ext4 fsck.repair=yes rootwait

    Soll wie im rot markierten Bereich, wirklich derselbe Eintrag stehen ?

    Edited 3 times, last by FastEddie (March 6, 2024 at 1:34 PM).

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!