Cześć wszystkim fanom Suby!
Zacząłem opracowywać nowe oprogramowanie do strojenia, logowania i flashowania ECU Subaru. Ten projekt rozpoczął się około rok temu od pomysłu połączenia wsparcia dla tuningu Subaru z moim własnym oprogramowaniem do zarządzania silnikiem, zwanym FastECU. Czas mijał i w końcu tego lata dostałem małego kopa do projektu, kiedy użytkownik rimwall na forum RomRaider rozpoczął projekt modyfikacji NisProg opensource kernels, aby pasowały do flashowania ECU Subaru za pomocą oprogramowania NisProg. Włożyliśmy trochę wysiłku i udostępniliśmy JDM Forester XT/Cross Sports ECU do flashowania! Na razie nazywam to metodą flashowania fxt02.
Potem zdecydowałem, że nadszedł czas, aby rozpocząć mój projekt oprogramowania do strojenia, ponieważ NisProg jest narzędziem wiersza poleceń, RomRaider nie obsługuje flashowania (najnowsza wersja obsługuje flashowanie ECU tylko przez CAN za pomocą wiersza poleceń), a EcuFlash nie obsługuje wszystkich ECU i brakuje możliwości logowania i najprawdopodobniej jest również poza rozwojem. Więc na razie, po kilku tygodniach łączenia kodów, mam oprogramowanie, które prawie w pełni obsługuje definicje edytora RomRaider (jeszcze nie dodano obsługi zagnieżdżonych definicji bazowych/dziedziczenia) i jest w stanie otwierać, stroić i zapisywać ROMy HC16/SH7055/SH7058 (opcja wyłączenia DTC wciąż brakuje, ale wkrótce).
To oprogramowanie jest napisane w Qt 5.12.8 i będzie działać przynajmniej na Windows 7+, zarówno 32-bitowym, jak i 64-bitowym, oraz na platformach Linux 64-bitowych. Możliwe jest również uruchomienie go na Macach, ale nie mogę tego sam przetestować, ponieważ mam tylko maszyny z systemem Linux i Windows. Z NisProg korzystam z zmodyfikowanych jąder open source i kilku fragmentów kodu, które są związane z możliwością odczytu/porównywania/zapisu jądra.
Tak więc następne kroki to (niekoniecznie w tej kolejności):
Udostępnię oprogramowanie do testów, gdy tylko dodam i przetestuję kilka metod flashowania. Będzie to oprogramowanie open source (na licencji GPLv3), więc kod źródłowy zostanie również udostępniony po tym, jak usunę z niego cały zbędny kod (głównie mój samodzielny kod ems, który nie ma w nim żadnego zastosowania).
Mam również własne forum dla tego projektu, które można znaleźć tutaj --> https://www.syvanenmotorsport.fi/forum/index.php, które ma być "bazą" do dyskusji o wszystkich rzeczach związanych z tym oprogramowaniem. Jest już oprogramowanie do pobrania, aby odczytywać i flashować JDM Forester XT/Cross Sports ECU. Zauważ, że ten ECU można na razie odczytywać i zapisywać tylko w samochodzie, jeszcze nie ustaliłem, jakie połączenia są potrzebne, aby móc to zrobić na stanowisku testowym.
To oprogramowanie będzie również obsługiwać podstawowe kable K-Line, więc nie ma potrzeby stosowania kabla Open Port 2.0, jeśli nie ma potrzeby pulsowania pinu 'Line End Check 2', który jest potrzebny dla metod wrx02/fxt02. Sam użyłem podstawowego kabla K-Line podczas opracowywania metody fxt02, po prostu przylutowałem przewód z pinu DTR układu FTDI do pinu 9 (w Subaru FSM ten pin jest oznaczony jako pin 8) na złączu OBD, więc nie ma potrzeby stosowania Open Port 2.0.
- Miika Syvänen
Zacząłem opracowywać nowe oprogramowanie do strojenia, logowania i flashowania ECU Subaru. Ten projekt rozpoczął się około rok temu od pomysłu połączenia wsparcia dla tuningu Subaru z moim własnym oprogramowaniem do zarządzania silnikiem, zwanym FastECU. Czas mijał i w końcu tego lata dostałem małego kopa do projektu, kiedy użytkownik rimwall na forum RomRaider rozpoczął projekt modyfikacji NisProg opensource kernels, aby pasowały do flashowania ECU Subaru za pomocą oprogramowania NisProg. Włożyliśmy trochę wysiłku i udostępniliśmy JDM Forester XT/Cross Sports ECU do flashowania! Na razie nazywam to metodą flashowania fxt02.
Potem zdecydowałem, że nadszedł czas, aby rozpocząć mój projekt oprogramowania do strojenia, ponieważ NisProg jest narzędziem wiersza poleceń, RomRaider nie obsługuje flashowania (najnowsza wersja obsługuje flashowanie ECU tylko przez CAN za pomocą wiersza poleceń), a EcuFlash nie obsługuje wszystkich ECU i brakuje możliwości logowania i najprawdopodobniej jest również poza rozwojem. Więc na razie, po kilku tygodniach łączenia kodów, mam oprogramowanie, które prawie w pełni obsługuje definicje edytora RomRaider (jeszcze nie dodano obsługi zagnieżdżonych definicji bazowych/dziedziczenia) i jest w stanie otwierać, stroić i zapisywać ROMy HC16/SH7055/SH7058 (opcja wyłączenia DTC wciąż brakuje, ale wkrótce).
To oprogramowanie jest napisane w Qt 5.12.8 i będzie działać przynajmniej na Windows 7+, zarówno 32-bitowym, jak i 64-bitowym, oraz na platformach Linux 64-bitowych. Możliwe jest również uruchomienie go na Macach, ale nie mogę tego sam przetestować, ponieważ mam tylko maszyny z systemem Linux i Windows. Z NisProg korzystam z zmodyfikowanych jąder open source i kilku fragmentów kodu, które są związane z możliwością odczytu/porównywania/zapisu jądra.
Tak więc następne kroki to (niekoniecznie w tej kolejności):
- Dodanie metody flashowania sti04 (SH7055) i obsługi otwartego portu 2.0 (robię to teraz)
- Dodanie metody flashowania sti05 (SH7058)
- Dodanie metod flashowania wrx02/wrx04/fxt02
- Dodanie metody flashowania CAN
- Dodanie obsługi Diesel ROM
- Dodanie innych ECU Subaru (JECS/Hitachi itp.)
- Dodanie obsługi logowania
- Dodanie obsługi definicji EcuFlash
- Dodanie obsługi ECU Nissana
- Może też inne marki/modele
Udostępnię oprogramowanie do testów, gdy tylko dodam i przetestuję kilka metod flashowania. Będzie to oprogramowanie open source (na licencji GPLv3), więc kod źródłowy zostanie również udostępniony po tym, jak usunę z niego cały zbędny kod (głównie mój samodzielny kod ems, który nie ma w nim żadnego zastosowania).
Mam również własne forum dla tego projektu, które można znaleźć tutaj --> https://www.syvanenmotorsport.fi/forum/index.php, które ma być "bazą" do dyskusji o wszystkich rzeczach związanych z tym oprogramowaniem. Jest już oprogramowanie do pobrania, aby odczytywać i flashować JDM Forester XT/Cross Sports ECU. Zauważ, że ten ECU można na razie odczytywać i zapisywać tylko w samochodzie, jeszcze nie ustaliłem, jakie połączenia są potrzebne, aby móc to zrobić na stanowisku testowym.
To oprogramowanie będzie również obsługiwać podstawowe kable K-Line, więc nie ma potrzeby stosowania kabla Open Port 2.0, jeśli nie ma potrzeby pulsowania pinu 'Line End Check 2', który jest potrzebny dla metod wrx02/fxt02. Sam użyłem podstawowego kabla K-Line podczas opracowywania metody fxt02, po prostu przylutowałem przewód z pinu DTR układu FTDI do pinu 9 (w Subaru FSM ten pin jest oznaczony jako pin 8) na złączu OBD, więc nie ma potrzeby stosowania Open Port 2.0.
- Miika Syvänen