Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

PORADNIK - przerabiamy dump na plik aktualizacji dla płyt TP.SIS23x

piotrekmichalski 16 Lis 2018 20:26 765 0
  • #1
    piotrekmichalski
    Poziom 12  
    Witam

    Ostatnio trafiłem TV opartego na płycie podanej w tytule. Problem - standardowo - logo, reboot, logo, reboot...
    Wylutowałem SPI i chcę flashować... ale okazało się że mój programator trochę tak tego nie chce dla mnie zrobić. Ech, chińska jakości.
    Programator zamówiony, ale znów trzeba będzie trochę zaczekać, więc zacząłem walczyć poprzez aktualizację przez USB.
    Rozwiązanie dobre, ale ma jedną wadę - przyjmuje tylko pliki przeznaczone do aktualizacji USB. Jeśli mamy dump od kogoś, nie uda się w ten sposób wgrać. I tu właśnie przydał się ogromny research w tym temacie, jako że jeśli mamy jakąś Mantę popularną, to spoko, znajdzie się i dump, i bin do aktualizacji. Gorzej, gdy trafiamy na model firmy która nie ma nawej swojej strony internetowej, a o modelu jedyne informacje to prezentacja na Youtube. Każdy firmware był do góry nogami/mniejsza rozdzielczość/brak obrazu etc.

    Więc co zrobić, gdy nie ma programatora?

    Potrzebujemy:
    -edytor HEX; polecam HxD ( https://mh-nexus.de/en/hxd/ )
    -CRC-32 generator - polecam GFSW ( http://esrg.sourceforge.net/utils_win_up/md5sum/ )
    -oczywiście jakikolwiek dump

    Dump od pliku aktualizacji można odróżnić po rozmiarze. Dump ma 8MB, plik aktualizacji - około 6.
    Jeśli plik ma rozmiar okolo 6mb, poprawną nazwę (SISEU23X8M.bin), a mimo to telewizor nie chce go przyjąć - to prawdopodobnie bieżące FW nie przyjmuje tej nazwy pliku, trzeba ją zmienić na inną, najlepiej taką samą, jaką miał poprzedni plik aktualizacji, np. SISEU23X8M_70.bin

    Plik o rozmiarze 8MB należy przemielić przez hex editor
    PORADNIK - przerabiamy dump na plik aktualizacji dla płyt TP.SIS23x

    Następnie, szukamy w nim frazy "CODE", pisane "naszym" ASCII
    PORADNIK - przerabiamy dump na plik aktualizacji dla płyt TP.SIS23x

    Zaznaczamy wszystko od nawiasu kwadratowego, aż do końca pliku. Najłatwiej ustawić sobie kursor na początku tego offsetu, a następnie nacisnąć razem na klawiaturze: ctrl+shift+end
    PORADNIK - przerabiamy dump na plik aktualizacji dla płyt TP.SIS23x

    Wycinamy za pomocą ctrl+X to wszystko, by zostawić nam czysty plik aktualizacji, bez certyfikatu na końcu, i zapisujemy go.
    W przypadku HxD edytor zapyta się nas najpierw, czy wyrażamy na to zgodę, bo to zmieni rozmiar pliku. Zgadzamy się, bo właśnie o to nam chodzi!
    Potem poda informację o kodowaniu, spokojnie, kodowanie się nie zmieni
    Zostanie nam plik kończący się samymi FF
    PORADNIK - przerabiamy dump na plik aktualizacji dla płyt TP.SIS23x

    Zapisujemy go (ctrl+S), a następnie otwieramy poprzez generator sum kontrolnych. Nie zamykamy hex editora!
    Jak widać, plik zajmuje znacznie mniej.
    PORADNIK - przerabiamy dump na plik aktualizacji dla płyt TP.SIS23x

    Zdobyliśmy sumę kontrolną samego wsadu. Zostawiamy otwarte okno na później. Nie kopiuj teraz sumy kontrolnej, bo wyrzucisz ze schowka fragment kodu, który nadal potrzebujesz!
    PORADNIK - przerabiamy dump na plik aktualizacji dla płyt TP.SIS23x

    Wklejamy na końcu pliku znów fragment, który wycięliśmy. Znów dostajemy komunikat o zmianie rozmiaru pliku. Akceptujemy. Mamy teraz na czerwono oznaczone zmiany, które nie zostały jeszcze zapisane w pliku. Szukamy teraz wartości HEX 00080000. Powinna być tylko jedna, jest ona o kilkanaście offsetów niżej od sygnatury (CODE). Kasujemy wszystko, co jest za ostatnim zerem:
    PORADNIK - przerabiamy dump na plik aktualizacji dla płyt TP.SIS23x

    Oczywiście, znów pytanie o zmianę rozmiaru pliku. Oczywiście, zgadzamy się.

    PORADNIK - przerabiamy dump na plik aktualizacji dla płyt TP.SIS23x

    Wracamy trochę wyżej, do sygnatury. Szukamy CRC-32

    PORADNIK - przerabiamy dump na plik aktualizacji dla płyt TP.SIS23x

    Oczywiście "0x" przed CRC ma zostać! Samą wartość natomiast kopiujemy z generatora i wklejamy na podmianę za starą wartość PORADNIK - przerabiamy dump na plik aktualizacji dla płyt TP.SIS23x

    Plik jest gotowy! Zapisujemy go pod nazwą: SISEU23X8M.bin
    Wrzucamy na pendrive, sformatowanego pod FAT32, wskazane jest, by pendrive nie zawierał żadnych innych danych.
    Wspomniałem już, że czasem telewizor nie chce przyjąć w ogóle takiego pliku. Wtedy musimy się przygotować, że będzie trzeba zmienić nazwę pliku. Jako, że do mojego modelu poprawnego oprogramowania szukałem 3 dni, i sprawdziłem ponad 100 różnych oprogramowań zanim znalazłem jakiekolwiek działające, ułatwiłem sobie życie i stworzyłem skrypt, który automatycznie kopiuje mi pliki z pliku bazowego i zmienia ich nazwę na inną możliwą. Skrypt ze spoilera należy wkleić do notatnika, i zapisać jako skrypt.bat w folderze głównym na pendrive

    Spoiler:
    @echo off
    title Multiplikator
    copy SISEU23X8M.bin SISEU23X8M_70.bin
    copy SISEU23X8M.bin SISEU23X8M_82.bin
    copy SISEU23X8M.bin SISEU23X8M_92.bin
    copy SISEU23X8M.bin SISEU23X8M_43.bin
    copy SISEU23X8M.bin SISEU23X8M_79.bin
    copy SISEU23X8M.bin SISEU23X8M_30.bin
    copy SISEU23X8M.bin SISEU23X8M_43.bin
    copy SISEU23X8M.bin SISEU23X8M_46.bin
    echo Gotowe! Mozesz mnie zamknac, odlaczyc pendrive, i podlaczyc do TV
    pause


    PORADNIK - przerabiamy dump na plik aktualizacji dla płyt TP.SIS23x

    Wystarczy wtedy tylko dwukrotnie kliknąć na skrypt i poczekać chwilkę

    PORADNIK - przerabiamy dump na plik aktualizacji dla płyt TP.SIS23x

    Odłączamy pendrive, wyłączamy TV z prądu, czekamy aż zgaśnie LED stanu, podłączamy pendrive do USB w TV, i podłączamy do prądu.
    Po kilku sekundach LED stanu zacznie naprzemiennie zmieniać kolory z częstotliwością około 2hz.

    Jeśli aktualizacja przebiegła poprawnie (trwa to około 20 sekund), LED stanu zacznie zmieniać kolory szybciej, jakieś 10hz.
    Jeśli się nie udało, zacznie błyskać na czerwono.

    Niezależnie od powodzenia sytuacji, odłączamy TV od prądu, odpinamy pendrive, czekamy aż LED przestanie błyskać, podłączamy do prądu, czekamy 5s i uruchamiamy TV z nowym oprogramowaniem.

    Możliwość aktualizacji przez USB zdaje się być wbudowana w CPU, więc nawet po nieudanej próbie flasha możemy spróbować ponownie z innym plikiem. Zauważyłem to, gdy podczas aktualizacji wywaliło mi korki w mieszkaniu, a TV nie umarł :)

    Jeśli się przydało, to dobrze. Jeśli nie, to moderatorze, nie usuwaj. Pewnie mi się kiedyś przyda, a jestem leniwy i nie zapisuję tego nigdzie indziej niż tu :)