2004 to 2020 Mazda 3 Forum and Mazdaspeed 3 Forums banner
61 - 80 of 319 Posts
Programmer Testing Clip SOP 16 ebay
ebay.com/p/Programmer-Testing-Clip-SOP-16-SOP-SOIC-16-Dip16-Pin-IC-Test-Clamp-With-Cable/2131170762

USB BIOS EEPROM SPI FLASH Programator CH341A 24 25 series
ebay.com/itm/USB-BIOS-EEPROM-SPI-FLASH-Programmer-CH341A-24-25-series-/301443899698

program i sterownik: karadev.net/basto/CH341A-programmer-software-1.29/CH341A-1.29-programmer-software.zip

łączenie :
Image
oficjalna nazwa partycji przesunięcie przed v31 przesunięcie po v31
bootstrap 0x000000 0x000000
boot-select 0x010000 0x010000
ibc1 0x020000 0x020000
ibc2 0x040000 0x040000
nv-config 0x060000 0x060000
config 0x070000 0x070000
jci-boot-diag n/a 0x0D0000
fail-safe 0x0E0000 0x0E0000
update 0x7E0000 0x7E0000
sprawdź to, aby uzyskać więcej informacji: 2x4logic.com/jci-failsafe.html
jak to sprawdzić i zapisać, jakiego oprogramowania użyć??
 
oficjalna nazwa partycji przesunięcie przed v31 przesunięcie po v31
bootstrap 0x000000 0x000000
boot-select 0x010000 0x010000
ibc1 0x020000 0x020000
ibc2 0x040000 0x040000
nv-config 0x060000 0x060000
config 0x070000 0x070000
jci-boot-diag n/a 0x0D0000
fail-safe 0x0E0000 0x0E0000
update 0x7E0000 0x7E0000
Sprawdź to, aby uzyskać więcej informacji: 2x4logic.com/jci-failsafe.html
Jakiego oprogramowania użyć do zmiany?
 
Cześć,

Wykonuję procedurę krok po kroku za pomocą Rasberry Pi i niestety mój Mazda Connect wciąż nie działa.
Moim zdaniem wszystko wygląda dobrze podczas wykonywania każdego polecenia. Tylko wiadomość po jednym poleceniu nie wygląda dla mnie jasno i nie wiem, czy tak powinno być (załączone) ...
Czy ktoś jest w stanie spróbować mi pomóc z moim problemem?
Cześć. Mam ten sam problem, czy udało Ci się go naprawić? A może ktoś wie, jak to naprawić?
 
Naprawa CMU zablokowanego

Cześć,

Właściwie, Twoje CMU jest zablokowane. Zrobiłem dokładnie to samo, co Ty, kiedy mój samochód został wyłączony tuż po zainstalowaniu pakietu failsafe. Na szczęście istnieje sposób na odzyskanie, co nie jest takie proste, ale jest całkiem wykonalne, jeśli nie boisz się zdemontować CMU, otworzyć go i podłączyć kilka przewodów.

Pełne wyjaśnienie:
Dzięki tej stronie: http://www.2x4logic.com oszczędza mi dużo czasu, aby dowiedzieć się, jak działa system. Proces aktualizacji CMU jest rzeczywiście bardzo źle zaprojektowany, ponieważ ma wiele punktów awarii, w których kończy się zablokowanym urządzeniem, które już się nie uruchomi. Najłatwiejszym sposobem na to jest wyłączenie CMU po zainstalowaniu pakietu failsafe. Zasadniczo dzieje się tak: mały układ flash, który zawiera program rozruchowy, ma flagę, która decyduje o tym, w którym systemie ma się uruchomić. Może to być albo normalny system Mazdy, albo oprogramowanie «failsafe». Kiedy instalujesz pakiet aktualizacji failsafe bez drugiego pakietu ponownej instalacji, tryb wyboru rozruchu układu flash jest ustawiony na uruchamianie na partycji ibc1, która nie pasuje do obecnego systemu Mazdy. Ta partycja ibc1 jest aktualizowana przez pakiet ponownej instalacji. Jest więc zablokowany, ponieważ nie może się już uruchomić.
Najłatwiejszym rozwiązaniem jest zmiana wartości wyboru rozruchu na układzie flash, aby uruchomić się na ibc2 (failsafe). Zwykle odbywa się to w procesie aktualizacji, po sprawdzeniu integralności pakietu ponownej instalacji. Tutaj zrobimy to, wymuszając rozruch. Uruchomi oprogramowanie instalacyjne «failsafe», które poinformuje nas, że instalacja się nie powiodła i że możemy spróbować ponownie, wkładając do samochodu klucz USB z poprawnym pakietem ponownej instalacji. Następnie instalacja będzie kontynuowana i zakończona.

Samouczek:
Oto krok po kroku instrukcja, jak to osiągnąć. Należy pamiętać, że może to być trudne, jeśli nie rozumiesz, co robisz. Ale w przypadku, gdy Twoje CMU jest zablokowane (czarny ekran po nieudanej aktualizacji lub coś w tym stylu), nie masz nic do stracenia, prawda? Zabranie samochodu do dealera nie pomoże, po prostu obciążą Cię pełną wymianą CMU, a to kosztuje dużo...

Układ flash znajduje się z tyłu płytki drukowanej CMU. To jest NOR SPI Flash. Chodzi o bezpośrednie połączenie z tym układem i użycie raspberry pi (który ma magistralę SPI) do przeprogramowania pamięci.

Wymagany sprzęt:
  • Raspberry Pi
  • Zacisk testowy programatora SOIC16 lub 6x zaciski testowe IC (użyłem zacisków testowych)
  • Płytka stykowa do wykonania połączeń
Na raspberry pi musisz zainstalować Raspbian (wersja Lite jest ok). Po świeżej instalacji Rasbiana skonfiguruj pi, aby włączyć SPI, uruchamiając:
Code:
sudo raspi-config
(włącz SPI w Interfacing Options*)
sudo reboot
Zainstaluj niektóre wymagane narzędzia:
Code:
sudo apt-get update
sudo apt-get install build-essential libusb-1.0-0-dev libusb-dev git wget curl libpci-dev
Pobierz nowszą wersję flashrom:
Code:
git clone https://github.com/flashrom/flashrom
cd flashrom
make
sync
Wyłącz zasilanie maliny.

Teraz malina jest gotowa. Zdemontuj CMU z samochodu (poszukaj na YouTube filmu instruktażowego, jak to zrobić, to proste), odkręć płytkę drukowaną od CMU i podłącz przewody z maliny do układu flash, tak jak tutaj (patrz załączony obrazek) i http://www.2x4logic.com/mcbot-annotated.jpg

Włącz malinę. I sprawdź, czy flash jest wykrywany:
Code:
cd flashrom
./flashrom -p linux_spi:dev=/dev/spidev0.0,spispeed=8000
To powie, czy układ jest wykrywany, czy nie. Jeśli nie, okablowanie jest nieprawidłowe. Kiedy coś zostanie wykryte, flashrom może poinformować Cię, że wykryto wiele różnych układów. Dzieje się tak dlatego, że niektóre układy tego samego producenta mogą mieć ten sam protokół. Musisz odczytać właściwy model urządzenia z tego, co jest napisane na układzie. Miałem MX25L6445E. Wiem, że niektóre inne CMU mogą mieć inny model układu. Powinno to również działać, jeśli flashrom może to wykryć.

Następnie spróbuj odczytać pamięć i zrobić kopię zapasową:
Code:
./flashrom -r backup-cmu.bin -c "MX25L6436E/MX25L6445E/MX25L6465E/MX25L6473E/MX25L6473F" -V -p linux_spi:dev=/dev/spidev0.0,spispeed=8000
Uważnie przeczytaj, co robi flashrom, aby sprawdzić, czy nie ma żadnych błędów. Musiałem użyć opcji -c "MX25L6436E/MX25L6445E/MX25L6465E/MX25L6473E/MX25L6473F", aby wybrać właściwy model układu w flashrom, ponieważ został on napisany podczas korzystania z opcji -p (wyświetl wszystkie wykryte urządzenia)

Po utworzeniu kopii zapasowej modyfikujemy bajt wyboru rozruchu w pliku
Code:
cp backup-cmu.bin cmu-mod.bin
printf '\x00' | dd of=cmu-mod.bin bs=1 seek=65536 count=1 conv=notrunc
Teraz czas zapisać zmodyfikowany plik na flash:
Code:
./flashrom -w cmu-mod.bin -c "MX25L6436E/MX25L6445E/MX25L6465E/MX25L6473E/MX25L6473F" -V -p linux_spi:dev=/dev/spidev0.0,spispeed=8000
Odczytaj ponownie flash, aby sprawdzić, czy zadziałało
Code:
./flashrom -r cmu.bin -c "MX25L6436E/MX25L6445E/MX25L6465E/MX25L6473E/MX25L6473F" -V -p linux_spi:dev=/dev/spidev0.0,spispeed=8000
Sprawdź, czy plik pasuje, weryfikując sumę kontrolną
Code:
sha1sum cmu.bin cmu-mod.bin
Suma kontrolna powinna pasować, jeśli tak jest, procedura jest zakończona. Czas odłączyć wszystko i włożyć CMU z powrotem do samochodu. CMU powinien uruchomić się w systemie odzyskiwania failsafe i poprosić o klucz USB z pakietem ponownej instalacji.

Powodzenia i miłego hakowania! ;)
Raoulh.
Również zrobiłem failsafe i zdecydowałem się wyłączyć samochód i wrócić ponownie = zablokowany!
Więc postępowałem zgodnie z Twoimi instrukcjami, kupiłem zestaw, bawiłem się poleceniami i udało mi się ponownie załadować FLASH, bardzo dziękuję.
Powtarzam to, co wiele osób tu powiedziało, bardzo mi pomogłeś tymi instrukcjami.
Udało mi się również zaktualizować do 70.00.100A :).
Jesteś niesamowity!
Rodger
 
Nie pamiętam, jaka wersja była w moim CMU, zanim ekran umarł. W tej chwili udało mi się go ponownie sflashować, ale muszę włożyć USB z odpowiednią wersją. Jak mogę sprawdzić, jaka wersja jest w środku? Czy mogę to sprawdzić przez raspbiana lub połączenie szeregowe? Jeśli to możliwe, jakiego polecenia powinienem użyć?
 
Znalazłem 3 różne opcje:
  1. Połączenie SSH przez adapter usb-ethernet: Użyj np. WinSCP, aby przejść do /jci/version.ini i skopiować go i otworzyć - tam znajdują się informacje o wersji oprogramowania. Więcej szczegółów można znaleźć w tym poście: Utknąłem w pętli instalacyjnej od V.59 do V.70
  2. Połączenie szeregowe: Pokaż wersję oprogramowania w Putty - szczegóły w tym poście: Utknąłem w pętli instalacyjnej od V.59 do V.70
  3. Połączenie szeregowe: Skopiuj /jci/version.ini (z wersją oprogramowania) na sformatowany w FAT32 pendrive, aby później odczytać zawartość pliku - szczegóły w tym poście: Utknąłem w pętli instalacyjnej od V.59 do V.70
Polecam opcję 3.
 
Może ktoś (np. @raoulh) może mi pomóc?
Mam martwy zapasowy CMU. Dostałem go jako uszkodzony. Nie wiem, dlaczego nie działa. W ogóle się nie uruchamia. Po włączeniu zasilania wyświetlacz pozostaje czarny. Również przez połączenie szeregowe nie ma oznak życia. Mam nadzieję/myślałem, że mógłbym go ożywić, flashując układ SPI NOR. Dostałem wszystkie części wymienione przez Viên Tịnh i podłączyłem układ poprawnie (sprawdziłem 3 razy), ponieważ mogę pomyślnie odczytać układ i utworzyć plik kopii zapasowej *.bin. Ale kiedy próbuję zapisać wartość 00 zgodnie z zaleceniami raoulh, pojawia się błąd: "Przekroczono limit czasu operacji zapisu" (patrz zrzut ekranu). Używam przycisku ZAPISZ w górnym rzędzie. Daj mi znać, co mogę spróbować, aby pomyślnie zapisać. Dzięki.

Błąd:
 
Może ktoś (np. @raoulh) może mi pomóc?
Mam martwe zapasowe CMU. Dostałem je jako wadliwe. Nie wiem, dlaczego nie działa. W ogóle się nie uruchamia. Po włączeniu wyświetlacz pozostaje czarny. Również przez połączenie szeregowe nie ma oznak życia. Mam nadzieję/myślałem, że mógłbym je ożywić, flashując układ SPI NOR. Dostałem wszystkie części wymienione przez Viên Tịnh i podłączyłem układ poprawnie (sprawdziłem 3 razy), ponieważ mogę pomyślnie odczytać układ i utworzyć plik kopii zapasowej *.bin. Ale kiedy próbuję zapisać wartość 00, jak zalecił raoulh, pojawia się błąd: "Write operations timeout failed" (patrz zrzut ekranu). Używam przycisku WRITE w górnym rzędzie. Daj mi znać, co mogę spróbować, aby pomyślnie zapisać. Dzięki.

Błąd:
View attachment 279882
Przed zapisem należy wyczyścić, więc najpierw WYCZYŚĆ, a następnie ZAPISZ i na końcu WERYFIKUJ.
 
Dzięki. Dobrze wiedzieć, ponieważ po raz pierwszy używam tego narzędzia. Ale nawet jeśli pomyślnie wymazuję (i pomyślnie wykonałem sprawdzanie pustych komórek), nie mogę ani pisać bezpośrednio, ani otworzyć i zapisać "pliku bin" z wcześniej załataną wartością "00". Zawsze otrzymuję ten sam błąd zapisu pokazany na zrzucie ekranu z mojego poprzedniego postu. Jakieś inne pomysły?

Próbowałem:
a) odczyt -> wymazanie -> puste -> zapis (zawsze z wartością 00 w wierszu 10000) = nieudane
b) odczyt -> wymazanie -> zapis = nieudane
c) odczyt -> wymazanie -> otwarcie (pliku bin z wartością 00) -> zapis = nieudane
d) odczyt -> wymazanie -> puste -> odczyt (wszystkie wartości nadal FF) -> zapis = nieudane
e) weryfikacja (status: pamięć główna układu jest pusta) -> otwarcie (pliku bin z wartością 00) -> zapis = nieudane
f) otwarcie (pliku bin z oryginalną wartością FF) -> zapis = 100% i wtedy brak komunikatu o błędzie, więc przypuszczam, że się udało, nawet jeśli nie tego chcę - więc w zasadzie funkcja zapisu może działać.

Schemat/wzór połączeń pokazany w poście nr 16 to widok od góry do programatora CH341, prawda? Zatem połączenia powinny wyglądać tak (dodałem czerwone/niebieskie linie tylko jako przykład).


Mój układ jest taki sam, jak pokazano w tym wątku:

...i zainstalowałem sterowniki 64-bitowe, ponieważ na moim Win10 64-bitowe sterowniki 32-bitowe nie mogły zostać zainstalowane. Źródło: karadev.net/basto/CH341A-programmer-software-1.29/ -> Plik ZIP PAR 2.2
 
Po 2 kolejnych ponownych połączeniach i ponownej instalacji sterowników oraz użyciu CH341A Programmer Version 1.34 (przed 1.29) w końcu udało mi się zapisać wartość 00 do wiersza 10000. Ale nadal wyświetlacz pozostaje czarny po podłączeniu cmu (i nie uruchamia się). Jakieś pomysły, jak postępować? Jakieś inne wartości, które mogę zmienić? Coś jeszcze mogę zrobić? Czy istnieje inny proces?
 
Zrobiłem to dla przyjaciela, tego samego programisty i ten Test Clip i działało dobrze, użyłem również pliku rozruchowego od tego użytkownika tutaj i uruchomił się, myślę, że to wersja 51.00.300 NA. Mam nadzieję, że zapisałeś plik, który przeczytałeś, czy mógłbyś go tutaj opublikować? Być może CMU ma więcej problemów niż problem z uruchomieniem.
 
Jeszcze raz dziękuję. Wyczyściłem chip, otworzyłem plik z linku od Ciebie/macomeza, zapisałem go i zweryfikowałem na chipie, ale cmu wciąż nie działa. Brak oznak życia po podłączeniu. Wyświetlacz jest nadal czarny, a dostęp szeregowy nie pokazuje żadnego przewijającego się tekstu - tylko nieruchomy zielony kwadrat. W załączeniu mój oryginalny plik *.bin, który odczytałem/zapisałem/zarchiwizowałem przed wprowadzeniem zmian: Downloadlink Zgadza się, ponieważ nie znam pochodzenia usterki/jak została uszkodzona, może to być również np. problem sprzętowy lub coś innego. Sprawdziłem już okablowanie, ale moja zwykle zainstalowana CMU cx-5 ma takie samo okablowanie jak ta uszkodzona CMU mx-5/miata.

Używam prawie tego samego klipsa testowego co Ty:


P.S. I wysłałem e-mail do Vien Tinh, ale on dokładnie wiedział, jak uszkodził swoją cmu i naprawił ją ręcznie, kopiując wartości szesnastkowe plików oprogramowania układowego failsafe do właściwej sekcji przesunięcia na chipie cmu i to zadziałało dla niego. Próbowałem tego również, ale niestety bez powodzenia.
 
Przykro mi Tristan, ale plik, który zamieściłeś, jest pusty, same FF, może to twój problem, przeczytaj ponownie rescue.bin, który właśnie zaprogramowałeś i porównaj go z oryginalnym plikiem. Rescue.bin Hash MD5 to: 688b34e65e2d24fae62887dadf0b5a90.
 
Kupiłem 16-pinowy klips, który został dostarczony z małą płytką adaptera z prawidłowym okablowaniem, jak w tym poście: TEST CLIP. Zaopatrz się również w edytor szesnastkowy, jest bardzo przydatny do porównywania plików, wyszukiwania, obliczania sum kontrolnych itp.
 
Cholera, to była jedyna kopia zapasowa, jaką miałem. Nie sprawdziłem, czy jest pusta, czy są w niej zapisane jakieś wartości. Oczywiście narzędzie programatora CH341 pokazało mi, że odczyt był możliwy i zapisało plik (ale pusty). Dlatego założyłem, że moje połączenie jest w porządku. Ale wydaje się, że klips nie był prawidłowo przymocowany do układu. Więc nie mam już oryginalnej kopii zapasowej :-( Teraz mam HxD jako edytor HEX. Prawidłowo sflashowałem rescue.bin (bez żadnych zmian), a cmu nadal nie działa i nie widać żadnych oznak życia przez putty/dostęp szeregowy - to samo po zmianie wartości FF na 00 w wierszu 010000 -> cmu nadal nie działa. Myślę, że problemem nie jest układ SPI NOR, ale inna awaria sprzętu? Wielkie dzięki craz za całą pomoc i informacje!
 
Mam tutaj drugie CMU z 70.00.352 EU (działające). Zrobiłem kopię zapasową jego układu SPI NOR i skopiowałem ją do martwego CMU. CMU wciąż udaje martwe (brak wyświetlacza/brak aktywności szeregowej). Ten sam wynik, gdy załatałem wartość 00 do linii 10000 tej kopii zapasowej. Poniżej znajdują się dwa załączone pliki:
Myślę więc, że to CMU jest naprawdę martwe i nie można go ożywić za pomocą flashowania SPI NOR.
 
61 - 80 of 319 Posts