Skip to main content

Raspberry Pi CM5 Boot Image eMMC
Problémy s instalací systémového softwaru

Úvod Problém

Pro nový projekt jsme se rozhodli použít jako hardwarovou platformu Raspberry Pi Compute Module 5 (CM5).

Obdržel jsem vývojovou sadu, která se skládá z:

  • Compute Module 5 (4 GB RAM and 32 GB eMMC)
  • 27W USB-C Type-C PD Power Supply
  • Compute Module 5 IO Board
  • Antenna Kit
  • Compute Module 5 IO Case
  • 2 x HDMI® to HDMI® Cable
  • Cooler for Compute Module 5
  • USB-A to USB-C Cable.

Výpočetní modul 5 IO Case

Cíl

Pro zjednodušení vývoje jsem chtěl spustit systémový software (raspiOS) z karty microSD, protože Compute Module 5 IO Board obsahuje slot pro kartu microSD.

Použil jsem Raspberry Pi Imager k flashování nejnovějšího operačního systému Raspberry Pi na kartu microSD, vložil kartu do slotu na desce IO a zapnul systém.

Místo zavedení operačního systému se však na displeji objevila terminálu podobná zpráva "SD: karta nebyla detekována" a systém nenaběhl.

Příčina a následek

Po chvíli pátrání jsem našel vysvětlení v dokumentaci k Raspberry Pi pro Compute Module 5:

  • slot pro kartu microSD (pouze pro použití s variantami Lite bez eMMC; ostatní varianty slot ignorují)

To znamená, že slot microSD je použitelný pouze u varianty "Lite", která neobsahuje vestavěné úložiště eMMC. Můj CM5 má 32 GB eMMC, takže slot SD je zakázán a při spouštění systému ignorován.

Správný způsob instalace systémového softwaru na CM5 s eMMC

Chcete-li nainstalovat operační systém do zařízení CM5 s eMMC, postupujte podle oficiálních pokynů pro. setting up the IO Board.

Zásadním krokem je umístění propojky na header J2 na desce IO. Tím se zařízení CM5 přepne do zaváděcího režimu USB, což umožní hostitelskému počítači přistupovat k eMMC jako k hromadnému úložnému zařízení.

Výpočetní modul 5 IO Board

Problém s rpiboot a řešení

Na svém vývojovém počítači (Ubuntu 22.04) jsem zpočátku zkoušel nainstalovat rpiboot s:

sudo apt install rpiboot

Tato verze však nefungovala správně - pravděpodobně proto, že byla zastaralá nebo nekompatibilní s CM5.

Místo toho jsem musel sestavit rpiboot ze zdrojových kódů. Postupujte podle tohoto návodu:

Klonujte oficiální repozitář:

git clone --recurse-submodules --shallow-submodules --depth=1 https://github.com/raspberrypi/usbboot
cd usbboot

Nainstalujte závislosti a sestavte:

sudo apt install git libusb-1.0-0-dev pkg-config build-essential
make

Spusťte rpiboot

s připojeným CM5 a s nasazenou propojkou J2:

sudo ./rpiboot -d mass-storage-gadget64

Systém detekuje eMMC CM5 a nyní na něj můžete flashnout operační systém pomocí Raspberry Pi Imager nebo dd.

Souhrn

  • Slot SD CM5 funguje pouze u variant Lite (bez eMMC).
  • Chcete-li flashovat CM5 s eMMC, musíte:
    ** Nastavte propojku J2.
    ** Použijte rpiboot pro vystavení eMMC přes USB.
  • Pokud přibalený rpiboot nefunguje, sestavte jej ze zdrojových kódů.

Jakmile to uděláte, můžete flashovat operační systém Raspberry Pi přímo na eMMC, jako by to byla karta SD.