Autor Wątek: Mam sobie dualshock4 i chciałbym do czegoś innego niż granie go wykorzystać.  (Przeczytany 2037 razy)

Offline koirat

  • Użytkownik

# Styczeń 14, 2017, 03:02:48
Orientujecie się czy jest gdzieś jakaś biblioteka do obsługi dualshock4 najlepiej przez bluetootha.
Chciałem sobie zrobić zdalny samochodzik na bluetootha i sterować nim za pomocą tego pada.

Offline Mr. Spam

  • Miłośnik przetworów mięsnych

Offline maro

  • Użytkownik

# Styczeń 14, 2017, 13:10:35
Na jakiej platformie? Arduino?

Offline koirat

  • Użytkownik

# Styczeń 14, 2017, 13:56:00
Może być arduino.

Offline Rakieta

  • Użytkownik

# Styczeń 14, 2017, 15:11:40
Podziel się wiedzą kiedy już do czegoś dojdziesz. Zawsze mnie interesowało jak trudne to może być. Choć mnie by bardziej interesowała budowa silnika i modelu, niż jego sterowanie :) Szkoda, że nie mam drukarki 3D.

Offline Overvoid

  • Użytkownik

# Styczeń 14, 2017, 16:45:54
Linux obsługuje DS3 i DS4 out of box. Jeśli twoim autkiem sterowałby np. komputerek klasy NanoPi to możesz do niego podłączyć moduł bluetooth na usb, sparować i czytać wejścia z pada przez np. SDL.

Offline koirat

  • Użytkownik

# Styczeń 14, 2017, 18:13:17
@Overvoid No to jest jakaś opcja. Szczegónie że z tego co widze to driver pod linuksa jest opensource i można by spróbowac jakiegoś portowania.

@rakieta Silnik to raczej się kupuje niż buduje. Co do modelu niewiem czy nie wykorzystam jakiegoś gotowego.

Offline maro

  • Użytkownik

# Styczeń 15, 2017, 00:29:45
Jeśli chodzi o Arduino, to potrzebujesz moduł bluetooth obsługujący profil HID, np HC05 lub HC06.
Z tego co czytam, ludzie używają tych modułów do komunikacji z dualshockiem4.
Później zostaje rozeznać się w temacie silników i serw, i oprogramować to wszystko - co sprowadza się do użycia odpowiednich bibliotek.

Offline deadeye

  • Użytkownik

  • +3
# Styczeń 15, 2017, 10:11:02
Też zrobiłem sobie zdalny samochodzik sterowany przez ds :)

Dobre info - spisuje się świetnie, złe info - jakiś czas temu Sony zmieniło firmware pada i teraz nie działa już z natywnym sterownikiem padów z linuxa. Oznacza to tyle że nie wystarczy go sparować z linuxem i działa, ale jest na szczęscie alternatywny sterownik który radzi sobie z nowym firmware.

Więc combo: rasberry pi + rasbian + ds4drv sprawdza się całkiem ładnie i działa.
Link do ds4 https://github.com/chrippa/ds4drv
Sam odczyt możesz zrobić np tym http://python-evdev.readthedocs.io/en/latest/index.html

Rasberry jest też wg mnie łatwiejsze w programowaniu i ma o niebo większe możliwości (choć i parę braków).

Druga opcja jest prostsza i tańsza, użyć telefonu z androidem jako głównej jednostki sterującej, i to na nią napisać soft i z nią łączyć ds4. Większość urządzeń z androidem obsługuje ds4, wliczając w to wersje po zmianie firmware.  Wyjątkiem są najnowsze telefony Samsunga, np Galaxy s7 edge, gdzie Samsung blokuje ds4.

Gdy wybierzesz wariant z Androidem, to wtedy możesz kupić najtańszą płytkę arduino-podobną, np http://allegro.pl/klon-arduino-nano-v3-usb-avr-uno-pro-atmega328-i6594850935.html?bi_s=ads&bi_m=p2,2&bi_c=48523

i traktować Arduino tylko jako interfejs do kontrolowania silników i serw. Dodatkową zaletą jest to, że podłączając telefon do arduino zwykłym kablem usb, jednocześnie z baterii telefonu zasilisz płytkę arduino stabilizowanym napięciem, więc nie musisz się martwić zasilaniem. A do silników wystarczy dowolne niestabilizowane zasilanie z baterii. Jak to podłączyć masz np tutaj
http://www.instructables.com/id/Arduin-Adroid-USB-Serial-Communication/?ALLSTEPS
« Ostatnia zmiana: Styczeń 15, 2017, 10:22:10 wysłana przez deadeye »