logo elektroda
logo elektroda
X
logo elektroda
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Jak wybudzić moduł siedzenia BMW E70 z trybu uśpienia przez K-CAN?

m.biruta 21 Lut 2020 09:43 6873 127
  • #1 18484070
    m.biruta
    Poziom 16  
    Mam w domu wymontowane siedzenie z elektryczną regulacją z BMW X5 E70. Po podłączeniu 12V nic się nie dzieje. Zgłębiłam w nocy trochę temat i w przypadku BMW, moduły "użytkowe" komunikują się po K-CAN, który pracuje z częstotliwością 100khz. Pokrywa się to ze scalakiem TJA1055B który znalazłam w środku. Moduły te, po podłączeniu są w trybie uśpienia. Wybudzają je inne moduły np. stacyjka wysyłając odpowiednią ramkę w eter co 500-750ms. Gdy rozgłaszanie tej ramki ustaje - moduły po określonym czasie (kilkanaście, kilkadziesiąt sekund) przechodzą ponownie w tryb uśpienia. Bardzo dobrze opisało to kilka osób na zewnętrznym forum, pod adresem https://avrfreaks.net/forum/can-bus-question-about-tja1055.

    Czyli już wiem, że muszę wybudzić ten moduł z głębokiego snu. Na szczęście wygląda na to, że jedna ramka wybudza (chyba) wszystkie moduły. Na wielu stronach (m.in. na http://loopybunny.co.uk/CarPC/filter.php?filter=flag_KCAN1) przewija się informacja o adresie 0x130 i 5 bajtach 45 40 21 8F FE. Wysyłałam takie ramki i cisza. Wysyłałam też inne, ale cisza totalna, moduł nie funkcjonuje (nie mówię, że nie odpowiada, bo prawdopodobnie on jednak nie "gada").

    Chciałabym prosić osoby które znają temat CAN/K-CAN w autach o potwierdzenie czy mój tok rozumowania działania jest poprawny oraz pomoc w wybudzeniu modułu siedzenia. Może ktoś wie, jaka ramka powinna aktywować moduł.

    Zamieszczam dodatkowo zdjęcie płytki sterującej. Opis wtyczek wzięłam ze strony https://www.newtis.info/tisv2/a/en/e70-x5-xdr...ontrol-units-modules/a187-seat-module-driver/ - tu też jest pokazane, że całość pracuje na K-CAN.

    Jak wybudzić moduł siedzenia BMW E70 z trybu uśpienia przez K-CAN?
  • #2 18484242
    n6210
    Poziom 29  
    piszą też, że ta ramka powinna być wysyłana przynajmniej co 750ms może za wolno wysyłasz i kontroler się usypia?
  • #3 18484303
    m.biruta
    Poziom 16  
    Cześć! Też napisałam o wysyłaniu co 500-750ms w pierwszej wiadomości ;-) Czy wysyłam co 100 czy co 1000ms efekt jest ten sam - totalna cisza ze strony modułu. Zastanawiam się czy w każdym jednym modelu auta nie jest tak, że inna ramka wybudza moduły? Bo mamy dwa standardy: K-CAN1 (100kbps) i K-CAN2 (500kbps). Fotel który posiadam ma układ na 100kpbs czyli K-CAN1.
  • #4 18484313
    szymitsu21
    VIP Zasłużony dla elektroda
    Jeśli masz czym wysłać to masz pewnie czym odczytać.

    Ale pewnie nie masz samochodu?

    Dodano po 2 [minuty]:

    m.biruta napisał:
    Zastanawiam się czy w każdym jednym modelu auta nie jest tak, że inna ramka wybudza moduły



    Nie, adresy są takie same.
  • #5 18484539
    m.biruta
    Poziom 16  
    Bingo! Nie mam gdzie odczytać, bo nie mam auta, mam tylko moduł z fotelem :)
  • #6 18484580
    kamyczek
    Poziom 38  
    Jakiego interfacu (analizatora) używasz do wysyłania ramek ?
  • #7 18484584
    m.biruta
    Poziom 16  
    ATB CAN Octopus Mirka z Atnel.pl
  • #9 18493125
    m.biruta
    Poziom 16  
    Czyli co, nikt nie jest w stanie mi pomóc? W między czasie jeszcze zobaczyłam, że na układzie TJA1055B na nodze 7 (WAKE) i 14 (BAT) utrzymuje się napięcie zasilania (trochę pomniejszone z 12.2V) tj. 11.8V, a na 10 (VCC) nie ma nic. Mam dwa sterowniki identyczne i na obydwu jest taka sytuacja. Czy wg was napięcie jest za niskie i powinno być 13-14V czy jest tu inna zagwozdka?
  • #10 18493790
    kamyczek
    Poziom 38  
    Wystarczy zobaczyć w notę katalogową układu Na VCC powino być napięcie +5V bez niego układ z pewnością nie pracuje . Coś mi się zdaje że gdzieś brakuje ci jednego zasilania modułu .
  • #11 18493969
    m.biruta
    Poziom 16  
    Podłączyłam teraz zasilacz laboratoryjny i wygląda to tak, że po podaniu napięcia +12V przez dokładnie 10 sekund jest pobór 0.04A, po tym czasie następuje zejście do 0A. Po odłączeniu zasilania i odczekaniu 15-20 sekund, następnie ponownym podpięciu zasilania znów przez 10 sekund jest pobór 0.04A. Kiedy jest pobór na zasilaczu to na pinie 10 układu TJA1055 pojawia się magiczne 5V. Czy to jakieś przejście w tryb uśpienia całej płytki razem ze stabilizatorem +5V?
  • #12 18493974
    kamyczek
    Poziom 38  
    Wyglada na to że tak moduł może być budzony po can albo w inny sposób przez odpiecie i załączenie zasilania i jeśli nie otrzyma odpowiedniej informacji po prostu usypia się ponownie
  • #13 18494001
    damdam

    Poziom 34  
    ogarnij sobie CAS z E60 ,zepnij to w sieć ,i popatrz co tam lata. weź starego CAS z normalną stacyjką i kluczem, i wymusisz sobie terminal R, który pewnie powoduje że CAS zacznie WAKE UPy słać po KCANie .
  • #14 18494085
    m.biruta
    Poziom 16  
    kamyczek napisał:
    Wyglada na to że tak moduł może być budzony po can albo w inny sposób przez odpiecie i załączenie zasilania i jeśli nie otrzyma odpowiedniej informacji po prostu usypia się ponownie

    Tak to opisują w sieci, ale skoro odpinane jest +5V to jak do jasnego czorta całość można wybudzić? :) Gdy chcę wysłać w KCAN przykładową ramkę to się okazuje, że prócz mojego czytnika CAN nic po sieci nie śmiga.
  • #15 18494099
    n6210
    Poziom 29  
    To może zacznij mu wysyłać stan stacyjki 0x130 zaraz po włączeniu zasilania gdy can pracuje. Czy już tak próbowałeś?
  • #16 18494388
    m.biruta
    Poziom 16  
    Tak dziś wieczorem zrobię. I sprawdzę jeszcze czy przypadkiem gdy układ się usypia to nie pojawia się stan wysoki na nodze WAKE. Bo być może uśpienie układu wyłącza jakiś stabilizator +5V.
  • #17 18496182
    m.biruta
    Poziom 16  
    n6210 napisał:
    To może zacznij mu wysyłać stan stacyjki 0x130 zaraz po włączeniu zasilania gdy can pracuje. Czy już tak próbowałeś?

    Wysyłanie 0x130 45 40 21 8F FE nic nie daje. Po 10 sekundach nadal pobór prawie zanika. Przez ten czas sterowanie nie działa, na wysyłane ramki do 500ms sterownik nie odpowiada, nawet ACK.
  • #18 18496341
    Piotr520
    Poziom 24  
    Nie za bardzo się orientuje jak działa ten K-Can i co to jest 0x130, bo chyba nie część ramki, ale raczej nie za bardzo odbiega od komunikacji I/K Bus w e39. Jak chcę obudzić monitor navi na stole, to wysyłam ramkę o włączonym zaponie i monitor odpowiada, a następnie tuner radia. Jeżeli nie podłącze monitora to radio nie odpowie na ramkę o zapłonie. Czyli monitor robi tu za taki moduł nadrzędny. Możliwe że i w tym przypadku jest podobnie i do całej komunikacji brakuje jakiegoś pośredniego modułu, który reaguje na zapłon i dopiero budzi moduł fotela. Albo masz złą ramkę.
  • #20 18496559
    m.biruta
    Poziom 16  
    Piotr520 napisał:
    Nie za bardzo się orientuje jak działa ten K-Can i co to jest 0x130, bo chyba nie część ramki, ale raczej nie za bardzo odbiega od komunikacji I/K Bus w e39. Jak chcę obudzić monitor navi na stole, to wysyłam ramkę o włączonym zaponie i monitor odpowiada, a następnie tuner radia. Jeżeli nie podłącze monitora to radio nie odpowie na ramkę o zapłonie. Czyli monitor robi tu za taki moduł nadrzędny. Możliwe że i w tym przypadku jest podobnie i do całej komunikacji brakuje jakiegoś pośredniego modułu, który reaguje na zapłon i dopiero budzi moduł fotela. Albo masz złą ramkę.

    K-CAN od K-BUS różni się pewnie prędkością. Zasada działania jest ta sama. I możesz mieć rację, że ramka którą wysyła stacyjka z adresu 130 o wklejonej przeze mnie treści jest odbierana przez inny moduł, który wysyła swoją ramkę, na którą reaguje dopiero siedzenie. Nie zmienia to niestety mojej sytuacji, w której nie mam dostępu do auta i liczę, że ktoś tu zna się na CANie w BMW i jest w stanie powiedzieć jaka ramka wybudza tego typu moduły.

    Dodano po 1 [minuty]:

    szymitsu21 napisał:
    A próbowałeś inne zmienne? Adres ten sam tylko treść zmienić.

    Tak, próbowałam jeszcze wysyłać ramkę z 2 innymi zawartościami, które znalazłam, a które wskazują na zapłon wyłączony oraz na "przekręcenie" do pozycji ACC.
  • #21 18496661
    Piotr520
    Poziom 24  
    Pewnie co model to inne ramki ale nie zaszkodzi sprawdzić te z e39

    Kluczyk w stacyjce 44 05 BF 74 04 01 8F

    EWS odblokowany 44 05 BF 74 05 01 8E

    Zapłon w pozycji 1 80 04 BF 11 01 2B

    Zapłon w pozycji 2 80 04 BF 11 03 29
  • #22 18496683
    m.biruta
    Poziom 16  
    Dzięki, sprawdzę dziś wieczorem! Tylko zastanawia mnie dlaczego na jakąkolwiek wysłaną ramkę, moduł nic nie odpowiada, nawet sygnał ACK nie wychodzi z niego. Czy to możliwe, że on jest aż tak bardzo... pasywny?
  • #23 18496725
    Piotr520
    Poziom 24  
    Napisz do forumowicza CrisELDi on jest dość obeznany w tym temacie.
  • #24 18496741
    kamyczek
    Poziom 38  
    Może milczeć jeśli informacja adresowana jest do wielu modułów .
  • #25 18497064
    n6210
    Poziom 29  
    Tak mi się nasunęło jak czytam co piszecie, a czy aby ten sterownik nie jest podłączony do klimy (moduł komfortu?) ? Może jest potrzebny (ew. wiedza jaką on ramkę wysyła). Jednak fajnie było by móc to zesniffować...
  • #27 18497325
    m.biruta
    Poziom 16  
    szymitsu21: Oczywiście, poproszę! Jeśli możesz, to wciśnij również przycisk od podgrzewania foteli ;)
  • #29 18497956
    m.biruta
    Poziom 16  
    Przyciski na fotelu po Linie, te na konsoli na bank po Can.

Podsumowanie tematu

Użytkownik stara się wybudzić moduł siedzenia z BMW X5 E70 z trybu uśpienia, korzystając z magistrali K-CAN. Po podłączeniu zasilania 12V moduł nie reaguje, co skłania do analizy komunikacji CAN. Wskazano, że moduły w BMW komunikują się po K-CAN, a do ich wybudzenia potrzebna jest odpowiednia ramka wysyłana co 500-750 ms. Użytkownik eksperymentuje z różnymi ramkami, w tym 0x130, ale moduł nie odpowiada. Po wymianie układu TJA1055 na MCP2551 oraz dostosowaniu prędkości magistrali do 100 kbps, udało się uzyskać odpowiedzi z modułu, jednak nie wszystkie funkcje działają. W dyskusji poruszono również kwestie związane z terminacją magistrali, różnicami między FT CAN a HS CAN oraz potrzebą podłączenia dodatkowych modułów, takich jak CAS, do pełnej komunikacji.
Podsumowanie wygenerowane przez model językowy.
REKLAMA