Test Linux Ubuntu Image 2024-01-15 für Banana Pi BPI-M6

Wer den neu auf den Markt gekommenen Banana Pi M6 noch gar nicht kennt, sollte sich meine vorhergehenden Artikel zuvor durchlesen. Zum einem die allgemeine Vorstellung des Banana Pi BPI-M6 und dann vielleicht noch meine Anleitung, wie man Images, also Betriebssystemabbilder wie die Android Tablet Firmware ins eMMC hochlädt / flasht.

Wer sich auch für das Android Image interessiert, der kann sich auch noch den Artikel Banana Pi BPI-M6: Test des Android Tablet Images zu Gemüte führen, der außerdem noch etwas zur Kühlung verrät.

Die Artikel über die Probleme mit meinen SD-Karten Slot könnt ihr ersteinmal überspringen, auf diese Probleme wird man normalerweise nicht treffen, wenn man einen nicht defekten Banana Pi bekommen hat, was wohl die Regel sein sollte. Für dennoch Interessierte empfehle ich meine Artikel Debugging: Mein Banana Pi BPI-M6 will nicht von SD Karte booten, ... mehr Debugging und Hardware Debugging mit dem Oszi....

Ersatzgerät ist da!


Nach ein bisschen hin und her mit dem Service von Banana Pi - erst sollte ich eine angeblich inkompatible SD-Karte benutzen - haben sie zugestimmt, mir ein Ersatzgerät zuzuschicken. Das ging dann auch recht flott und nach einer Woche war das Gerät aus China dann auch bei mir angekommen.

Außer der Verpackung, die jetzt ein bisschen bunter ist, ist äußerlich an dem neuen M6 alles gleich.

Da ich schon von meiner ersten BPI-M6 weiß, dass der VS680-SoC nach längerem Betrieb ziemlich heiß werden kann, habe ich mich zuerst einmal um eine entsprechende Kühllösung gekümmert. Einen passenden Kühlkörper wie beim ersten Exemplar habe ich in meinem Vorrat nicht gefunden, nur kleinere und größer. Die kleineren waren mir zu klein, also habe ich mir etwas aus einem größeren Aluminium-Kühlkörper zurechtgesägt und -gefeilt. Dem defekten BPI-M6 wollte ich seinen Kühlkörper nämlich lassen, immerhin taugt der noch dafür, um von eMMC zu booten.

Diesmal habe ich selbstklebende Wärmeleitpads von Jeyi benutzt, die mit einer Pad-Größe von 15 x 15 x 0.2 mm schon recht passend waren. Das bisschen Überstand ließ sich einfach mit einer Schere abschneiden. Diese Wärmeleitpads sind sehr bequem und funktionieren im Prinzip wie doppelseitiges Klebeband. Das heißt, der Kühlkörper klebt richtig auf dem SoC und verschiebt sich nicht. Bei der Wärmeleitpaste, die ich vorher benutzt hatte, eine Arctic MX-4 wurde die Paste bei Hitze flüssiger und der Kühlkörper verschob sich bei leichter Berührung.

Die MX-4 hat allerdings eine bessere Wärmeleitfähigkeit von 8.5 W/mK; die Jeyi Wärmeleitpads bringen "nur" 5 W/mK, aber ich finde das einen guten Wert für den Komfortgewinn. Für angepresste CPU wie im Desktop-Rechner ist aber immer noch die Wärmeleitpaste mein Favorit, hier kann ja nichts verrutschen.

Mit dem Kühlkörper auf dem SoC kann man den M6 natürlich nicht mehr gescheit hinlegen. Darum habe ich, wie auch schon bei meinem ersten Banana Pi, ein paar Ständer aus meinem 3D-Drucker gelassen und diese mit Holzschrauben, die ich direkt in Löcher im Plastik geschraubt habe, mit dem Board verbunden. Hier muss man allerdings höllisch auspassen, dass die Schraubenköpfe nicht zu groß sind, denn direkt in der Nähe befinden sich SMD-Komponenten und wir wollen die doch nicht kurzschließen.

So kann ich den Banana Pi auch auf einen kleinen Ventilator stellen, der auf niedrigster Stufe ein genügend starken Luftstrom erzeugt, damit das SoC auf dem Pi auch unter Volllast angenehm kühl bleibt. Durch den Lufthauch werden auch die anderen Komponenten (RAM, Flash) genügend mitgekühlt.

Meine beiden Banana Pi und deren Kühllösungen stelle ich kurz in diesem Video vor:

Test des Linux Ubuntu Images

Mit der bereits erstellen Boot-SD auf der SanDisk 32GB SD-Karte lässt sich der neue Banana Pi M6 sofort hochbooten (SPI drücken nicht vergessen). Diesmal funktioniert der SD-Slot einwandfrei. Also werde ich ein wenig mutiger und bestücke eine 128GB SD-Karte (auch von SanDisk) mit dem inzwischen neu herausgekommenen Image 2024-01-25-ubuntu-20.04-mate-desktop-vpu-npu-bpi-m6-aarch64-sd.img. Wenn, dann will ich mir doch auch die neueste Version anschauen.

Es dauert nur ein paar Sekunden und Ubuntu empfängt mich mit einem grünen Hintergrundbild. Ich finde, der M6 hat echt schnell gebootet.

Oben links sehe ich im Start-Menü auch gleich schon ein Firefox-Icon, dass auf dem Image bereits vorinstalliert ist. Im Banana Pi Forum hatte zwei Leute das Problem, dass ihr Ethernet-Port wohl nicht so richtig funktionierte und haben die Bitte formuliert, das doch bitte mal zu testen.

Also stecke ich mein Ethernet Kabel an meinen Router, der wie der M6 auch 1 Gbit/s kann. Die kleine LED beim Ethernet-Port flackert auch fröhlich. Danach öffnet ich den Firefox-Browser und gebe die URL meiner Website ein: cool-web.de. Funktioniert auf Anhieb. Meine Website erscheint. Keinerlei Probleme bei mir mit dem Ethernet-Port.

Als nächstes will ich mir gleich mal im Firefox anschauen, wie sich der Banana Pi M6 mit der Videowiedergabe im Browser tut und starte dafür ein Video auf meiner Website.

Kein Sound !?

Als erstes fällt mir auf, dass ich nichts höre. Das Video spielt ohne Ton ab. Wo ist nur der Sound geblieben? Seltsam. Jetzt wird doch nicht statt der SD-Slots diesmal der Sound auf HMDI-out kaputt sein? Ich frage mich schon, wieviel Pech man denn haben kann...

Aber dann komme ich auf die Idee, den Sound mal mit dem Android Image zu testen, dass ich auf den eMMC-Speicher flashe. Siehe dazu auch meine Anleitung, wie man Images, also Betriebssystemabbilder wie die Android Tablet Firmware ins eMMC hochlädt / flasht. Denn ich erinnere mich, dass auf meinem alten M6 der Sound unter Android funktionierte.

Und zu meiner Überraschung funktioniert der Sound beim Video, dass ich mir unter dem Android Image anschaue, einwandfrei. Hier wird die Soundspur des Youtube-Videos wie gewünscht über HDMI-out ausgegeben.


Da scheint irgendwie der Soundtreiber im Ubuntu-Image zu fehlen. In den Einstellungen unter Sound Preferences / Hardware ist auf jeden Fall nichts zu finden und beim Output gibt es nur den Dummy Output. Hier muss Banana Pi dringend noch nachbessern und dafür sorgen, dass der Ton unter Ubuntu funktioniert.

Denn auch andere Programme wie Celluloid, der MP3-Player bleiben komplett stumm. Unter dem Android Image mit dem selben Pi allerdings funktioniert die Ausgabe. Kann also nur ein Software / Treiberproblem sein.

Videoperformance unter Firefox


Wo ich schon in Youtube bin, schaue ich mir doch gleich mal die Performance an. Die GPU/VPU des M6 soll ja 4Kp60 H265, H264, VP9, VP8, AV1, MPEG-2 video Decoding beherrschen. Wobei AVC1, in dem mein Video kodiert ist, H.264 entspricht. Das kann der M6 also in Hardware und sollte das mit entsprechender Performance tun.

Für eine flüssige 1080p Darstellung in Vollbild reicht es allerdings nicht, zumindest nicht in Firefox. Über ein Viertel der Frames, also Einzelbilder, gehen verloren, was einen abgehackten Eindruck hinterlässt. Ist die Darstellung nicht bildschirmfüllend, dann geht die Wiedergabe okay, aber man will 1080p natürlich bildschirmfüllend anschauend, wo wäre sonst der Sinn?

Und selbst bei niedrigeren Auflösungen, die man bei Youtube wählt, hapert es mit der Fullscreen-Darstellung. Ich glaube fast, das es nicht am Decoding des Videomaterials liegt, sondern vielmehr an dem Füllen des Bildschirms mit Pixeln. Denn später fällt mir auf, dass beim langsamen Fenster verschieben die Performance in den Keller geht. Das geht soweit, dass das Fenster nachzieht und mit den Mausbewegungen nicht mitkommt. Zum Glück kann man in den Ubuntu-Einstellungen die Darstellung des Fensterinhalts beim Verschieben abstellen, so dass man an dieser Stelle vernünftig damit arbeiten kann.

Zudem denke ich, dass die Videowiedergabe von Google Youtube Videos in einem Google Chrome / Chromium Browser flüssiger sein wird als im Firefox.

Kein Chromium wegen fehlender Snap-Unterstützung

Also denke ich mir: Kein Problem, dann installier ich halt Chromium und teste Youtube dort. Das heißt, ich versuche es:
pi@bananapi:~$ sudo apt install chromium-browser [sudo] password for pi: Reading package lists... Done Building dependency tree Reading state information... Done The following NEW packages will be installed: chromium-browser 0 upgraded, 1 newly installed, 0 to remove and 1 not upgraded. Need to get 0 B/48.5 kB of archives. After this operation, 165 kB of additional disk space will be used. Preconfiguring packages ... (Reading database ... 185343 files and directories currently installed.) Preparing to unpack .../chromium-browser_1%3a85.0.4183.83-0ubuntu0.20.04.3_arm64.deb ... => Installing the chromium snap ==> Checking connectivity with the snap store ==> Installing the chromium snap error: system does not fully support snapd: cannot mount squashfs image using "squashfs": mount: /tmp/syscheck-mountpoint-958550795: unknown filesystem type 'squashfs'. dpkg: error processing archive /var/cache/apt/archives/chromium-browser_1%3a85.0.4183.83-0ubuntu0.20.04.3_arm64.deb (--unpack): new chromium-browser package pre-installation script subprocess returned error exit status 1 Errors were encountered while processing: /var/cache/apt/archives/chromium-browser_1%3a85.0.4183.83-0ubuntu0.20.04.3_arm64.deb E: Sub-process /usr/bin/dpkg returned an error code (1)
Das Passwort für den User "pi" ist übrigens "bananapi". So naheliegend, dass ich selbst durch Ausprobieren darauf gekommen ist. Das steht aber bestimmt auch irgendwo, hab's nur nicht gleich gefunden.

Dummerweise stimmt mit dem Ubuntu-Image in Sachen Snap etwas nicht. Snap ist ein Paketformat, dass neben DEB-Paketen aus der normalen Paketverwaltung installiert und genutzt werden kann. Das Installationspaket von Chromium, so heißt der Chrome Browser unter Linux, verwendet das Snap-Paketformat. Aber unser Ubuntu mag nicht mit Snap zusammenarbeiten. Also auch kein Chromium Browser. Was sehr schade ist.

Auch das Reinstallieren von Snap hat bei mir keinen Erfolg gebracht. Ich habe es nicht hinbekommen, Chromium zu installieren. Der Test der Youtube-Performance unter Chromium muss also ausbleiben.

Und auch hier sollte Banana Pi nachbbessern: Snap sollte funktionieren, denn einige Programme benutzen dieses Paketformat.

Software

Von diesen beiden Unzulänglichkeiten mal abgesehen, die wie ich hoffe, in der nächsten Image-Version ausgeräumt sein werden, kann man mit dem Ubuntu-Image schon jede Menge anfangen. Es ist auch schon einiges an nützliches Software vorinstalliert: Aber man kann natürlich auch Software nachinstallieren. Die unter Admninstration auffindbare "Software Boutique" funktioniert leider nicht, aber der "Synaptic Package Manager" tut es. Auch hier ist das Passwort wieder "bananapi". Danach kann man in Kategorien stöbern oder nach bekannten Programm-Namen suchen. Die Pakete, die man dann gefunden hat und installieren will, hakt man dann einfach an und klickt zum Abschluss "Apply", was alle angehakte Pakete installiert.

Allerdings wollte Chromium auch hier nicht und führte zur selben Fehlermeldung wie beim händischen Versuch von mir oben. Kein Wunder, der Paket Manager ist ja eigentlich nichts anderes als ein grafischen Benutzerinterface für APT. Allerdings ist der Paketmanager sehr viel komfortabler, gerade bei der Suche nach neuen Programmen.

Ich habe mir die Spiele AisleRiot Solitaire und Mines nachinstalliert, die auch gut funktionieren. Als Grafikprogramm habe ich mir noch das mächtige Gimp installiert, dass auch in annehmbarer Zeit startet.

Außerdem habe ich mir noch Kodi installiert. Das hat mich allerdings ein wenig enttäuscht. Schon im normalen Menü zog der Mauszeiger nach. Die weitere Performance habe ich dann gar nicht mehr damit getestet.

Das vorinstallierte Celluloid hat allerdings bei der Wiedergabe von Videos einen ganz guten und halbwegs performanten Eindruck gemacht.

HDMI-in Unterstützung

Als nächstes teste ich noch, ob ein HDMI-in Gerät als Webcam angesehen wird. Das der M6 nicht nur über einen HDMI-out Anschluss, sondern auch über einen HDMI-in-Anschluss verfügt, ist ja ein besonderes Feature von ihm.

Ich schließe also meinen C64 Mini, der ein stabiles Bild und Sound über HDMI liefert, an HDMI-In des Pis an und starte die App "Cheese". Mit der soll man Fotos von der Webcam aufnehmen und mit Effekten versehen können. Allerdings gibt Cheese nur ein "No Device found" aus und zeigt ansonsten einen schwarzen Bildschirm an. Als Webcam wird der HDMI-Eingang also schon mal nicht angesehen.

Das wäre allerdings schön, um den HDMI-Eingang auch in der Software nutzen zu können. Aber vielleicht kommt das ja noch und der HDMI-In-Treiber fehlt nur noch.

Fazit zum Image

Mit dem Ubuntu Image 2024-01-25 kann man schon sehr viel mehr anfangen als mit dem Android Image, dass ja nicht mal über einen Play Store verfügte.

Mit dem Ubuntu Image kann man nach Herzenslust Software nachinstallieren und ausprobieren - vorausgesetzt, es nutzt snap nicht.

Aufruf an Banana Pi: Bitte stellt Snap-Kompatibilität her. Chromium sollte man schon benutzen können. Außerdem schienen einige vorinstallierte Programme nicht zu funktionieren und taten nach dem Aufruf einfach nichts.

Insgesamt kam mir der M6 mit dem Ubuntu Image recht performant vor, sei es beim Hochfahren oder starten von Programmen. Allerdings ist wohl die Darstellung der Pixel auf dem Screen noch nicht ganz so schnell, wie es wohl sein könnte - bzw. sollte. Video in Full HD in Fullscreen sollte man schon ohne Aussetzer schauen können.

Das nirgendwo Sound zu hören ist, geht nun mal gar nicht. Hier muss Banana Pi schnellstens nachbessern. Ich hoffe, die Wichtigkeit ist Banana Pi Org bewusst und das nächste Image ist dann nicht mehr stumm.

Video

Meinen ausführlichen Test des Ubuntu Images vom 25. Januar 2024 könnt ihr hier auf Youtube schauen:

Weitere Aussichten

Wie sich der Banana Pi M6 in Sachen Performance zu den Konkurrenzprodukten Raspberry Pi und evtl. auch Orange Pi schlägt, werde ich im nächsten Artikel behandeln. Ich muss nur noch ein Benchmarkprogramm finden, dass auf allen Platformen läuft und vergleichbare Daten liefert.

Quellen, Literaturverweise und weiterführende Links