«Retrogaming» Подключаем джойстик от Dendi/NES к Raspberry Pi 3 B+

admin

По любому вопросу
Администратор
1,650
1,505
5 Мар 2016
Сегодня мы открыли на форуме раздел «Raspberry Pi — Arduino», и к этому не большому событию решил сделать тему, о том «Как подключить джойстик от Dendi к Raspberry Pi 3».

Для многих это будет хорошим поводом изучить платформу, работу с GPIO пинами на малине, так же приобщиться к той самой культуре игр 90-00x. Ну а для некоторых способ вспомнить те самые игры с китайской Dendi нулевых. Лично в то время очень уважал Battle City, «танчики» в народе =).

Для начала нам понадобиться:
  • Любой джойстик оригинальной NES, или её китайский клон. (В моем случае я буду использовать джойстик от китайского клона-клона «Комбат»).
99h7dOY.jpg
С оригиналом сама плата полностью идентична, отличие только; внешний вид, цена и разъем подключения.
  • 5-ти жильный провод (Я взял удлинитель USB 2.0, так как родной провод уже давным давно прогнил и никуда не годиться).
AW4DyOd.jpg
  • Сам собственно Для просмотра ссылки Войди или Зарегистрируйся (У меня используется raspberry pi 3 model b).
  • Перемычки DuPont Line 5 штук, МАМА-ПАПА или МАМА-МАМА. (В любом случае будем использовать только МАМУ. Требуются они для удобного и безопасного подключения проводов к GPIO пинам малины).
  • Так же понадобиться инструмент: Паяльник, Отвертка.
  • Желательна термоусадка, для изоляции провода. В моем случае использовалась с диаметром 1,3,4 мм.
Часть 1: Подготовка джойстика

Наша задача, отпаять старые провода от платы и припаять наш новый «USB удлинитель». При этом требуется записать порядок проводов, для того что бы не запутаться.
bwzXxfk.jpg
zWOC2Kr.jpg
К слову изначально я как и любой русский человек отрезал провода, после чего уже взялся «измерять». Берем собственно импровизированный «тестер»(Батарейка с светодиодом, плюс разорван на 2 щупа.), и проверяем «кто от куда». Благо — ничего не выкинул и все такая возможность осталась.
c2kxyol.jpg
После проверки и записи результата, мы внимательно смотрим на плату и на схему.

Для просмотра ссылки Войди или Зарегистрируйся

У нас есть 5 проводов:
  • Clock — Коричневый
  • Latch — Белый
  • Data — Синий
  • Питание(+) — Красный
  • Земля(-) — Желтый
После того как мы все записали, можно припаивать «USB Удлинитель», записывая соответствия цветов. У меня это: коричневый-армированная часть удлинителя, синий-розовый, красный-зеленый, желтый-черный, белый-белый.
5ltQfkB.jpg
В моем случае я приклеел провод к плате термоклеем, сделал это для того что бы не вырвать его в процессе использования, что и вам рекомендую сделать.
sY5e4qL.jpg
У нас получился джойстик от Dendi с USB разъемом, естественно если подключить его сейчас то максимум что произойдет — вы спалите себе джойстик.

Теперь нам требуется отрезать USB-штекер, и припаять DuPont Line МАМА для удобного подключения к Raspberry Pi. Благо перемычки можно подобрать любого цвета, в моем случае припаяны оригинальные цвета для того что бы не запутаться в дальнейшем.
xsEcM9z.jpg
NH0vpHz.jpg
На этом подготовка джойстика окончена. К слову; Если вам вдруг придет в голову покрасить его — не делайте этого, в моем случае краска разъела пластмассу и джойстик потерял свой вид.
p2qP3k1.jpg
 
Последнее редактирование:

admin

По любому вопросу
Администратор
1,650
1,505
5 Мар 2016
Часть 2: Подготовка «Малины» и подключение джойстика к ней

Теперь остались мелочи, мы будем использовать эмулятор консоли RetroPie. Собственного его установка:
Код:
Команды выполняем поочередно в терминале
sudo apt-get update
sudo apt-get install -y git dialog
cd
git clone git://github.com/petrockblog/RetroPie-Setup.git
cd RetroPie-Setup
chmod +x retropie_setup.sh
sudo ./retropie_setup.sh
Далее в окне выбираем Binaries-based installation

Для запуска RetroPie, используется команда:​

Код:
emulationstation
Подробная установка старой версии, описанием на стороннем ресурсе (ССЫЛКА Для просмотра ссылки Войди или Зарегистрируйся)

После установки желательно, обновить полностью Raspbian и перезагрузить его.
Теперь снова заходим в папку установки RetroPie, и запускаем ее.
Код:
Start SNESDev on Boot -> Option 2 -> Polling pads and button

Install/Update multi/console gamepad driver for GPIO
Enable gamecon_gpio_rpi with SNES-pad config
Снова перезагружаем малину

Описание пинов на Raspberry Pi 3 (Broadcom)

2i9zpAj.png


Осталась подключить наш джойстик и наслаждаться любой игрой, подключаем к GPIO по данным соответствиям:
Код:
Питание(+) – 3v3
Земля(-) - GND
Data – GPIO 3
Clock – GPIO 10
Latch – GPIO 11
tPaV68V.jpg
Подробное использование новых версий RetroPie вы можете найти в интернете. Мне удалось запустить и провернуть это все на новой pi 3 model b. Если кто-то решиться это сделать, обязательно пишите под темой о своем опыте. Мне лично было бы очень интересно узнать, есть ли готовые библиотеки для более простой работы джойстика с малиной.
 

carlcox

Местный
245
126
27 Ноя 2017
Не совсем я понял, читал статью думал найду решение своей проблемы
Купил я такой же джойстик 250р обошлось уже с усб шнуром !! И кароче не могу понять почему джойстик в Играх на ПК в эмуляторе не работает. кароче если игра без эмулятора, то работает !
Может кто подсказать? кто межет проверял эмуль на которо уже работает джос
 

cracker92

Местный
372
128
22 Июн 2019
Не совсем я понял, читал статью думал найду решение своей проблемы
Купил я такой же джойстик 250р обошлось уже с усб шнуром !! И кароче не могу понять почему джойстик в Играх на ПК в эмуляторе не работает. кароче если игра без эмулятора, то работает !
Может кто подсказать? кто межет проверял эмуль на которо уже работает джос
включи в эмуляторе джойстик)