Spisu treści:
- Krok 1: Wykonywanie wstępnej konfiguracji DragonBoard 410c**
- Krok 2: Lokalizowanie DragonBoard 410c za pomocą anteny GPS
- Krok 3: Instalacja klucza USB 3G/4G
- Krok 4: Przekształcenie DragonBoard 410c w hotspot / punkt dostępowy Wi-Fi
- Krok 5: Uzyskaj dostęp do DragonBoard 410c bezprzewodowo za pomocą protokołu SSH, za pośrednictwem połączenia z hotspotem
- Krok 6: Podłączanie DragonBoard 410c do OBD samochodu za pomocą Bluetooth - część 1/2
- Krok 7: Podłączanie DragonBoard 410c do OBD samochodu za pomocą Bluetooth - część 2/2
- Krok 8: Podłączanie DragonBoard 410c do OBD samochodu za pomocą PyOBD
- Krok 9: Odczytywanie danych z samochodu za pomocą Pythona
- Krok 10: Skrypty cykliczne i procedura przechowywania danych dla przechwyconych danych
- Krok 11: Kłopoty po drodze
- Krok 12: Referencje
Wideo: DragonBoard i OBD2: 12 kroków
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:29
Czytając dane, które wychodzą z portu OBD2 w Twoim samochodzie, można z niego wydobyć niesamowite informacje. Korzystając z DragonBoard 410c, pracowaliśmy nad tym projektem i opisaliśmy go tutaj, abyś mógł to zrobić sam.
Ten projekt był możliwy tylko dzięki partnerstwu z #Qualcomm #Embarcados #Linaro #Arrow #BaitaAceleradora, które pozwoliło nam mieć dostęp do najlepszego sprzętu na rynku, a także kontakt z najlepszymi profesjonalistami w celu wsparcia rozwoju.
Zespół składał się z tych gości:
- Marcel Ogando - Haker - [email protected]
- Leandro Alvernaz - Haker - [email protected]
- Thiago Paulino Rodrigues - Marketing - [email protected]
Jesteśmy bardzo chętni, aby pomóc Ci osiągnąć Twój cel i upewnić się, że ukończysz swój projekt, więc daj nam znać, jeśli potrzebujesz pomocy wykraczającej poza poniższe instrukcje.
Para seguir este projeto em Português, clique aqui:
www.instructables.com/id/DragonBoard-Com-OBD
Do tego projektu wykorzystaliśmy następujące elementy:
- Qualcomm DragonBoard 410c
- ELM327 Interfejs Bluetooth OBD2
- Klucz USB 3G/4G
- Ładowarka samochodowa z falownikiem napięcia (110 v)
Krok 1: Wykonywanie wstępnej konfiguracji DragonBoard 410c**
Korzystając z Qualcomm DragonBoard 410c, rozpoczęliśmy projekt od zainstalowania dystrybucji Linuksa o nazwie Linaro, która pozwoliła nam skonfigurować wszystkie potrzebne urządzenia.
Aby utworzyć obraz Linaro dla DragonBoard, użyj Ubunto na VirtualBox, dzięki czemu możesz użyć FastBoot (czyli aplikacji opartej na systemie Linux). Więc w zasadzie to, co musisz zrobić, to otworzyć Terminal w VM Ubuntu i wpisać:
sudo apt-get android-tools-fastboot
Aby zainstalować Linaro, musimy wykonać 2 ważne kroki:
1) Instalacja BOOTLOADERA
Nazwa pliku: dragonboard410c_bootloader_emmc_linux-79.zip
builds.96boards.org/releases/dragonboard410c/linaro/rescue/latest/
Rozpakuj pliki i wybierz folder:
cd /FolderName (ścieżka do rozpakowanego folderu)
Wpisz następujący kod:
urządzenia sudo fastboot
Spodziewany powrót:
(szesnastkowy) fastboot
Następnie wpisz:
sudo./flashall
Spodziewany powrót:
skończone. całkowity czas 1.000s (bez błędów)
Instalacja SYSTEMU OPERACYJNEGO
builds.96boards.org/releases/dragonboard410c/linaro/debian/latest/
Pobierz te 2 pliki:
boot-linaro-stretch-qcom-snapdragon-arm64-20170607-246.img.gz
Jest to najnowsza wersja dostępna do tej pory (17 czerwca), więc nazwa może się zmienić w przyszłości. Wzorzec, którego szukasz, to „boot-linaro-VersionName”. Ten nazywa się „Stretch”, a poprzedni to „Jessie”.
linaro-stretch-alip-qcom-snapdragon-arm64-20170607-246.img.gz
Jest to najnowsza wersja do tej pory (17 czerwca), a nazwa może się zmienić w przyszłości. Poszukaj wzoru „linaro-VersionName-alip”.
Rozpakuj pliki z. GZ
Uzyskaj dostęp do folderu „root” w odniesieniu do rozpakowanych plików
przykład: "/Downloads", czyli miejsce przechowywania pobranych plików.
Teraz zacznij od następujących poleceń:
urządzenia sudo fastboot
sudo fastboot flash boot boot-linaro-NomeDaVersão-qcom-snapdragon-arm64-DATA.img
Oczekiwany zwrot (pamiętając o czasie może się różnić):
skończone. całkowity czas: 100,00s
Podłącz mysz, klawiaturę i monitor/telewizor za pomocą portu HDMI
Miej to pod ręką:
użytkownik: linaro
hasło: linaro
Otwórz aplikację Lxterminal i kontynuuj pobieranie listy dostępnych aktualizacji dotyczących zainstalowanych pakietów:
aktualizacja sudo apt-get
Upewnij się, że zainstalowałeś dostępne pakiety z listy:
sudo apt-get upgrade
Podpowiedź: Linaro zostało wybrane ze względu na niezwykle szybki rozruch i społeczność bardzo zaangażowaną i zorientowaną na rozwiązywanie problemów, co pozwala zaoszczędzić dużo czasu.
Krok 2: Lokalizowanie DragonBoard 410c za pomocą anteny GPS
Zacznij od zainstalowania niezbędnych aplikacji, które będą klientami modułu GPS. Nazwy aplikacji to: GNSS-GPSD, GPSD i GPSD-KLIENCI. Aby to zrobić, postępuj zgodnie z poleceniami:
sudo apt-get install gnss-gpsd gpsd gpsd-klienci
Po zainstalowaniu tych aplikacji będziesz potrzebować więcej poleceń, aby je poprawnie uruchomić:
sudo systemctl start qdsp-start.service
sudo systemctl start gnss-gpsd.service sudo systemctl start qmi-gps-proxy.service
Teraz przenieś DragonBoard 410c na dużą otwartą przestrzeń, z wyraźnym widokiem nieba, umożliwiając odbiór sygnału z satelitów. Teraz wpisz w terminalu:
gpsmon – n
Z naszych testów dane zaczęły pojawiać się na ekranie średnio po 10 minutach. To bardzo się zmienia w zależności od miejsca, poza położeniem DragonBoard na oknie lub w pomieszczeniu, poza wieloma innymi barierami, które mogą zakłócać odbiór sygnału GPS.
Krok 3: Instalacja klucza USB 3G/4G
Istnieje kilka sposobów podłączenia DragonBoard 410c do sieci 3G/4G/GSM:
- Używanie Shield / BreakoutBoard z modemem GSM, który ma również gniazdo karty SIM;
- Użyj klucza USB 3G/4G.
Do tego projektu zdecydowaliśmy się użyć klucza USB Huawei E3272, ponieważ zakup był łatwy i szybki.
Aby skonfigurować modem, możesz użyć terminala (za pomocą aplikacji WVDial), ale najłatwiej to zrobić za pomocą graficznego interfejsu użytkownika (GUI) Linaro. Do tego w następujący sposób:
- Gdy klucz sprzętowy USB jest podłączony do DragonBoard, kliknij prawym przyciskiem myszy ikonę „sieci” w prawym dolnym rogu ekranu;
- „Edytuj połączenia” > „Dodaj”;
- Wybierz „Mobilne łącze szerokopasmowe” z menu rozwijanego;
- Kliknij „Utwórz”.
Postępuj zgodnie z instrukcjami kreatora, upewniając się, że wybrałeś odpowiedniego operatora z menu, umożliwiając odpowiednie połączenie urządzenia.
Krok 4: Przekształcenie DragonBoard 410c w hotspot / punkt dostępowy Wi-Fi
Najłatwiejszym sposobem skonfigurowania DragonBoard 410c jako routera Wi-Fi lub hotspotu (teraz, gdy masz skonfigurowane połączenie internetowe) jest skorzystanie z GUI systemu. Aby to zrobić, wykonaj poniższe czynności:
- Kliknij prawym przyciskiem ikonę sieci w prawym dolnym rogu
- Wybierz „Edytuj połączenia, a następnie „Dodaj”
- Wybierz „WiFi”
- Kliknij utwórz
Zmień nazwę sieci, którą chcesz utworzyć w polu „SSID” i zmień pole „Tryb” na „Hotspot”.
Aby upewnić się, że zadziała, zweryfikuj następujące elementy:
- Przejdź do zakładki „Ustawienia IPv4”
- Sprawdź, czy „Metoda”
Krok 5: Uzyskaj dostęp do DragonBoard 410c bezprzewodowo za pomocą protokołu SSH, za pośrednictwem połączenia z hotspotem
Udało nam się stworzyć sposób na zdalny dostęp do DragonBoard, bez względu na to, czy jesteś w pobliżu, czy nie. Zwykle musisz połączyć się z samą płytą za pomocą Wi-Fi lub bluetooth. Innym sposobem byłby dostęp do niego, łącząc się z tą samą siecią Wifi (np. z routera). Wykonując kolejne kroki, tworzymy samodzielne urządzenie, które generuje własną sieć i otwiera się na sieć, aby uzyskać do niej dostęp.
Możesz zacząć od zainstalowania "Auto SSH", używając poniższego kodu:
sudo apt-get install gcc make
wget https://www.harding.motd.ca/autossh/autossh-1.4e.tgz tar -xf autossh-1.4e.tgz cd autossh-1.4e./configure make sudo make install
Teraz wygenerujemy klucz kryptograficzny, korzystając ze standardu RSA. Ten klucz będzie używany do bezpiecznego dostępu do instancji punktu końcowego systemu Linux za pośrednictwem publicznego adresu IP modemu 3G. Główny cel tego kroku. Poniższy kod skopiuje ten klucz do repozytorium zaufanych kluczy Linuksa, zapewniając jeszcze większe bezpieczeństwo połączenia.
ssh-keygen -t rsa
scp ~/.ssh/id_rsa.pub user@remote_server:.ssh/authorized_keys autossh -M 0 -q -f -N -i /home/pi/.ssh/id_rsa -o "ServerAliveInterval 60" -o "ServerAliveCountMax 3" -R 2222:localhost:22 użytkownik@zdalny_serwer
Wykonując te kroki, właśnie przekształciłeś Qualcomm DragonBoard 410c w serwer w chmurze! \o/
Krok 6: Podłączanie DragonBoard 410c do OBD samochodu za pomocą Bluetooth - część 1/2
Interfejs komunikacyjny samochodu odbywa się poprzez port OBD2. Informacje wymieniane w tym porcie muszą zostać przetłumaczone, a do tego potrzebujemy urządzenia tłumacza. Istnieją dwie alternatywy sprzętowe: ELM327 lub STN1170.
Do tego projektu wykorzystaliśmy urządzenie Bluetooth z chipsetem opartym na ELM327.
Ważne jest, aby pamiętać, że dostępność ELM327 nie oznacza, że jest to ORYGINALNA WERSJA ELM327. Większość dostępnych chipsetów jest oparta na wersji 1.5, kiedy to informacje o chipie zostały sklonowane i wyciekły na rynek. Oryginalny ELM327 jest teraz w wersji 2.2. Ewolucja tego chipsetu dostarcza więcej danych o nowszych samochodach. Warto o tym wiedzieć, ponieważ w zależności od testów dostęp do danych z nowszych pojazdów może być możliwy lub nie.
Za pomocą adaptera Bluetooth OBD2 znajdź port OBD2 swojego samochodu. Może znajdować się gdzieś pod kierownicą. Łatwiej będzie go poszukać za pomocą tego narzędzia:
Uzyskaj dostęp do DragonBoard 410c za pomocą SSH z notebooka (pamiętaj, że jesteś teraz w samochodzie i nie masz telewizora/monitora, aby podłączyć płytę). Jak tylko urządzenie Bluetooth OBD2 zostanie włożone do portu samochodowego, wykonaj poniższe czynności, aby uzyskać dostęp do łączności Bluetooth.
sudo bluetoothctl
można sparować na agencie na domyślnym skanowaniu agenta naNa tym etapie ważne jest, aby skopiować adres MAC, ponieważ będzie on potrzebny w kolejnych krokach
Wpisz te polecenia:
zaufaj MACADDRESS
sparuj MACADDRESS
Powinieneś zostać poproszony o wpisanie kodu PIN, aby sparować Bluetooth OBD2 z płytą.
Zwykle kod PIN to 1234 lub 0000 - w zależności od sprzętu
Teraz powinieneś zobaczyć ekran „połączenie udane”. Aby zamknąć aplikację Bluetooth, użyj następującego polecenia:
zrezygnować
Następnym krokiem jest powiązanie urządzenia z portem szeregowym:
sudo rfcomm bind 0 MACADDRESS 1
Aby upewnić się, że operacja się powiodła, wpisz:
ls / dev
Powinien zostać wyświetlony port „Rfcomm0”.
Krok 7: Podłączanie DragonBoard 410c do OBD samochodu za pomocą Bluetooth - część 2/2
Głównym celem tego kroku jest zagwarantowanie poprawnej komunikacji pomiędzy 3 urządzeniami:
ELM327, DragonBoard 410c i samochód
Pobierz aplikację „Ekran”, aby wysyłać wiadomości szeregowe przez port szeregowy
ekran instalacyjny sudo apt-get
Port szeregowy będzie używany do wysyłania poleceń AT i odbierania odpowiedzi między DragonBoard 410c a urządzeniem ELM327.
Uzyskaj dostęp do następującego łącza, aby uzyskać więcej informacji na temat poleceń AT:
elmelectronics.com/ELM327/AT_Commands.pdf
Ostrzeżenie:
Bądź bardzo ostrożny z tym krokiem! Wszystkie informacje, które wyślesz do urządzenia, zostaną zinterpretowane i wysłane do samochodu, jeśli zostanie wysłana niewłaściwa wiadomość, może ona zostać źle zinterpretowana przez samochód i spowodować problemy. Zwróć uwagę na polecenia i przestudiuj je, zanim spróbujesz własnego kodu. Zdecydowanie zalecamy przestrzeganie poniższych instrukcji co do litery.
Postępuj zgodnie z poniższą sekwencją poleceń, aby zainicjować komunikację:
-
Ta funkcja uruchomi komunikację szeregową za pomocą ekranu:
ekran /dev/rfcomm0
Jak tylko terminal się załaduje, wpisz następujące polecenia w tej kolejności:
ATZ
ATL1 ATH1 ATS1 ATSP0
Końcowy test komunikacji:
Wpisz w konsoli:
ATI
Powinien zwrócić „ELM327 v1.5” lub wersję ELM twojego urządzenia
To dowód na to, że komunikacja między urządzeniem ELM a DragonBoard 410c działa
Szybka wskazówka
Aby wyjść z „Ekranu”, konieczne jest wpisanie Ctrl+A, a następnie Ctrl+D.
Krok 8: Podłączanie DragonBoard 410c do OBD samochodu za pomocą PyOBD
PyOBD to biblioteka Pythona umożliwiająca komunikację z urządzeniami OBD2, które można podłączyć do samochodów. Dzięki temu możemy wyodrębnić kilka informacji, w tym prędkość pojazdu i błędy elektryczne.
W tym kroku musimy upewnić się, że następujące biblioteki Pythona są zainstalowane w Linaro na DragonBoard 410c:
- PIP - menedżer pakietów Pythona
sudo apt-get zainstaluj python-pip
-
SetupTools - menedżer instalacji plików
sudo pip install -U pip setupstools
-
Wheel - zainstaluj program do formatowania pakietów
sudo apt-get zainstaluj python-wheel
-
OBD - biblioteka Python do komunikacji z urządzeniem OBD
sudo apt-get zainstaluj python-obd
-
GPS - biblioteka Pythona do pobierania danych z GPS
sudo pip zainstaluj gps
-
Requests - pakiet Pythona dla RESTful
prośby o instalację sudo pip
Aby sprawdzić, czy pakiet OBD działa poprawnie, wykonaj następujące kroki:
sudo pyton
Teraz kursor terminala zostanie zmieniony na „>>>”, wskazując, że Python jest uruchomiony. Możesz teraz zacząć wpisywać poniższe polecenia:
-
Zacznij od zaimportowania biblioteki OBD:
importuj obd
-
Aby połączyć się z portem szeregowym użyj polecenia:
połączenie = stare. OBD(„dev/rfcomm0”)
- To normalne, że wyświetla się komunikat o błędzie informujący, że komunikacja nie powiodła się, więc jeśli tak się stanie, spróbuj jeszcze raz.
-
Aby dowiedzieć się, czy Python otrzymuje informacje z samochodu przechodzącego przez ELM327 przez bluetooth, wpisz:
połączenie.nazwa_protokołu()
Krok 9: Odczytywanie danych z samochodu za pomocą Pythona
Stworzymy plik o nazwie: OBD.py, zgodnie z poniższymi instrukcjami, a następnie kod.
Zacznij od zaimportowania biblioteki OBD do Pythona, aby rozpocząć połączenia.
Z niewiadomych przyczyn, korzystając z naszego sprzętu, pierwsza próba połączenia zawsze kończy się niepowodzeniem. Druga próba, zawsze działa. Dlatego w kodzie zauważysz dwie linijki komendy próbujące nawiązać połączenie.
Po pomyślnym nawiązaniu połączenia uruchomiliśmy nieskończoną pętlę, która wyszukuje dane OBD, formatuje je zgodnie z zadanymi parametrami. Następnie tworzy adres URL, używając Query String, co pozwala na przesłanie go do serwera metodą POST.
Na poniższym przykładzie udało nam się uzyskać następujące informacje:
- RPM
- Prędkość
Funkcje do przechwytywania danych wykorzystują dwa parametry. Na przykład używając [1][12] szukasz [modułu] [PID]. Listę funkcji można znaleźć pod adresem:
Na koniec wygeneruj adres URL ze wszystkimi informacjami połączonymi i dodanymi do pliku o nazwie „obd_data.dat”.
Kod dla OBD.py znajduje się poniżej.
Po podłączeniu i przechwyceniu danych utworzymy plik o nazwie: envia_OBD.py
Ta część kodu staje się prostsza. Zaimportuj biblioteki powiązane z danymi żądania/wysyłania, używając RESTFUL.
Utwórz WHILE, aby użyć POST i wyślij adres URL pierwszego wiersza pliku, wypełniony wcześniej przez OBD.py. Następnie, aby uniknąć ponownego wysłania danych, usuwa tę linię z pliku.
Kod pliku OBD.py znajduje się poniżej.
Krok 10: Skrypty cykliczne i procedura przechowywania danych dla przechwyconych danych
Wszystko, co do tej pory zrobiliśmy, było ukierunkowane na zapewnienie prawidłowej komunikacji DragonBoard z komponentami, takimi jak 3G, Wi-Fi, Bluetooth, dane GPS i inne.
Użyj poniższego kodu, aby edytować plik „rc.local”, który ma już pewne funkcje i predefiniowane polecenia. Znajduje się w '/etc'. Aby edytować, użyj polecenia:
sudo nano /etc/rc.local
Teraz musimy skonfigurować wszystkie usługi i funkcje, tworząc procedury, które inicjują się automatycznie po uruchomieniu DragonBoard. Użyjmy do tego BASH. BASH (Bourne-Again-SHell) to aplikacja interpretująca polecenia systemu Linux.
Poniższy kod zawiera polecenia BASH i będziesz musiał wprowadzić adres MAC Bluetooth/OBD. Zachowaj szczególną ostrożność, aby zakończyć kod „exit 0”, czyli odpowiedzią systemu, że akcja się powiodła.
Jeśli [! -f /etc/ssh/ssh_host_rsa_key]
następnie systemctl stop ssh.socket||true dpkg-reconfigure openssh-server fi sudo systemctl start qdsp-start.service rfcomm bind 0 MACADDRESS 1 sudo python /home/linaro/Documents/FadaDoCarro/conectaGPS.py i sudo python /home/linaro /Documents/FadaDoCarro/OBD.py i sudo python /home/linaro/Documents/FadaDoCarro/envia_OBD.py i wyjdź 0
Od teraz za każdym razem, gdy włączysz DragonBoard, połączy się on z 3G i wyśle dane GPS i OBD na wybrany serwer.
Krok 11: Kłopoty po drodze
Poniżej wymieniliśmy niektóre problemy, które znaleźliśmy po drodze przed napisaniem tej instrukcji, ale pomyśleliśmy, że może ci to pomóc, jeśli ci się to przydarzy.
-
PyOBD
Musisz być bardzo ostrożny, aby przesyłać dane podczas komunikacji z samochodem. W jednej z naszych pierwszych prób, gdy komunikacja nie była stabilna, wysłaliśmy niewłaściwe polecenie, które w zasadzie spowodowało awarię ECU. Dźwignia zmiany biegów utknęła na parkingu, a niektóre kontrolki na desce rozdzielczej migały losowo. Znalezione rozwiązanie polegało na odłączeniu jednego z kabli akumulatora na około 15 minut. Spowoduje to zresetowanie ECU do domyślnego stanu fabrycznego, anulując wszelkie polecenia lub zmiany, które mogliśmy wprowadzić
-
Linaro
Mieliśmy problem z naszym DragonBoardem, który sporadycznie uruchamiał się ponownie. Problem został rozwiązany przez zespół Linaro, który wydał nowszą wersję systemu operacyjnego. Napisaliśmy ten samouczek ze zaktualizowaną wersją
-
GPS DragonBoard
DragonBoard 410c firmy Qualcomm nie ma wewnętrznej anteny GPS, więc aby zwiększyć akwizycję sygnału GPS, musimy zainstalować złącze anteny zewnętrznej. Ten proces jest lepiej wyjaśniony w następującym łączu:
Krok 12: Referencje
Program rozruchowy
builds.96boards.org/releases/dragonboard410c/linaro/rescue/latest/
Linaro
builds.96boards.org/releases/dragonboard410c/linaro/debian/latest/
Instalacja Como na Linaro na DragonBoard 410c
www.embarcados.com.br/linux-linaro-alip-na-qualcomm-dragonboard-410c/
Dokumentacja GPS dla DragonBoard
discuss.96boards.org/t/gps-software/170/16
Demo GPS
gist.github.com/wolfg1969/4653340
Python OBD
github.com/brendan-w/python-OBD
Podłącz RaspberryPi do OBD Bluetooth
gersic.com/connecting-your-raspberry-pi-to-a-bluetooth-obd-ii-adapter/
Zalecana:
Obrotomierz/wskaźnik skanowania za pomocą Arduino, OBD2 i magistrali CAN: 8 kroków
Obrotomierz / wskaźnik skanowania za pomocą Arduino, OBD2 i magistrali CAN: Każdy właściciel Toyoty Prius (lub innego pojazdu hybrydowego/specjalnego) będzie wiedział, że na jego deskach rozdzielczych może brakować kilku tarcz! Mój Prius nie ma wskaźnika obrotów silnika ani wskaźnika temperatury. Jeśli jesteś facetem od występów, możesz chcieć wiedzieć takie rzeczy, jak wyprzedzenie czasu i
Desenvolvendo Aplicações Remotamente dla Dragonboard 410c Usando IDE Eclipse: 17 kroków
Desenvolvendo Aplikacje zdalne dla Dragonboard 410c Użyj IDE Eclipse: O objetivo deste documento é mostrar as etapas necess'rias para configurar o ambiente de desenvolvimento, de modo que o HostPC (Computador / Notebook), através do IDE Eclipse compile os códigos e exporte para o Alvo (Drag
Jak podłączyć i kontrolować lampę przez moduł ZigBee na Dragonboard: 5 kroków
Jak podłączyć i sterować lampą przez moduł ZigBee na Dragonboard: Ta instrukcja uczy użytkownika, jak podłączyć i poprawnie zainstalować moduł ZigBee na Dragonboard oraz współdziałać z lampą sterowaną ZigBee (OSRAM), tworząc sieć ZigBee IOT.Wymagania : Dragonboard 410c; CC2531 klucz USB; T
Vision 4all - Sistema Visão Assistida Para Deficientes Visuais Usando OpenCV, Dragonboard 410c E Aplicativo Android: 6 kroków
Vision 4all - Sistema Visão Assistida Para Deficientes Visuais Usando OpenCV, Dragonboard 410c E Aplicativo Android: DESCRIÇÃOO intuito do projektu é dar autonomia para deficientes visuais se locomoverem em ambientes indoor como casas ou centra handlowe e aeroportos. Locomoç'o em ambientes j'aacute; mapeados pode ou nã o s
Czytnik Bluetooth OBD2: 3 kroki
Czytnik Bluetooth OBD2: Witaj, to mój pierwszy instruktaż i mam nadzieję, że jest łatwy do zrozumienia i możesz stworzyć własny. Jeśli masz jakieś pytania, skontaktuj się ze mną, a może pomogę. Postaram się, aby to było niezwykle proste do naśladowania dzięki temu