Elektroda.pl
Elektroda.pl
X

Search our partners

Find the latest content on electronic components. Datasheets.com
Elektroda.pl
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

[Solved] BSI DELPHI seria EL HW D6 - TELEKODOWANIE ODCZYT BSI peugeot 208 II corsa F

glapsson 17 Dec 2021 23:50 27939 244
Ochrona Domu
  • #211
    bbmax
    Level 12  
    Hmm roznie to mozna interpretowac tylko jak mozna sprzedawac cos co sie oprogramowalo z githuba? Ile osob tyle interpretacji pewnie bedzie ale albo sie dalej sie ciagnie z githubowa licencja albo przechodzi do zamknietego soucecodu , chyba , Nie znam sie.
  • Ochrona Domu
  • #212
    kamyczek
    Level 38  
    Bez przesady ,kto by chciał robić komercyjny projekt na arduino , poza tym żeby to miało jakąś komercyjną jakość ,to musi jeszcze trochę wody upłynąć . Należy to traktować raczej jako ciekawostkę i zabawkę dla amatora który grzebie sobie w swoim PSA i pochodnych w garażu . Według mnie to temat edukacyjny . Kolega się po prostu trochę pobawił i podzielił tym co wymyślił program udostępnia za darmo , a że bazuje na uniwersalnym projekcie na arduino z can dostępnym za free ,który sobie może każdy sklecić sam kupując manele dosłownie wszędzie , to ciężko tu mówić o jakiejś tam komercji .
  • #213
    glapsson
    Electronics specialist
    bbmax wrote:
    Hmm roznie to mozna interpretowac tylko jak mozna sprzedawac cos co sie oprogramowalo z githuba? Ile osob tyle interpretacji pewnie bedzie ale albo sie dalej sie ciagnie z githubowa licencja albo przechodzi do zamknietego soucecodu , chyba , Nie znam sie.


    No to sobie ściągnij i napisz - będziesz miał za free.

    Dodano po 9 [minuty]:

    Oczywiście że traktuje to hobbystycznie i o komercji nawet nie pomyślałem.

    A Arduino dla amatorów takich jak ja - jest całkiem fajna baza edukacyjną.

    Mogę tylko dodać że udało mi się wy emulować ECU na arduino a co za tym idzie programowo komunikować z innymi urządzeniami.
    Pozwoliło to przesledzić komunikację przesyłania danych IMMO
    A co za tym idzie zbadać algorytm kodowania PIN w sieci CAN PSA.
    Zbudować wirtualny emulator -- a i zapewne odczytywanie PIN z ECU.

    I to tylko na zabawce zwanej ARDUINO.
  • #214
    NiNo1803
    Level 2  
    Cześć wszystkim,
    super dobra praca, którą śledzę z dużym zainteresowaniem.
    Próbowałem pisać w 741:641 kluczem A8EE, ale nie działa. czy kiedykolwiek udało Ci się napisać?
    przepraszam za błędy, to jest tłumaczenie 😅
  • #215
    glapsson
    Electronics specialist
    Oto jak działa emulacja immo na Arduino.
    Trochę posiedziałem nad algorytmem ale udało się.

    W przygotowaniu czytanie PIN - zobaczymy - mam kilka pomysłów -ciekawe jak się sprawdzą.



    Jestem po próbach odczytu PIN ze sterownika silnika:
    Testy najpierw wykonywałem na EDC17C60 bo znałem PIN
    A następnie na VD56.1

    Testy wypadły pomyślnie - udało się odczytać PIN

    MAM 3 pomysły jak to robić

    1 - PIERWSZY POMYSŁ - skuteczny

    Odpytanie ECU o wszystkie kody PIN

    Testowany już na kupionym VD56.1 - nie znałem wcześniej pinu tego ECU.

    Czasochłonny

    Ilość rożnych kodów PIN wynosi 34^4
    34 bo mamy tyle znaków do dyspozycji 0-9 A- Z ( z wyłączeniem o , i ) wielkie litery.

    ^4 bo mamy 4 pola kodu PIN

    ilość kombinacji zatem wynosi : 1 336 336

    Sposób realizacji odpytywania ( ARDUINO ) daje możliwość wykonania 4 zapytań na sekundę
    I otrzymania 4 odpowiedzi oraz informacje potwierdzająca odblokowanie lub brak odblokowania.

    Czasowe obiegi pętli wyglądają tak :


    ..........92h 45`..................163`45``............4`48``.......... 8,5``
    ...ok(3dni 20h 40min).......ok( 2h 45min)........ok 5 min.........ok 9 sec
    ...............X..............................X.......................X......................X

    Przy założeniu że nasz kod PIN to: Z Z Z Z
    To trzeba uzbroić się w cierpliwość ( nie jest zbyt wydajna metoda ).

    Ale nie jest tak źle - tak się składa ze ten typ szyfrowania oraz odpytywania nie jest super doskonały ( podobnie jak SEED i SEED KEY ) - już to opisywałem wcześniej.

    - pierwsze działające przypadkowe pary uzyskałem już po 5 minutach a kolejne dwie po godzinie.

    To przemawia za tym aby dopisać trochę inny algorytm próbkowania
    ( POMYSŁ nr 2 ).

    Myślę że uzyskanie kody PIN powinno zamknąć się 15 min do 30 min
    a w najgorszym razie 2 -3 godz.

    A to jest do zaakceptowania przy moich potrzebach.
    Będę testować.
  • #216
    NiNo1803
    Level 2  
    glapsson wrote:
    I aby nie było że odbiegam od tematu BSI - to nadal jest powiązane ścisłe z bsi bo te urządzenia występują jako para.

    Mam dostęp do 3 modułów:

    1 -- W aucie - nic na razie nie grzebałem oprócz kodowania i podpinania klamki brak reakcji

    2 -- moduł light te same nr co w aucie ale ma odblokowany dostęp i na stole reaguje na klamkę

    3 -- moduł full który odczytałem ale po wgraniu nie reaguje w sieci CAN ( czuta i programuje) - kiedy działał to również reagował na klamkę bo tez miał odblokowany dostęp.



    Żadna antena dodatkowa nie jest potrzebne
    zasilanie CAN i klamka i na stole gada.

    BSI DELPHI seria EL HW D6 - TELEKODOWANIE ODCZYT BSI peugeot 208 II corsa F BSI DELPHI seria EL HW D6 - TELEKODOWANIE ODCZYT BSI peugeot 208 II corsa F

    w aucie mam moduł o takich samych numerach ale oprogramowanie ma inny nr

    Miałem moduł full - czyli z bt ale próby czyszczenia vin zakończyły się tym że pomimo tego ze się czyta i programuje - nawet oryginałem - procek daje ID
    To moduł nie gada w sieci CAN

    mam drugi light taki sam nr co w aucie ale jak juz pisałem ma odblokowany dostęp i jak widać - podpięta tylko klamka i gada.

    co do wsadu

    w module full jest identyczna PCB jak w light - brak jest tylko sekcji z bt ( nie ma kilkudziesięciu elementów - puste pola lutownicze)

    W module full jest procesor RH850 który się czyta i programuje ... ale go jakoś ubiłem

    BSI DELPHI seria EL HW D6 - TELEKODOWANIE ODCZYT BSI peugeot 208 II corsa F BSI DELPHI seria EL HW D6 - TELEKODOWANIE ODCZYT BSI peugeot 208 II corsa F BSI DELPHI seria EL HW D6 - TELEKODOWANIE ODCZYT BSI peugeot 208 II corsa F BSI DELPHI seria EL HW D6 - TELEKODOWANIE ODCZYT BSI peugeot 208 II corsa F

    a w module light oznaczenia na procku są jakieś zaszyfrowane ( maska ?) - i nie daje się poczytać - nie oddaje nawet ID

    BSI DELPHI seria EL HW D6 - TELEKODOWANIE ODCZYT BSI peugeot 208 II corsa F

    Uprzedzam - upa poczytała ale po wgraniu .... cisza w CAN.

    CRC też do policzenia

    BSI DELPHI seria EL HW D6 - TELEKODOWANIE ODCZYT BSI peugeot 208 II corsa F

    Nie wiem gdzie jest PIN ( jest zaszyfrowany)

    Oczywiście nic to nie daje jak nie ma 100% programatora na czytanie i wgrywanie - chyba że ktoś ma to przetestowane z jakimś programatorem.

    a jeszcze wsady

    KLUCZ kodowania -- A8EE

    CAN

    BSI DELPHI seria EL HW D6 - TELEKODOWANIE ODCZYT BSI peugeot 208 II corsa F


    cześć, możesz mi powiedzieć, co zakodowałeś? ponieważ kiedy koduję mój z arduino, otrzymuję komunikat o błędzie : 7F2E7F

    @glapsson @bbmax
    czy masz jakiś pomysł, aby mi pomóc?

    Dziękuję Ci
  • #217
    glapsson
    Electronics specialist
    Odczyt PIN na stole jest możliwy.
    W sumie zrobiłem to nawet w 15 minut ale w trzech różnych etapach - muszę to teraz wbić w jeden program.

    Kodowanie w trakcie emulowania kodem PIN sterownika silnika w 100% możliwe.
  • Ochrona Domu
  • #218
    glapsson
    Electronics specialist
    melas wrote:
    Witam jakbyś miał problem z pinem to mam SMOK bsi+pin mogę poratować, nie ma problemu tylko musiał bym mieć ecu u siebie bo z pliku starsze tylko. Pozdrawiam


    Spoko dzięki -ALE
    Napisałem własny program do wyciągania PIN z ECU tych nowych.
    Pozdrawiam.
  • #220
    glapsson
    Electronics specialist
    Super ... odezwę się na PW jak popodciągam tematy bo dużo rozpoczętych...
    I musze to uporządkować trochę....
    CMM VD56.1 opanowane kodowanie.
  • #222
    drago
    Level 20  
    Offtop: Chłopaki z Francji rozpracowali ESP z scirocco bez arduino
  • #223
    bbmax
    Level 12  
    drago wrote:
    Offtop: Chłopaki z Francji rozpracowali ESP z scirocco bez arduino


    Wrzucilem to bo ruski sie chwalil ze zrobil i jakas niewiarygodna kase chcial za to :) Dalem za free na nowy rok...
  • #224
    drago
    Level 20  
    bbmax wrote:
    drago wrote:
    Offtop: Chłopaki z Francji rozpracowali ESP z scirocco bez arduino


    Wrzucilem to bo ruski sie chwalil ze zrobil i jakas niewiarygodna kase chcial za to :) Dalem za free na nowy rok...


    No to szacun, niewiedziałem że to Ty :), widziałem ten temat u ruskiego, a wiesz jak zrobić żeby pokazywało ograniczenia prędkośći na scirocco ?
  • #225
    bbmax
    Level 12  
    drago wrote:
    bbmax wrote:
    drago wrote:
    Offtop: Chłopaki z Francji rozpracowali ESP z scirocco bez arduino


    Wrzucilem to bo ruski sie chwalil ze zrobil i jakas niewiarygodna kase chcial za to :) Dalem za free na nowy rok...


    No to szacun, niewiedziałem że to Ty :), widziałem ten temat u ruskiego, a wiesz jak zrobić żeby pokazywało ograniczenia prędkośći na scirocco ?


    Bedzie :) w opracowaniu narazie ale bedzie potrzebny emulator kamery , chyba ze cos w calibracjach przeoczylem ale musze to sprawdzic. Bez kamery na szybie nie wysyla ramki ktora odpowiada za wyswietlanie na Cirocco, mimo configu ze ma brac z Navi tylko.
  • #227
    glapsson
    Electronics specialist
    Ruszyło
    składa się to w całość.. jeszcze parę testów.
    Uruchomiłem to wszystko trochę inaczej.

    Wcześniej już napisałem aplikacje do wyciągania PIN z ECU baz kluczyka na stole bezpośrednio ze sterownika silnika.
    Z racji że działa to trochę na zasadzie doboru i losowości ( zależnie od SEED z ECU )
    Po kilkudziesięciu testach na kilku ECU moge powiedzieć że czas wyciagania PIN to od od 10min do max 3h.

    Jest zakładka Emulacji immo zatem również - odpalanie awaryjne bez kluczy powinno działać.


    Napisałem również mały programik do odczytu PIN jak jest przynajmniej 1 kluczyk - po OBD w aucie.
    czas potrzebny na rozkodowanie PIN to kilkanaście sekund.
    Nie obyło się bez przepisania znowu wsadu Arduino.

    Te programy muszę wkomponować w jeden program razem z kodowaniem BSI i pozostałych opracowanych sterowników.

    jutro może zapodam jakiś filmik jak to działa.

  • #228
    drago
    Level 20  
    Rewelacja, szybciutko, z którego roku autko ?
  • #229
    glapsson
    Electronics specialist
    C3 III 2018
    Sprawdziłem też na 3008 II ROK 2018 - działa również
    I nowe 208 II z 2020 też bez problemu.
  • #230
    drago
    Level 20  
    A bsi Continentala udało Ci się opanować ?
  • #231
    glapsson
    Electronics specialist
    jakiś popieprzony algorytm na SEED jest albo idę w złą stronę i jest to prostsze niż myślę.

    Popełniłem również kalkulator na liczenie PIN
    Od tego wyszedłem i jak zaczęło to gadać to dopiero poszedłem dalej na OBD
    Ale jakby nie było arduino to policzenie pin jest jak najbardziej możliwe - o ile posiada się tylko jakikolwiek analizator CAN.

    Jak widać przy jednej parze może być od kilku do kilkudziesięciu zgodnych kluczy
    Przy dwóch parach to już najczęściej 1 klucz ale trafiałem nawet 3 -4
    Przy 3 parach to praktycznie pewniak.

    W Arduino postawiłem na 5 par danych - aby nie było pomyłek.

    Poniżej działanie kalkulatora

  • #232
    bbmax
    Level 12  
    Ciekawie sie robi :) algo znane tylko ze boja sie ludzie publikowac :)
  • #233
    glapsson
    Electronics specialist
    Ja spędziłem kilkanaście godzin żeby to policzyć.
    Nawet nie szukałem w sieci.

    Ale na pewno znane ... emulatory immo przecież jakoś działają.
    A sa dostępne od lat.
  • #234
    bbmax
    Level 12  
    Hmm zrodlo https://github.com/prototux/PSA-RE/commit/d2f79c9a05e7c578a38bc2eb27733d5873aa73d5
    Code:
    // Immobilizer challenge-response implementation
    
    // This should match the authentication between the BSI and the engine ECU
    // The protocol is pretty simple:
    // * On frame 0x72 (ECU to BSI): 0x00 (4 bytes of challenge)
    // * On frame 0xA8 (BSI to ECU): 0x04 (4 bytes of response)
    // * If the challenge is accepted: {0x00, 0x00, 0x00, 0x00, 0x00} on frame 0x72
    // Thanks a lot to Wouter Bokslag for the original work and algorithm :)

    #include <inttypes.h>

    // Transformation function with PSA not-so-secret sauce
    int16_t transform(uint8_t data_msb, uint8_t data_lsb, uint8_t sec[])
    {
       int16_t data = (data_msb << 8) | data_lsb;
       int32_t result = ((data % sec[0]) * sec[2]) - ((data / sec[0]) * sec[1]);
       if (result < 0)
          result += (sec[0] * sec[2]) + sec[1];
       return result;
    }

    // Challenge reponse calculation for a given pin and challenge
    // Challenge and pin are both 4*8bits values
    uint32_t compute_response(uint8_t pin[], uint8_t chg[])
    {
       // Hardcoded secrets...
       int8_t sec_1[3] = {0xB2, 0x3F, 0xAA};
       int8_t sec_2[3] = {0xB1, 0x02, 0xAB};

       // Compute each 16bits part of the response and return it
       int16_t res_msb = transform(chg[0], chg[2], sec_1) | transform(pin[0], pin[3], sec_2);
       int16_t res_lsb = transform(chg[1], chg[3], sec_2) | transform(pin[1], pin[2], sec_1);
       return (res_msb << 16) | res_lsb;
    }
  • #235
    drago
    Level 20  
    @bbmax i @glapsson może byście wspólnie usiedli do tematu ? Co Wy na to ?
  • #236
    glapsson
    Electronics specialist
    Ale ja już to mam .... przecież emuluje PIN i wyliczam z danych CAN.
    Nie muszę już do tego siadać.
    Zresztą widać że wyliczenie jest takie samo jak dla SEED BSI dla kodowania - inaczej następuje tylko podstawienie danych do operacji OR.

    Ciekawi mnie jak to wygląda w SEED2 dla Continental
    Bo wszystko wskazuje na to że matematycznie jest to całkowicie inaczej rozwiązane - albo dochodzi jakaś dodatkowa operacja XOR lub OR.

    Nie drążę sam tematu bo dla mnie Continental to już raczej ciekawostka tak jak Valeo.
    Nie spodziewam się abym kiedyś miał jeszcze szanse dla swoich potrzeb coś w tym temacie potrzebować robić.

    Ale jakby ktoś znalazł ten algorytm to postaram się napisać do istniejącego już programu z zakładką valeo opcje continental i tu udostępnię.

    Trochę znowu się zmieniło

  • #238
    Hallahub
    Level 1  
    Hello to everyone, Sorry for not typing in poland, I own a 2021 208 II, I also have a workbench using bsi2010 and I have connected to it the visteon 3d speedometer which has increased the mileage of both. I've read a bit the topic and found the tool for bsi2010ev. Any idea if it can work on the bench too? My main aim is to lower the mileage of the visteon 3d speedo since I need to put in my car for some testing purpose. unlike older PSA speedometer, the visteon doesn't have a separate eeprom like 3008 cirocco for example. I hope you guys understand me.
  • #239
    kamyczek
    Level 38  
    Widzę jakiś zastój w temacie , czyżby chęci zabrakło ?