LWPM Comfort Module

  • Status Zamknięte
  • Procent zaawansowania:
    100%
  • Typ zgłoszenia Pozostałe
  • Kategoria Konfigurator
  • Przydzielone do
    LWPM
  • Samochód wszystkie
  • Priorytet Normalny
  • Rozpoznane w wersji v0.3
  • Do realizacji w wersji Nie zdecydowano
  • Głosy 2
  • Prywatne
Przydzielony do projektu: LWPM Comfort Module
Zgłoszone przez Ostap - 25.09.2018
Ostatnio edytował LWPM - 14.04.2020

FS#182 - Skanowanie CAN

Jak wykorzystać kabelek OP-COMa to podglądu danych na CAN?

!!! Uwaga !!!

Uzyskując bezpośredni dostęp do CAN samochodu, trzeba uważać! Przez CAN przesyłanych jest mnóstwo danych, których znaczenia nikt poza GM nie zna. Wysyłając przypadkowe dane na CAN można wprowadzić jakiś moduł/sterownik w nieokreślony stan, z którego może być go później trudno wyprowadzić! Zwykle odłączenie zasilania (akumulatora) pomaga.
Nie odpowiadam za jakiekolwiek szkody spowodowane bezpośrednim dostępem do CAN.


Wymagania sprzętowe/programowe

wszystkie narzędzia były sprawdzane/testowane tylko w systemie Linux/Debian i tutaj powinny działać. Wymagania od strony Linuxa:

  1. SocketCAN (każda nowsza dystrybucja posiada wbudowaną obsługę)
  2. Python 3.4+
  3. pakiety Pythona: pyserial, python-can
  4. interfejs/kabel OP-COMa, testowane tylko z oprogramowaniem 1.59. Samego OP-COMa nie potrzebujemy.

Możemy także wykorzystać gotową maszynę wirtualną Linuxa i uruchomić ją z VirtualBox
Maszynę pobieramy z https://mega.nz/file/YXxVjYLB#MX5TJBJFsxWFL7ovvLTF-LcP08oQ0U4IhAPNni07XEY

Maszynę importujemy do VirtualBoxa i uruchamiamy

login: osboxes
hasło: lwpm
hasło roota: lwpm

Przygotowanie systemu

Wszystkie wymagane pliki są dostępne w katalogu /home/osboxes/opel, natomiast wszystkie narzędzia są tekstowe, a więc wszystko wykonujemy z terminala.

Jeśli jednak chcesz sam przygotować sobie system, zakładam, że wiesz jak go skonfigurować:

  1. instalujemy python3.4+
  2. instalujemy can-utils (apt-get install can-utils)
  3. instalujemy pip (apt-get install python3-pip)
  4. instalujemy pyserial oraz python-can (pip3 install pyserial && pip3 install python-can)

W innych systemach niż Debian/Ubuntu polecenia mogą być inne.

Pierwszym krokiem do zrobienia jest uruchomienie vcan_init, który stworzy wirtualne interfejsy (LSCAN, MSCAN, HSCAN) w Linuxie. Będą one używane do dostępu do fizycznych CANów w samochodzie.

a więc logujemy się w systemie, uruchamiamy terminal, przechodzimy do katalogu opel (cd opel) i wpisujemy:

sudo ./vcan_init

potwierdzamy hasłem roota (lwpm)
W tym momencie mamy już utworzone wirtualne interfejsy CAN, z których już teraz możemy korzystać.

Następnym krokiem jest podłączenie do maszyny wirtualnej interfejsu OP-COMa i podpięcie go pod któryś z CANów. Służy do tego program opcom.py, który uruchamiamy następująco:

./opcom.py /dev/ttyUSB0 lscan

aby połączyć interfejs OP-COMa z naszym wirtualnym CANem (LSCAN)
aby podłaczyć się do mscan wpisujemy odpowiednio

./opcom.py /dev/ttyUSB0 mscan

analogicznie robimy to dla HSCAN

./opcom.py /dev/ttyUSB0 hscan

W przypadku HSCAN OP-COM bardzo szybko się zawiesi ze względu na zbyt dużą ilość danych, których nie jest on w stanie przetworzyć, dlatego wywołujemy program z odpowiednim filtrowaniem przychodzących pakietów, np:

./opcom.py /dev/ttyUSB0 hscan filter:-1,-1,7DF,7E0,5E8,7E8

w ten sposób będziemy przechwytywać tylko komunikację ze sterownikiem silnika (ECU)
Pierwsze dwa parametry filtru to maska bitowa. Nie końca wiem jak jej używać, dlatego używamy -1,-1, aby odfiltrować wszystko, natomiast kolejne wartości to już konkretne identyfikatory PIDów, które potrzebujemy. Możemy podać maksymalnie 6 identyfikatorów!


Sniffer CAN

Skoro mamy już połączony samochód z naszym komputerem, możemy podejrzeć co się w nim dzieje :)
najważniejsze polecenia to cansniffer oraz candump

candump lscan
cansniffer lscan

pierwszy z nich wypisuje na ekranie wszystkie przychodzące pakiety, natomiast drugi robi dokładnie to samo, z tym, że grupuje je wg identyfikatora pokazując tylko to co się zmieniło. Warto poczytać pomoc do tych poleceń, aby uzyskać lepszą prezentację danych (użyj parametru –help).
Najważniejsze wywołania to:

candump -a -c lscan
candump -l lscan

Pierwszy wypisuje pakiety w kolorze i pokazując zawarte w nich teksty
drugi zapisuje wszystkie pobranie pakiety do pliku np w celu dalszej ich analizy


Wysyłanie pakietów

Do wysyłania pakietów na CAN mamy w zasadzie dwa najważniejsze programy: cansend oraz canplayer Za pomocą canplayer możemy wysłać na CAN poprzednio zapisane pakiety,
natomiast za pomocą candump możemy wysłać konkretny pakiet na CAN, np:

cansend mscan 223#00772823

polecenie to wyśle pakiet o identyfikatorze 223 i długości 4 bajtów na MSCAN.


w załącznikach programy vcan_init, opcom.py oraz instrukcja instalacji przygotowana przez Łukasza Ostapiuk

Zamknięte przez  LWPM
14.04.2020 09:15
Powód zamknięcia:  Zrobione
Admin
LWPM commented on 25.09.2018 18:00

no właśnie zacytowałeś instrukcję jak to się robi...

który krok jest niezrozumiały?

Ostap commented on 25.09.2018 19:48

Wszystkie Łukasz, wszystkie.

Chciałbym aby to było krok po kroku co trzeba zainstalować na gołym systemie, jak to zrobić, co wpisać w wierszu poleceń, co robić dalej itp itd

Jak zainstalować opcoma, jak sprawdzić i połączyć go z tymi programami itp. itd.

Po prostu krok po kroku.

Ja wiem, że dla Ciebie to jest oczywiste (jak dla mnie łowienie ryb, robienie zanęt, przynęt, zestawów, łódek zanętowych itp itd) ale ja chciałbym instrukcję jak dla debila, po prostu.

Ostap commented on 26.09.2018 16:06

Witam

Jakieś info? :)

Dla zafiry czy astry h i tak jest wszystko rozpracowane. Same ramki i tak ci nic nie dadza wg mnie bo wszystko musi byc w sofcie. Jedynie co to do rozpracowania jest vc a tego auta nie masz.

Ostap commented on 30.09.2018 10:42

Podgrzewanie foteli też? Diody od podgrzewania? Przycisk dds? Ryglowanie?

To, że ramki mi nic nie dadzą to wiem, ale umieścić je w soft to najmniejszy problem.

Admin
LWPM commented on 25.10.2018 12:22

rzuć okiem na opis i spróbuj podziałać

daj znać, czy coś jest nie jasne, poprawię, uzupełnię

Ostap commented on 25.10.2018 12:29

O człowieku ;) będzie co robić ;)

Tak na szybko

Czy ta maszyna Linux jest x32 czy x64?
Ruszy z pendrive czy tylko z virtuala?

Pytam bo mój laptop nie obsługuje virtualboxa

Admin
LWPM commented on 25.10.2018 12:50

w jakim sensie nie obsługuje VirtualBoxa? to przecież zwykły program :)
chyba, ze faktycznie masz jakiś antyk...

maszyna jest 32 bit

Admin
LWPM commented on 25.10.2018 12:51

ew. zainstaluj to co trzeba wg spisu u góry i skorzystaj z dołączonych programów

Admin
LWPM commented on 25.10.2018 12:59

jak ktoś umie z tego zrobić obraz dla pendrive... nie ma problemu - ja nie bardzo wiem jak się za to zabrać

Ostap commented on 25.10.2018 13:17

Mój laptop jest wiekowy ;)

Jeśli obraz jest ISO lub podobny to pendrive zrobić można rufusem lub podobnym.

VirtualBox niestety nie działa już na x32 ;)

Wiekowy lamptop tzn? Stary sprzet to nieraz ograniczenia. Moj laptop z i3 jakos z 2014r i radzi sobie virtualem. Moze lepiej kupic cos w miare uzywanego a antyka oddac do muzeum ;)?

Ostap commented on 25.10.2018 20:22

Pomieszałem ;) virtualbox działa tylko, że jest coś takiego przy starcie obrazu

Inny program do virtuali nie działa, zapomniałem nazwy.

Ostap commented on 26.10.2018 07:07

Zainstalowałem Debian na pendrive i jest coś takiego

Na Linux mint jest to samo bo mam go zainstalowanego na dysku

Admin
LWPM commented on 26.10.2018 07:31

co do Minta: nie zainstalowałeś pakietów pythona: standardowo:

pip3 install pycan
pip3 install pyserial

co co Debiana... to nie wiem... może procesor PAE nie wspiera?

Ostap commented on 26.10.2018 07:36

Sprawdzę to po pracy ;)

Ostap commented on 26.10.2018 21:18

No i kupa z mojego testowania :)

Jak na złość u mnie nie chce działać ani na debianie ani na mincie. Ten sam błąd.

Masz jakiś pomysł?

xxx@xxx:~$ python3
Python 3.6.6 (default, Sep 12 2018, 18:26:19)
[GCC 8.0.1 20180414 (experimental) [trunk revision 259383]] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
xxx@xxx:~$ pip3

Command 'pip3' not found, but can be installed with:

sudo apt install python3-pip

xxx@xxx:~$ sudo apt install python3-pip
[sudo] hasło użytkownika xxx:
Czytanie list pakietów... Gotowe
Budowanie drzewa zależności
Odczyt informacji o stanie... Gotowe
The following additional packages will be installed:

python-pip-whl python3-distutils python3-lib2to3

Polecane pakiety:

build-essential python3-dev python3-setuptools python3-wheel

Zostaną zainstalowane następujące NOWE pakiety:

python-pip-whl python3-distutils python3-lib2to3 python3-pip

0 aktualizowanych, 4 nowo instalowanych, 0 usuwanych i 0 nieaktualizowanych.
Konieczne pobranie 1 984 kB archiwów.
Po tej operacji zostanie dodatkowo użyte 4 572 kB miejsca na dysku.
Kontynuować? [T/n] t
Pobieranie:1 http://archive.ubuntu.com/ubuntu bionic-updates/universe i386 python-pip-whl all 9.0.1-2.3~ubuntu1 [1 652 kB]
Pobieranie:2 http://archive.ubuntu.com/ubuntu bionic/main i386 python3-lib2to3 all 3.6.5-3 [76,6 kB]
Pobieranie:3 http://archive.ubuntu.com/ubuntu bionic/main i386 python3-distutils all 3.6.5-3 [141 kB]
Pobieranie:4 http://archive.ubuntu.com/ubuntu bionic-updates/universe i386 python3-pip all 9.0.1-2.3~ubuntu1 [114 kB]
Pobrano 1 984 kB w 2s (893 kB/s)
Wybieranie wcześniej niewybranego pakietu python-pip-whl.
(Odczytywanie bazy danych ... 275435 plików i katalogów obecnie zainstalowanych.)
Przygotowywanie do rozpakowania pakietu .../python-pip-whl_9.0.1-2.3~ubuntu1_all.deb ...
Rozpakowywanie pakietu python-pip-whl (9.0.1-2.3~ubuntu1) ...
Wybieranie wcześniej niewybranego pakietu python3-lib2to3.
Przygotowywanie do rozpakowania pakietu .../python3-lib2to3_3.6.5-3_all.deb ...
Rozpakowywanie pakietu python3-lib2to3 (3.6.5-3) ...
Wybieranie wcześniej niewybranego pakietu python3-distutils.
Przygotowywanie do rozpakowania pakietu .../python3-distutils_3.6.5-3_all.deb ...
Rozpakowywanie pakietu python3-distutils (3.6.5-3) ...
Wybieranie wcześniej niewybranego pakietu python3-pip.
Przygotowywanie do rozpakowania pakietu .../python3-pip_9.0.1-2.3~ubuntu1_all.deb ...
Rozpakowywanie pakietu python3-pip (9.0.1-2.3~ubuntu1) ...
Konfigurowanie pakietu python-pip-whl (9.0.1-2.3~ubuntu1) ...
Przetwarzanie wyzwalaczy pakietu man-db (2.8.3-2ubuntu0.1)...
Konfigurowanie pakietu python3-lib2to3 (3.6.5-3) ...
Konfigurowanie pakietu python3-distutils (3.6.5-3) ...
Konfigurowanie pakietu python3-pip (9.0.1-2.3~ubuntu1) ...
xxx@xxx:~$ sudo apt-get update
Stary:1 http://archive.ubuntu.com/ubuntu bionic InRelease
Stary:2 http://archive.canonical.com/ubuntu bionic InRelease
Stary:3 http://archive.ubuntu.com/ubuntu bionic-updates InRelease
Stary:4 http://archive.ubuntu.com/ubuntu bionic-backports InRelease
Ign.:5 http://packages.linuxmint.com tara InRelease
Stary:6 http://security.ubuntu.com/ubuntu bionic-security InRelease
Stary:7 http://packages.linuxmint.com tara Release
Czytanie list pakietów... Gotowe
xxx@xxx:~$ pip3 install pycan
Collecting pycan

Could not find a version that satisfies the requirement pycan (from versions: )

No matching distribution found for pycan
xxx@xxx:~$ pip3 install pyserial
Collecting pyserial

Downloading https://files.pythonhosted.org/packages/0d/e4/2a744dd9e3be04a0c0907414e2a01a7c88bb3915cbe3c8cc06e209f59c30/pyserial-3.4-py2.py3-none-any.whl (193kB)
  100% |████████████████████████████████| 194kB 1.7MB/s 

Installing collected packages: pyserial
Successfully installed pyserial-3.4
xxx@xxx:~$

Ostap commented on 26.10.2018 21:54

pycan nie idzie zainstalować :(

Tak mało mi brakuje a zarazem tak wiele do skanowania :(

Admin
LWPM commented on 26.10.2018 22:35

Może poprostu can zamiast pycan?

Ostap commented on 27.10.2018 05:03

xxx@xxx:~$ pip3 install can
Collecting can

Using cached https://files.pythonhosted.org/packages/ee/c5/18f114a9445a67a93044922ac9b4bd419549044c602fcc8f24e38e6d1f97/can-2.0.tar.gz
  Complete output from command python setup.py egg_info:
  Traceback (most recent call last):
    File "", line 1, in 
  ModuleNotFoundError: No module named 'setuptools'
  
  ----------------------------------------

Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-zbluu68v/can/
xxx@xxx:~$ pip3 install pycan
Collecting pycan

Could not find a version that satisfies the requirement pycan (from versions: )

No matching distribution found for pycan
xxx@xxx:~$

Ostap commented on 27.10.2018 05:09

Tu jeszcze info odnośnie mojego systemu :)

System: Host: xxx Kernel: 4.15.0-38-generic i686 bits: 32 gcc: 7.3.0

         Desktop: Cinnamon 3.8.9 (Gtk 3.22.30-1ubuntu1) dm: lightdm Distro: Linux Mint 19 Tara

Machine: Device: laptop System: Hewlett-Packard product: HP Pavilion dv6000 (RT133EA#AKD) v: Rev 1 serial: N/A

         Mobo: Quanta model: 30BB v: 66.40 serial: N/A BIOS: Hewlett-Packard v: F.29 date: 11/13/2007
         Chassis: Quanta type: 10 serial: N/A

Battery BAT0: charge: 36.5 Wh 98.7% condition: 36.9/88.8 Wh (42%) volts: 11.4/14.8

         model: Hewlett-Packard Primary serial: N/A status: Discharging
         hidpp__0: charge: 95% condition: NA/NA Wh volts: NA
         model: Logitech M705 serial: status: Discharging

CPU: Dual core Intel T2250 (-MCP-) arch: Yonah rev.8 cache: 2048 KB

         flags: (nx pae sse sse2 sse3) bmips: 6918
         clock speeds: min/max: 800/1733 MHz 1: 1729 MHz 2: 1729 MHz

Graphics: Card: Intel Mobile 945GM/GMS 943/940GML Express Integrated Graphics Controller

         bus-ID: 00:02.0 chip-ID: 8086:27a2
         Display Server: x11 (X.Org 1.19.6 ) drivers: intel (unloaded: modesetting,fbdev,vesa)
         Resolution: 1280x800@60.00hz
         OpenGL: renderer: Mesa DRI Intel 945GM x86/MMX/SSE2
         version: 1.4 Mesa 18.0.5 Direct Render: Yes

Audio: Card Intel NM10/ICH7 Family High Def. Audio Controller

         driver: snd_hda_intel bus-ID: 00:1b.0 chip-ID: 8086:27d8
         Sound: Advanced Linux Sound Architecture v: k4.15.0-38-generic

Network: Card-1: Intel PRO/Wireless 4965 AG or AGN [Kedron] Network Connection

         driver: iwl4965 v: in-tree: bus-ID: 02:00.0 chip-ID: 8086:4229
         IF: wlp2s0 state: up mac: 
         Card-2: Intel PRO/100 VE Network Connection
         driver: e100 v: 3.5.24-k2-NAPI port: 4000 bus-ID: 05:08.0 chip-ID: 8086:1092
         IF: enp5s8 state: down mac: 

Drives: HDD Total Size: 320.1GB (7.1% used)

         ID-1: /dev/sda model: TOSHIBA_MK8034GS size: 80.0GB serial: 
         ID-2: /dev/sdb model: CT240BX200SSD1 size: 240.1GB serial: 

Partition: ID-1: / size: 19G used: 6.4G (37%) fs: ext4 dev: /dev/sdb5

         ID-2: /home size: 9.2G used: 132M (2%) fs: ext4 dev: /dev/sdb7
         ID-3: swap-1 size: 16.54GB used: 0.00GB (0%) fs: swap dev: /dev/sdb6

RAID: System: supported: N/A

         No RAID devices: /proc/mdstat, md_mod kernel module present
         Unused Devices: none

Sensors: System Temperatures: cpu: 51.0C mobo: N/A

         Fan Speeds (in rpm): cpu: N/A

Repos: Active apt sources in file: /etc/apt/sources.list.d/official-package-repositories.list

         deb http: //packages.linuxmint.com tara main upstream import backport #id:linuxmint_main
         deb http: //archive.ubuntu.com/ubuntu bionic main restricted universe multiverse
         deb http: //archive.ubuntu.com/ubuntu bionic-updates main restricted universe multiverse
         deb http: //archive.ubuntu.com/ubuntu bionic-backports main restricted universe multiverse
         deb http: //security.ubuntu.com/ubuntu/ bionic-security main restricted universe multiverse
         deb http: //archive.canonical.com/ubuntu/ bionic partner

Info: Processes: 190 Uptime: 11 min Memory: 551.7/3016.8MB

         Init: systemd v: 237 runlevel: 5 Gcc sys: 7.3.0 Client: Unknown python3.6 client inxi: 2.3.56
Ostap commented on 27.10.2018 13:10

Na ubuntu 16 jest coś takiego

xxx@xxx:~/Pulpit/tools$ pip3 install pycan
Collecting pycan

Could not find a version that satisfies the requirement pycan (from versions: )

No matching distribution found for pycan
You are using pip version 8.1.1, however version 18.1 is available.
You should consider upgrading via the 'pip install –upgrade pip' command.
xxx@xxx:~/Pulpit/tools$ pip3 install can
Collecting can
Installing collected packages: can
Successfully installed can-2.0
You are using pip version 8.1.1, however version 18.1 is available.
You should consider upgrading via the 'pip install –upgrade pip' command.
xxx@xxx:~/Pulpit/tools$ pip3 install pyserial
Collecting pyserial

Using cached https://files.pythonhosted.org/packages/0d/e4/2a744dd9e3be04a0c0907414e2a01a7c88bb3915cbe3c8cc06e209f59c30/pyserial-3.4-py2.py3-none-any.whl

Installing collected packages: pyserial
Successfully installed pyserial-3.4
You are using pip version 8.1.1, however version 18.1 is available.
You should consider upgrading via the 'pip install –upgrade pip' command.
xxx@xxx:~/Pulpit/tools$ sudo ./vcan_init
[sudo] hasło użytkownika xxx:
RTNETLINK answers: File exists
RTNETLINK answers: File exists
RTNETLINK answers: File exists
xxx@xxx:~/Pulpit/tools$ ./opcom_sniffer.py /dev/ttyUSB0 mscan
Traceback (most recent call last):

File "./opcom_sniffer.py", line 8, in 
  import can

ImportError: No module named 'can'
xxx@xxx:~/Pulpit/tools$ sudo ./opcom.py /dev/ttyUSB0 lscan
sudo: ./opcom.py: nie znaleziono polecenia
xxx@xxx:~/Pulpit/tools$ ./opcom_sniffer.py /dev/ttyUSB0 mscan
Traceback (most recent call last):

File "./opcom_sniffer.py", line 8, in 
  import can

ImportError: No module named 'can'
xxx@xxx:~/Pulpit/tools$ sudo ./opcom_sniffer.py /dev/ttyUSB0 lscan
Traceback (most recent call last):

File "./opcom_sniffer.py", line 8, in 
  import can

ImportError: No module named 'can'
xxx@xxx:~/Pulpit/tools$ ????????

Ostap commented on 27.10.2018 13:12

Czy startując polecenie ./opcom_sniffer.py /dev/ttyUSB0 mscan

Auto musi być podłączone pod laptopa?

No raczej. A przynajmniej pod opcoma. Bez opka wywali bledy.

Ostap commented on 28.10.2018 05:12

Sam interfejs mam podłączony ale wszystko robię w domu.
Wydaje mi się, że nie będzie miało to znaczenie czy auto będzie podłączone.
Sprawdzę dziś w aucie.

Admin
LWPM commented on 28.10.2018 06:47

Pod auto nie musi być połączone aby zadziałało

Trochę podpowiedzi

apt install python3-setuptools
pip3 install can

Podanym chyba instalujesz pakiety na python3 a używasz python2.7

Uruchamiaj w ten sposób:

python3 opcom.py
Admin
LWPM commented on 28.10.2018 07:53

Pokaż co pokazuje

pip3 list

No bez auta powinno dojsc do momentu gdzie sniffer wysle jakies dane na can i czeka na odpowiedz. Ty to jakies bledy, moze interface nie wykrywa?

Ostap commented on 28.10.2018 09:52

Wydaje mi się, że mój interfejs nie jest 1.59 tylko coś 1.43 lub podobnie.

Jak sprawdzić czy system widzi interfejs i pod jaką nazwą jest on?

Ostap commented on 28.10.2018 09:54

lsusb
Chyba tym ;)

Admin
LWPM commented on 28.10.2018 11:25

Powinno być pod /dev/ttyUSBx albo /dev/ttyACMx.

Podłącz OPCOM
Pokaż co pokazuje lsusb
Odłączyć OPCOM
Uruchom van_init
Podłącz OPCOM
Zobacz czy jest widoczny w /dev/tty

Ew pokaż pokaż co widzisz w dmesg w momencie podłączania OPCOM

Ostap commented on 28.10.2018 11:45

chyba jest wszystko ok

Ostap commented on 28.10.2018 11:48

teraz wcześniejsza część

   pip3 (2,3 KiB)
Admin
LWPM commented on 28.10.2018 12:05

/dev/ttyUSB0

Admin
LWPM commented on 29.10.2018 07:24

spróbuj:

pip3 install python-can

tak się u mnie ten pakiet nazywa :)

jak zwykle nie miałem czasu przez weekend :)

Ostap commented on 29.10.2018 08:39

Myślisz, że ja miałem :) wiem jak to jest :)

Dziś zainstalowałem ubuntu na dysku wewnętrznym, o dziwo nie było błędów przy instalacji pakietów itp

Udało mi się uzyskać coś takiego :)

Chyba dobrze?

Tak. Teraz do auta.

Ostap commented on 29.10.2018 08:41

Bez przejścia na root nie chce uruchomić poleceń nawet z sudo. Gdy dam su root to wtedy wszystko rusza. Co najlepsze wczoraj nie ruszało ale nie było w sumie tego pip3 install python-can

Idę chyba do auta :)

Mam na 13 to może coś uda się zeskanować :)

Admin
LWPM commented on 29.10.2018 09:40

z tym, że opcom.py uruchamiasz jednocześnie tylko dla jednego CANa... jak uruchomisz dla trzech, to nie zadziała wcale prawdopodobnie :)

tak więc... 2 z trzech okien do zamknięcia i wtedy do auta (tutaj LSCAN daje prawidłowe dane, reszta się nie połączyła, ale być może też zepsuła połączenie z LSCAN)

żeby sudo działało, trzeba je dobrze skonfigurować :)
wszystko w tej maszynie wirtualnej jest poustawiana, ale generalnie z roota też możesz wszystko robić

Ostap commented on 29.10.2018 09:44

No dobra byłem i szczerze to można dostać oczopląsu :)

Muszę chwilę pomyśleć jak mam to ugryźć.

Miliony cyferek

Jak w tym się poruszać?

Właśnie zauważyłem, że wszystkiego nie da się jednocześnie skanować ale to w domu tylko na próbę robiłem.

log z któregoś podłączenia

Jak w nim odszukać np przycisk dds? :)

Trzeba pewnie więcej filtrów ustawić w candump candump -a -c lscan?

W tym problem ze musisz wiedziec co cie interesuje i znac adresy, wtedy ustawic filtry na te adresy. Ale skad wziasc adresy to nie wiem.

Admin
LWPM commented on 29.10.2018 10:03

no przecież ostrzegałem... na CANie mnóstwo danych lata :)
proponuję popróbować z cansniffer, będziesz widział co się w pakietach zmienia. na początek:
uruchom can sniffer, odczekaj chwilę aż się wszystko ustabilizuje
i obserwuj co się dzieje po naciśnięciu przycisku naciśnięcia zamykania drzwi
i potem spróbuj zasymulować naciśnięcie tego guzika poprzez cansend...
szukaj wszystkiego na LSCAN - to takie ćwiczenie na początek

generalnie - cała zabawa to wiele godzin spędzonych w aucie i szukanie zarówno identyfikatorów jak i konkretnych bitów za co odpowiadają... :)

ale to nie jest problem tego buga, powiedz co poprawić w opisie, żeby można było zamknąć. opis gdzieś przypnę, żeby nie zniknął, ale muszę mieć pewność, że każdy sobie z tym poradzi...

Filtr na adresy ustawiasz w opcom_sniffer. Wtedy leca ci pakiety tylko z tego adresu. A tak to trzdba orzeanalizowac log metoda prob i bledow. Mysle ze np siedzac w aucie i zgrywajac log wciskasz tylko raz przycisk dds.potem analizujesz log szukajac wpisow ktore wystapily tylko raz. Jesli poszula kilka to pokolei wysylasz te ramki na can i obserwujesz co sie dzieje.

Admin
LWPM commented on 29.10.2018 10:07

filtry możesz ustawić w opcom.py, albo w candump, albo w cansniffer - na każdym etapie możesz poustawiać sobie filtry jakie chcesz

Admin
LWPM commented on 29.10.2018 10:19

ale skoro już Ci działa, to będziesz mógł pomóc z TPMSem w Zafirze, bo nie poradzę sobie bez pomocy kogoś kto ma takie coś w aucie

Ostap commented on 29.10.2018 10:55

Oczywiście, że pomogę z TPMS. Za kilka dni zakładam zimówki w których są sprawne czujniki i będzie wszystko działać jak powinno. Teraz system mi widzi tylko 3 bo jeden leży przy lewarku zmiany biegów ;)

Co do buga to postaram się napisać wszystko co trzeba zrobić aby to uruchomić na systemie zainstalowanym a nie z Twojej maszyny bo jak widać nie u każdego ona zadziała.

Może w pracy znajdę chwilę to opiszę co i jak.

Widziałem, że po uspokojeniu lscan gdy wciskam zamknij to tylko z 2 dane się pojawiły a jak dałem drugi raz na ryglowanie to jakby tylko 1 lub też dwa.

Teraz tylko czas jest potrzebny ;)

Ostap commented on 29.10.2018 10:58

lscan 350#02017701

Nie wiem czy to nie to jest przycisk DDS tylko, że jak wyślę to polecenie po can to i tak się nic nie zmieni bo on działa po kilku sekundach przytrzymania.

Admin
LWPM commented on 29.10.2018 11:04

eksperymentuj - to wymaga wszystko czasu w kilka minut nie wiele się dowiesz jak nie masz wprawy

Ostap commented on 29.10.2018 11:31

To wiedziałem od samego początku ;) czas to towar deficytowy u mnie ale teraz będzie długi weekend to może uda się posiedzieć ;)

Zasadniczo muszę odczytać tylko kilka rzeczy no chyba, że mnie wciągnie ;)

Bardzo Ci dziękuję, że wszystko już u mnie działa ;)

Kiedyś używałem linuxa i teraz muszę sobie to wszystko przypomnieć. Nie byłem expertem ale coś tam się robiło ;)

Ostap commented on 29.10.2018 17:26

Napisałem tak na szybko. Trzeba to sformatować. Mogę to jeszcze zmienić ale to już nie dziś.

Wczytywanie...

Available keyboard shortcuts

Lista zgłoszeń

Task Details

Task Editing