Raspberry Pi Compute Module 5, die (für mich) ultimative Kodi Maschine.

  • Hi.

    Da gleich mein CM5 ankommen wird und ich nachher wohl mehr mit Installieren als mit Schreiben beschäftigt sein werde, fange ich schon mal mit dem an, was ich ohne die Teile da zu haben, schon schreiben kann.

    Zuerst mal, was ist das überhaupt, dieses Compute Module? Nun, im Prinzip ist das eine "Embedded" Version vom Raspberry Pi und lässt sich auf der offiziellen Raspberry Pi Webseite nur unter "For Industry" finden, nicht unter "For Home". Warum, erschließt sich mir nicht so ganz, wie man später noch sehen wird. Sei es drum... Ein Compute Module ist ein Raspberry Pi ohne irgendwelche Standard- Anschlüsse. Es gibt kein Netzwerk, kein USB, ja nicht mal einen Stromanschluss auf dem Modul. Stand Alone ist das Compute Module zu nichts zu gebrauchen, ein zu leichter Briefbeschwerer vielleicht. Im Prinzip kann man sich das so vorstellen, als ob man eine CPU in den Händen hält. Exakt ist das nicht, da auf dem CM alles, was sonst auf dem Mainboard ist, schon integriert ist, nur nicht nach Außen geführt wird. Wobei, eigentlich ist auch das nicht korrekt, denn das CM hat auf der Unterseite zwei Spezial- Steckerleisten, über die alles läuft.

    Um ein CM nutzen zu können, braucht es eine IO- Platine, auf die man das CM stecken kann. Diese kann man selber entwickeln (deswegen "For Industry") oder auch ein Standard IO-Board dazu kaufen. Damit hat man dann wieder alle Anschlüsse, die man so gewohnt ist. Und was bringt das jetzt, dann kann man doch gleich einen "normalen" RasPi nutzen? Nun, der RasPi 5 ist sehr schnell und läuft extrem stabil mit Libre Elec, mit Abstand das Beste, was ich je für Kodi gesehen habe. Aber auf Grund des winzigen Formats des RasPi gibt es einige Einschränkungen bei den Anschlüssen. Zum einen hat der RasPi nur Micro HDMI Anschlüsse, welche fummelig und empfindlich sind. Ganz abgesehen davon, das sie selten sind und man nur in Ausnahmefällen etwas passendes dazu auf Vorrat hat. Daneben benötigt der RasPi eine Zusatzplatine, um eine NVMe einbauen zu können, für mich absolut unverzichtbar, da nur mit einer NVMe der Warp Antrieb beim RasPi 5 gezündet wird. Von USB Stick oder SD Karte ist der RasPi 5 um Welten langsamer und träger als von NVMe. Habe ich selbst ausprobiert und der Unterschied ist wirklich krass. Also wenn RasPi 5, dann mit NVMe. Diese Zusatzplatinen werden mit einem sehr fummeligen Flachkabel verbunden. Das ist unzuverlässig, störanfällig und versperrt den Zugang zum SD Steckplatz. Bei dem IO Board ist der NVMe Steckplatz direkt auf der Platine, also ganz ohne diese fummelige Kabel. Deswegen ist auch der SD Steckplatz völlig frei zugänglich. Außerdem hat das IO Board gleich PoE Unterstützung eingebaut, die beim RasPi extra als Zusatzplatine hinzugekauft werden muss. Auf dem IO Board ist zusätzlich auch eine Echtzeituhr mit Pufferbatterie unter gebracht (müsste man beim Pi auch extra kaufen) und noch diverse Anschlüsse, die für uns als Kodi Gerät nicht wichtig sind, und auf die ich deswegen nicht näher eingehe.

    Dafür ist das IO- Board ein gutes Stück größer als ein RasPi. Sonst wäre einfach nicht genug Platz. Ich mache nachher ein paar Fotos von den Einzelteilen, auch im Vergleich zu einem "normalen" RasPi, damit man das abschätzen kann.

    Gekauft habe ich mein CM 5 bei Berrybase. Und zwar genau folgendes:

    Neben dem CM 5 und dem IO Board auch einen passiven Kühler für das CM 5. Vom CM 5 gibt es viele Versionen, mit 2, 4, 8 oder 16 GB RAM, mit und ohne WLan/BT und mit oder ohne eMMC Speicher. So viel Auswahl gibt es beim RasPI 5 nicht. Da kann man nur zwischen den unterschiedlichen RAM Varianten wählen. Da ich kein WLan brauche, habe ich mein CM 5 eben ohne bestellt. 8GB RAM hat mein RasPi 5 auch schon. Da wollte ich mich nicht verschlechtern, auch wenn 4 GB sicherlich locker reichen würden. Zum eMMC Speicher muss man noch erwähnen, das, sofern eMMC Speicher vorhanden ist, der SD Kartensteckplatz nicht mehr funktioniert. Die Leitungen dafür werden dann vom eMMC belegt. Mir war der Steckplatz lieber, weil deutlich universeller. Dafür verzichte ich gerne auf das etwas mehr an Geschwindigkeit, das der eMMC gegenüber der SD Karte liefert. Denn beides ist total lahm im Vergleich zu einer NVMe. Deswegen habe ich die "Lite" Ausführung bestellt, die keinen eMMC Speicher on Board hat.

    Preislich tut sich das Ganze nichts. Das CM5 ist etwas billiger als ein RasPi5, dafür ist das IO-Board etwas teurer als eine NVMe Zusatzplatine. Braucht/Nutzt man PoE, ist die CM5 Variante wohl etwas günstiger. Auch der Passiv-Kühler ist minimal günstiger als ein solcher für den Pi 5. Alles in allem spielt das aber keine Rolle. Die Unterschiede sind marginal.

    Als Netzteil werde ich zu Beginn das vom Pi 5 nutzen. Ist ohnehin dasselbe wie für das CM5. Später will ich aber auch mal PoE testen. Und das Gehäuse werde ich selber drucken. Ich habe auf Thingiverse ein Gehäuse für das CM4 entdeckt. Da zum Glück auch eine OpenSCAD Datei dabei ist, kann ich das Gehäuse ganz einfach an die leicht anderen Ausschnitte des CM 5 IO Boards anpassen. Als NVMe kommt eine 256 GB SP Silicon Power A60 [Anzeige] (Made in Taiwan) NVMe rein.

    Zur Vorbereitung für heute Nachmittag habe ich mir schon mal eine SD Karte mit dem aktuellsten PiOS Lite bespielt. Damit will ich nachsehen, ob das CM5 schon den neuesten Bootloader geflasht hat und falls nicht, das damit nachholen. Dafür tut es jede beliebige SD Karte, die man noch so rum liegen hat. Vielleicht reicht sogar eine 1 GB Karte, 2 GB langt auf jeden Fall. Meine kleinste Karte hat aber 16 GB, also weit mehr als nötig. Man kann auch später unter LibreElec den Bootloader aktualisieren. Allerdings braucht man einen ziemlich neuen Bootloader um die Installation über Netzwerk zu bekommen. Damit braucht man LE (oder auch andere OS, je nachdem, was man möchte) nicht mehr extern auf die NVMe spielen, sondern kann die Installation direkt aus dem Bootloader heraus übers Internet erledigen. Im Prinzip ist der "Raspberry Pi Imager" jetzt im Bootloader eingebaut.


    Ich werde noch ein paar Beiträge "reservieren", damit der Aufbau am Stück zu finden ist. Später dann mehr zu meinem neuen Schätzchen.

    -------------------------------------
    Danke fürs lesen, Claus

  • Die bestellten Teile sind angekommen und ich habe mich gleich an die Montage gemacht. Das war noch weniger kompliziert als gedacht. Zuerst mal die einzelnen Teile:

    Links oben ist ein "normaler" Raspberry Pi (ein 3B in diesem Fall, spielt aber keine Rolle, die sind alle gleich groß). Links unten das Compute Module 5 und recht das CM5 IO- Board.

    Zusätzlich noch mal das IO-Board neben einem Mini-ITX x86 Mainboard... Das System wird schon spürbar größer als ein RasPi, aber immer noch deutlich kleiner als eine Mini-ITX Lösung. Und hier noch fertig montiert:

    Man sieht von links 2 mal HDMI, GBit LAN mit PoE, 2 mal USB 3.2 (der Pi 5 hat nur 3.0 und 2.0), USB-C Stromanschluss, µSD Kartensteckplatz und den NVMe Steckplatz. Links ist die CR 2032 darüber die GPIO Pins, Pin- kompatibel zum RasPi 5 und hinten 2 mal Kamera/Display Anschluss und dazwischen den Power Schalter. Daneben ist eine weitere Pin- Leiste und rechts vom Kühler noch der Stromanschluss für den Lüfter, sofern man einen aktiven Kühler verwendet.

    Die Montage beschränkt sich auf das Aufstecken des CM5, das Anschrauben des Kühlers, das Einsetzen der NVMe und das Einschieben der CR2032 Pufferbatterie für die RTC. Die Batterie wird nicht mitgeliefert, gibt es aber in jedem Ramschladen für ein paar Cent. CR2032 ist die wohl gängigste Knopfbatterie überhaupt. Eine Anleitung ist nicht dabei, aber wohl auch nicht notwendig.

    Das Aufstecken des CM ging erstaunlich leicht. Hätte ich mir komplizierter vorgestellt. Ich weiß nicht, ob man es falsch rum aufstecken kann. Dann würden die Befestigungslöcher für den Kühler aber nicht mehr fluchten. Das merkt man also sofort...

    Der Kühler wird mit 4 Schrauben von unten angeschraubt. Die Schrauben werden beim Kühler mitgeliefert. So lange man das CM 5 nicht dauernd unter Last laufen hat, braucht man nicht zwingend einen Kühler. Belastet man es konstant über Stunden mit 100%, kann je nach Luftstrom sogar der Passiv- Kühler noch zu wenig sein und es zu Thermal Throttling kommen. Im Alltag ist man mit dem passiven Kühler zu 5,50€ aber immer auf der sicheren Seite. Ein aktiver Kühler ist nur bei permanenter Höchstlast notwendig. Auf Grund des winzig kleinen Lüfters sind diese Dinger aber furchtbar laut. Würde ich mir nie antun wollen, schon gar nicht bei einer Kodi Box.

    Die NVMe wird genau so montiert wie bei jedem "gewöhnlichen" Mainboard auch. Die Montageschraube ist beim IO-Board dabei. Es passen alle gängigen M.2 NVME Form Faktoren auf das Board, also auch die "langen" 2280 wie bei mir. Die NVMe muss mit M-Key kodiert sein (sind sie fast immer), sonst passt sie nicht. Ältere M.2 SATA SSD funktionieren nicht, nur NVMe.

    Alles in allem dauert die Montage keine 5 Minuten. Man benötigt außer einem kleinen Kreuz- Schraubenzieher zum Anschrauben des Kühlers kein Werkzeug dafür.

    Im nächsten Teil geht es dann um die Software- Einrichtung.

    -------------------------------------
    Danke fürs lesen, Claus

    Einmal editiert, zuletzt von Lehmden1 (5. Februar 2025 um 12:44)

  • Hier also noch die Beschreibung, wie ich LibreElec ohne zusätzliche Hardware (abgesehen von einer SD Karte) auf die NVMe des CM5 IO Boards installiert habe. Zunächst war der Bootloader nicht aktuell, wie ich schon befürchtet hatte. Ich musste also erst mal von einer SD Karte booten und den Bootloader aktualisieren. Das geht exakt genau so wie beim RasPi 5. Man schreibt das PiOS auf eine SD Karte, am besten mit dem Raspberry Pi Imager. Ich habe zunächst PiOS Lite, also das OS ohne GUI genommen, musste aber auf PiOS mit Desktop umschwenken. Warum das GUI notwendig ist, folgt gleich. Nimmt man den "Original-" Imager kann man gleich ein paar Anpassungen vornehmen. Die Wichtigste davon ist, SSH zu aktivieren. Verwendet man ein "neutrales" Tool wie Rufus oder Etcher, so ist SSH zunächst nicht aktiviert. Und das ist, zumindest wenn man die Box an einem hochauflösendem TV oder Monitor hängen hat, absolut unverzichtbar. Denn auf einem 4K Monitor ist die Schrift in CLI und GUI so extrem winzig, das man beim besten Willen nichts mehr lesen kann. Alles, was mehr als Standard VGA Auflösung hat, ist zu viel ohne Anpassungen. Wenn man das OS auf der SD Karte hat, steckt man sie in den SD Steckplatz des IO Boards und schaltet den Strom ein. Das CM 5 sollte nun das PiOS booten. Nun loggen wir uns per SSH mit den zuvor im Imager festgelegten Zugangsdaten auf dem System ein. Das geht unter Windows z.B. mit dem kostenlosen Tool Putty. Bei Linux ist sowieso fast immer ein SSH Klient installiert und auch für Mac gibt es so etwas. Selbst vom Smartphone aus könnte man das machen. Das sieht dann so (ähnlich) aus.

    Als erstes bringen wir mal das OS auf den aktuellen Stand. Dazu tippen wir nacheinander diese beiden Befehle ein:

    Code
    sudo apt-get update

    und danach

    Code
    sudo apt-get upgrade

    Die Befehle jeweils mit der Eingabetaste absenden. Das wird eine Weile dauern, denn damit wird das OS aktualisiert. Ähnlich wie die Windows Updates dauert das eine ganze Weile. Das Upgrade muss man meist noch mal bestätigen, mit y oder j, je nachdem, welche Sprache aktiv ist. Bei der Lite Version ohne GUI geht das zwar deutlich schneller, aber wir benötigen gleich den RaspberryPi Imager auf dem CM 5. Und der läuft nur, wenn ein GUI vorhanden ist. Beim RasPi 5 soll es ja die Möglichkeit geben, ein OS (auch LibreElec) direkt aus dem Bootloader heraus aus dem Internet zu laden und installieren. Leider funktioniert das nicht auf dem CM5 oder ich habe es zumindest nicht hin bekommen. Also muss ich auf der SD Karte ein Desktop OS installieren, um per RaspberryPi Imager Libre Elec auf die NVMe zu spielen. Deswegen PiOS mit Desktop statt PiOS Lite. Da man für den Bootloader in der Regel sowieso eine SD Karte mit einem OS braucht, kann man dafür auch gleich die Desktop Variante nehmen und spart sich das externe Bespielen der NVMe, wozu ja wieder extra Hardware notwendig ist.

    Wenn das OS aktuell ist, aktualisiert man zunächst den Bootloader. Das geht mit dem Befehl

    Code
    rpi-eeprom-update

    Hiermit wird einem der installierte Bootloader angezeigt. Wenn da bereits ein Bootloader aus 2025 angezeigt wird, kann man sich das Update sparen. Der aktuellste Bootloader ist Stand heute die Version vom 22. 1.2025. Sollte der Bootloader nicht aktuell sein, geben wir folgenden Befehl ein:

    Code
    sudo rpi-eeprom-update -a

    Damit wird der Bootloader auf die aktuellste Version aktualisiert. Danach ist ein Reboot angesagt, um den Bootloader auch zu aktivieren. Da wir sowieso per SSH eingeloggt sind, geben wir dazu folgendes ein:

    Code
    sudo reboot

    Jetzt startet das CM5 neu. Die SSH Verbindung wird dabei getrennt. Also müssen wir uns nach dem Neustart erneut per SSH einloggen. Nun können wir mit dem Befehl:

    Code
    sudo raspi-config

    Anpassungen vornehmen. raspi-config entspricht grob gesagt dem BIOS/UEFI Einstellungen bei einem x86 System. Man sollte dabei beachten, das der Befehl raspi-config in LibreElec nicht vorhanden ist. Will man etwas anpassen, dann jetzt von SD Karte. Natürlich kann man auch später die SD Karte wieder einlegen und davon booten.

    Damit ist das CM 5 so weit vorbereitet und wir wollen langsam Libre Elec auf die NVMe bekommen. Da das Installieren aus dem Bootloader warum auch immer bei mir nicht funktioniert. habe ich den RaspberryPi Imager installiert. Das habe ich immer noch von meinem Desktop Rechner per SSH erledigt. Dazu gibt man folgenden Befehl ein:

    Code
    sudo apt install rpi-imager

    Mit etwas Glück ist der bereits installiert. Dann geht das blitzschnell. Sonst wird das Programm aus dem Internet geladen und installiert. Ab hier muss man dann ins GUI des CM5, was leider an meinem 4K TV extrem winzig ist. Ich habe, um das GUI lesbar zu machen, die Icon Größe mühsam auf Extra Large gestellt und die Fontgröße von 12 auf 32 vergrößert. Dann hat man eine Chance auch aus angemessener Entfernung irgendwas auf dem GUI zu erkennen.

    Danach habe ich den RaspberryPi Imager gestartet. Der ist leider immer noch so winzig, aber da ich die Bedeutung der Knöpfe kenne, habe ich es geschafft, mit dem linken Knopf als Device den Raspbery Pi 5 auszuwählen, der auch für den Pi 500 und das CM5 passt. In der Mitte haben ich dann unter "MediaPlayer OS > LibreElec und dann LibreElec (RPi5) ausgewählt. Als letztes wird rechts die NVMe ausgewählt. Bei mir tauchte da nichts anderes auf, denn die SD Karte ist ja das aktuell gebootete OS, was man nicht überschreiben kann. Um das auszuführen muss man noch mal das Login Passwort eingeben, eine typische Linux Nerverei. Man ist doch schon mit genau dem User und Passwort eingeloggt und muss ständig erneut diesen Mist eintippen. Moppelkotze, ehrlich.

    Aber das reicht immer noch nicht, damit das CM 5 von der NVMe bootet. Dazu muss man noch die Datei /boot/firmware/config.txt editieren. Dazu tippt man in der SSH Konsole folgendes ein:

    Code
    sudo nano /boot/firmware/config.txt

    Hiermit wird die config.txt in dem Linux Text- Editor "Nano" geöffnet.

    Ans Ende der Datei fügen wir zwei Zeilen ein:

    Code
    dtparam=pciex1
    dtparam=pciex1_gen=3

    Mit der ersten Zeile wird das PCIe Device (also unsere NVMe) als Boot- Device aktiviert. Die zweite Zeile stellt den PCIe Modus auf die schnellere 3x Variante ein. Das ist offiziell noch immer "experimentell", läuft aber schon lange "Rock solid". Wenn wir die beiden Zeilen eingegeben haben, beenden wir Nano mit STRG und x. Dann wird gefragt, ob der "Buffer", also der geänderte Text abgespeichert werden soll. Das bestätigen wir mit y (für Yes). Anschließend wird der Dateiname abgefragt. Hier steht der richtige Name bereits da und wir bestätigen das mit Enter.

    Nun geben wir noch:

    Code
    sudo shutdown

    ein. Damit fährt das CM5 nach einer kurzen Weile herunter. Wenn wir nun die SD Karte auswerfen und das CM 5 wieder einschalten, sollte LibreElec von der NVMe starten. Der RaspberryPi Imager hat hier tatsächlich die aktuelle Stable von Libre Elec installiert. Auf die Art bekommt man LibreElec ohne zusätzliche Hardware, abgesehen von einer temporär genutzten SD Karte (die sowieso jeder irgendwo herum fliegen hat), auf die NVMe geschrieben.

    Ab jetzt ist es nur noch Kodi- Vergnügen pur. Davon später mehr. Jetzt muss ich mir mein Kodi erst mal einrichten.

    -------------------------------------
    Danke fürs lesen, Claus

    2 Mal editiert, zuletzt von Lehmden1 (5. Februar 2025 um 17:37)

  • Ich pimp mal ein jeffs youtube videos.

    CM5 Overview:

    Externer Inhalt www.youtube.com
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.

    3 Jahre alt, CM4 IO boards - gibts viele von nicht wirklich zu kaufen, gibt aber unglaublich viele verschiedene auf dem Markt, und das Video gibt einen guten einblick, wie verschieden die sein koennen. Gibt noch wenige für CM5, aber man kann ja eben auch CM5 in CM4 IO boards stecken.

    Externer Inhalt www.youtube.com
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.

    Meine eigene Erfahrung ist bisher ja nur mit CM4. Da würde ja auch CM5 reinpassen:

    13.3inch CM4 Magic Mirror, Mini-Computer, Speech Assistant, Touch Control

    Aka: 13" OSMC Kodi Fernseher fürs Bad mit CM4. Da wo ich den brauchte passte eh nix groesseres.

    Funktioniert ganz gut, allerdings war die Idee, das Teil verspiegelt zu nehmen nicht so toll, Spiegeloberfläche braucht man dann doch nicht so, und reduziert den Kontrast wenn man da TV schaut. Gibts aber auch ohne Spiegeloberfläche. Zweites Problem ist, das der Lautsprecher nicht sooo toll ist, etwas zu leise für wenn man duscht oder so. Ich hab ja noch Bluetooth Lautsprecher in der Decke einbauen lassen (vom Badezimmer), aber leider ist der kombinierte BT/WiFi chip im RPI4 (/CM4) nicht gut genug das man zuverlässig gleichzzeitig TV streamen kann (WiFi) und BT streamen kann. Ton setzt dann immer aus. Evtl. Eher ein RF Problem. Keine Ahnung. Muss also doch ethrenetkabel legen. Man sieht, die Teufel sind im Detail. Aber so als Idee, touchscreen, BT remote mit Kodi auf RPI im Badezimmer - schon genial. Werde wohl mal versuchen muessen einen kleinen analogverstaerker mit reinzuloeten fuer den internen Lautsprecher.

    Einmal editiert, zuletzt von te36 (4. Februar 2025 um 17:12)

  • Ich musste Überraschend und Krankenhaus. Nix schlimmes aber ich muss hier übernachten. Melde mich wieder, wenn ich zu Hause nin

    Gute Besserung

  • Den Beitrag über die Hardware habe ich inzwischen fertig, siehe Beitrag #2. Der Teil über die Software wird vermutlich heute Abend kommen, aber keine Garantie.

    Zum Gehäuse... Es gibt für gut 15€ fertige Gehäuse für das CM 5 IO Board, die vermutlich auch besser aussehen werden. Aber ich bastele sowas gerne selbst, weswegen ich das lieber drucke als kaufe.

    -------------------------------------
    Danke fürs lesen, Claus

  • Den Beitrag über die Hardware habe ich inzwischen fertig

    Finde ich, da ich ja den "normalen" Raspi5 habe, sehr interessant. Übrigens, ein Tipp von mir bzgl. aktiven Lüfter. Ich habe ja einen auf meinen Raspi5 und den höre ich auch nicht, wenn ich direkt neben dem TV mit Raspi stehe. Anscheinend sind die hierfür angebotenen Lüfter da wirklich sehr unterschiedlich. Habe ihn auch auf 3,5 Volt (5 Volt Lüfter) angeschlossen. Die Temperatur steht bei Last bei nur 42 Grad. :) Ein wirklich cooler Raspi hält ja länger. ;) Bin gespannt, wie es bei dir weitergeht!

  • auch auf 3,5 Volt (5 Volt Lüfter) angeschlossen.

    Hm, der Originallüfter hat doch extra einen Anschluss auf dem Board und ist per PWM steuerbar und geht bei normalen Temperaturen gar nicht erst an?

    --------------
    Guides nicht mehr verfügbar wegen Youtube unvermögen guten von schlechten Kodi Videos zu unterscheiden.

  • Hm, der Originallüfter hat doch extra einen Anschluss auf dem Board und ist per PWM steuerbar

    Ich hab den alten Lüfter vom Raspi4 genommen. Der wird am Pin 40 Sockel angeschlossen. Wichtig ist da halt, die 3,5 Volt nehmen! Dann läuft er langsamer und es reicht trotzdem aus. Man hört ihn eben nicht, darum geht es ja auch bei so einigen. Hatte hier im Forum ja schon oft in älteren Postings hier im Forum gelesen, wo gschrieben wurde, der Lüfter beim Raspi sei zu laut. Das stimmt eben nicht. ;)

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!