← Alle Artikel

Aufbau eines TV-USB-Firmware-Pakets

Eine Firmware-Datei für ein USB-Update sieht aus wie ein undurchsichtiger Block, enthält aber mehrere Container-Schichten: eine äußere Hülle, ein Skript oder eine Tabelle und Partition-Images, oft komprimiert. Wer die Schichten kennt, weiß, was sich lesen, ändern und neu bauen lässt.

Teil des Leitfadens Firmware und Dumps.

Warum man hineinschaut

  • Um Versions-, Modell- und SoC-Strings zu finden, bevor Sie eine Datei auf den falschen Fernseher flashen.
  • Um zu sehen, welche Partitionen das Paket aktualisiert und welche es unberührt lässt.
  • Um ein Paket an ein anderes Panel oder eine andere Fernbedienung anzupassen, siehe die Seite Funktionen.

Die Schichten

  1. Äußerer Container. Je nach Hersteller ist das ein einfaches Archiv (tar, zip), ein herstellerspezifisches Format (das Programm erkennt LG EPK, Philips UPG und Android OTA) oder eine Rohbinärdatei mit Header.
  2. Skript oder Tabelle. Pakete auf MStar-Basis beginnen mit einem Textskript (Befehle wie filepartload), das dem Bootloader sagt, welcher Teil der Datei in welche Flash-Region gehört. Andere Familien verwenden eine Header-Tabelle.
  3. Partition-Images. Typische Nutzdaten sind ein Kernel, ein DTB, ein initramfs (cpio) und Dateisystem-Images wie squashfs, cramfs, ext4, UBI/UBIFS oder JFFS2, dazu Android-Sparse-Images und boot.img.
  4. Kompression. gzip, xz, lzma, bzip2, zstd und lz4 sind gängige Hüllen um diese Images und können verschachtelt sein.

Eine unbekannte Datei Schritt für Schritt lesen

  1. Notieren Sie Größe und Hash (MD5 oder SHA-256), damit Sie später erkennen, ob sich die Datei geändert hat.
  2. Sehen Sie sich die Header-Bytes und die lesbaren Zeichenketten an: Versionen, Modellnamen, SoC-Namen, Skriptzeilen.
  3. Suchen Sie nach Signaturen. Eine Magic Number allein beweist wenig, ein guter Scanner prüft daher auch die Struktur, die er findet (Größen, Header), um Fehltreffer zu vermeiden.
  4. Prüfen Sie die Entropie. Hohe, gleichmäßige Entropie bedeutet komprimierte oder verschlüsselte Daten; sehr niedrige Entropie bedeutet leeres Padding; gemischte Bereiche sind meist echte Dateisystem-Inhalte.
  5. Entpacken Sie Schicht für Schicht, mit begrenzter Verschachtelungstiefe, in einen sauberen Ordner.

Hat ein Image hohe Entropie und keine erkennbare Signatur, ist es wahrscheinlich verschlüsselt oder nutzt eine proprietäre Kompression. Werten Sie das nicht als Beschädigung und versuchen Sie nicht, es nach einer Hex-Bearbeitung zurückzuflashen: Signatur- oder Prüfsummenkontrollen im Bootloader können es ablehnen oder, schlimmer, eine defekte Datei akzeptieren. UNGEPRÜFT Welche Familien Signaturen prüfen, hängt vom Modell ab; schauen Sie in die Herstellerdokumentation.

Typische Fehler

  • Eine Datei nur nach der Bildschirmgröße auswählen und flashen. Vergleichen Sie die Platinen- und Panel-Kennungen in den Strings.
  • Ein Image an Ort und Stelle bearbeiten und die alte Prüfsumme oder das alte Größenfeld behalten.
  • Zweimal in denselben Ordner entpacken, sodass sich alte und neue Dateien mischen.
  • Annehmen, dass „ohne Fehler entpackt“ bedeutet „lässt sich identisch neu packen“. Kompressionsstufen und Dateireihenfolge verändern das Ergebnis.

So geht das in FW Tool

  • Die Registerkarte „Firmware“ zeigt eine Zusammenfassung: Größe, MD5 und SHA-256, Header, interessante Strings.
  • Sie sucht nach den oben genannten Signaturen und validiert sie; außerdem liest sie MStar-Skripte und schneidet die Datei nach Partitionen auf.
  • Eine Entropiekarte markiert komprimierte oder verschlüsselte Bereiche und Padding (ein Kontrollkästchen, standardmäßig aktiv).
  • Das rekursive Entpacken hat eine Einstellung für die Verschachtelungstiefe (0 bis 8, Standard 3). Manche Dateisysteme benötigen externe Werkzeuge wie 7-Zip oder unsquashfs, sofern installiert.
  • Bei tar-basierten Paketen kann das Programm das Paket neu bauen, nachdem Sie Dateien ersetzt haben.
  • Die Registerkarte „Anpassung“ liest ein unterstütztes Paket, zeigt die gefundenen Panel- und Fernbedienungseinstellungen und baut ein geändertes Paket. Siehe auch LVDS-Mapping und Farbtiefe.

Bevor Sie ein Paket anfassen, ziehen Sie nach Möglichkeit einen Dump des funktionierenden Geräts: siehe Dumps und Hashes vergleichen.

FAQ

Lässt sich jede Firmware-Datei entpacken?

Nein. Verschlüsselte oder signierte Container zeigen hohe Entropie und keine nutzbare Struktur. Das Programm zeigt, was es erkennen konnte; es kann nichts entschlüsseln, wofür es keinen Schlüssel hat.

Welche Tiefe soll ich verwenden?

Beginnen Sie mit dem Standard und erhöhen Sie ihn nur, wenn das Ergebnis noch Archive enthält. Größere Tiefe bedeutet mehr Speicherplatz und Zeit.

Sind die entpackten Daten zum Flashen geeignet?

Entpackte Dateien dienen der Untersuchung. Flashen Sie nur ein vollständiges Paket, das Sie neu gebaut oder intakt erhalten haben, und nur auf einem Gerät, für das Sie einen Dump zur Wiederherstellung haben.

Eine praktische Checkliste vor dem Flashen

  • Modell-, Platinen- und Panel-Kennungen in der Datei stimmen mit dem Fernseher überein, den Sie reparieren.
  • Dateigröße und Hash stimmen mit den Angaben der Quelle überein, sofern sie welche macht. Ein auf halbem Weg abgebrochener Download ist ein häufiger Grund für fehlgeschlagene Updates.
  • Der USB-Stick ist so formatiert, wie der Hersteller es verlangt (üblich ist FAT32), und enthält nur die Update-Datei im erwarteten Ordner oder unter dem erwarteten Namen. UNGEPRÜFT Dateinamen und Ordnerregeln unterscheiden sich je nach Plattform; schauen Sie in die Herstelleranleitung.
  • Sie haben einen Dump des aktuellen Speichers, damit sich ein fehlgeschlagenes Update rückgängig machen lässt.
  • Die Netzversorgung ist stabil, und der Fernseher wird während des Updates nicht ausgeschaltet.

Ein Paket, das am PC einwandfrei aussieht, kann am Fernseher trotzdem scheitern, aus Gründen, die der PC nicht sieht, etwa wegen einer Versionsprüfung im Bootloader. Betrachten Sie die Analyse als Mittel, das Risiko zu verringern, nicht als eines, es zu beseitigen.

Demo herunterladen


FW Tool testen (Demo)