Konsola do gier retro z RPi Zero

Konsola do gier retro z RPi Zero

Jednym z popularnych sposobów użycia możliwości komputera Raspberry Pi jest budowa konsoli do gier retro. Dostępne są różne gotowe zestawy do realizacji konstrukcji tego typu, jednak postanowiłem zaprojektować własną wersję, którą nazwałem ZW-G1. Dzięki szczegółowemu opisowi, który zawarłem w tym artykule, jestem przekonany, że każdy będzie w stanie zbudować jej egzemplarz. Zaprezentowana konsola pozwoli powrócić do gier, które sprawiały tyle radości w latach 90.

Zaprezentowany projekt wyróżnia się na tle innych konstrukcji tego typu przede wszystkim dzięki temu, że można go szybko uruchomić. Układ elektroniczny konsoli ZW-G1 został zaprojektowany w taki sposób, aby nie wymagał zastosowania płytek drukowanych do montażu elementów elektronicznych. Takie rozwiązanie ułatwia zdobycie potrzebnych komponentów oraz znacząco obniżyło koszt i skróciło czas potrzebny na zbudowanie konsoli. Natomiast elementy obudowy konsoli ZW-G1 zostały wykonane na drukarce 3D z użyciem filamentu PLA.

Budowa i działanie

Schemat ideowy konsoli (bazy) znajduje się na rysunku 1. Jej najważniejszym komponentem jest komputerek Raspberry Pi Zero.

Rysunek 1. Schemat ideowy bazy

Schemat ideowy jednego kontrolera został pokazany na rysunku 2. Kontrolery są dołączane do bazy poprzez złącza D-SUB15.

Rysunek 2. Schemat ideowy kontrolera

Połączenia pomiędzy wyprowadzeniami GPIO komputera a złączami D-SUB15 można łatwo wykonać z użyciem krótkich, cienkich przewodów (fotografia 1).

Fotografia 1. Wykonane połączenia pomiędzy komputerem Raspberry Pi i złączami D-SUB15

Natomiast wykonanie połączeń dla przycisków kontrolera wymaga zastosowania 11-żyłowej wiązki o długości dostosowanej do własnych potrzeb. Jeden z biegunów każdego przycisku należy podłączyć do wspólnej żyły doprowadzonej do styku numer 1 złącza D-SUB15, a pozostałe żyły łączymy z drugimi biegunami przycisków – jedna żyła do jednego przycisku (fotografia 2).

Fotografia 2. Wykonane połączenia pomiędzy przyciskami w kontrolerze i złączem D-SUB15

Należy pamiętać o zachowaniu numeracji styków złącza (jak na schemacie z rysunku 2). Obydwa kontrolery należy wykonać w identyczny sposób.

Montaż i uruchomienie

Na fotografii 3 pokazano wszystkie wydrukowane elementy potrzebne do budowy konsoli.

Fotografia 3. Wydrukowane części obudowy konsoli ZW-G1

Pliki STL dostępne są na stronie [1]. Zanim zastosujemy je w naszej konsoli, wymagają kilku drobnych prac przygotowawczych. Przy użyciu wiertła 3,5 mm należy pogłębić otwory montażowe, a następnie w odpowiednie miejsca włożyć nakrętki M3 (fotografia 4).

Fotografia 4. Pogłębienie otworów montażowych i umiejscowienie nakrętek M3

W górnej części bazy oraz kontrolera za pomocą niewielkiej ilości kleju błyskawicznego wklejono czarne zaślepki (fotografia 5), natomiast w dolnej części bazy wklejono także podkładki antypoślizgowe o średnicy 10 mm.

Fotografia 5. Wklejenie czarnych zaślepek w górnej części bazy oraz kontrolera
Fotografia 6. Umiejscowienie uchwytów do montażu przycisków w kontrolerze

Montaż przycisków w kontrolerze wykonano za pomocą specjalnych uchwytów (fotografia 6), dlatego muszą mieć odpowiednie wymiary – najważniejsze z nich zostały pokazane na rysunku 3.

Rysunek 3. Wymiary przycisku

Po przylutowaniu wszystkich przewodów wiązkę zabezpieczono oplotem poliestrowym, którego końce owinięto kawałkami czarnej taśmy izolacyjnej o długości 10 cm.

Komputer Raspberry Pi przykręcono do górnej części bazy za pomocą śrub PZ 2,2×6 mm, wszystkie pozostałe śruby montażowe są stożkowe o rozmiarze M3×8 mm.

Oprogramowanie

Aby uruchomić gry retro na komputerze Raspberry Pi, trzeba zainstalować na nim odpowiednie oprogramowanie. W przypadku konsoli ZW-G1 jest to RetroPie (rysunku 4).

Rysunek 4. Oprogramowanie RetroPie

Instalator systemu RetroPie dostępny jest na stronie internetowej [2]. Obsługa instalatora jest intuicyjna i nie powinna sprawić żadnych problemów. Ważne, aby zainstalować wersję systemu dla komputera Raspberry Pi Zero (rysunku 5).

Rysunek 5. Instalator systemu RetroPie

Po włożeniu karty mikroSD do komputera Raspberry Pi oraz podłączeniu telewizora, klawiatury i zasilacza, można przystąpić do konfiguracji systemu RetroPie.

Rysunek 6. Wybranie klawiatury do obsługi systemu RetroPie

Należy przytrzymać dowolny klawisz na klawiaturze, wtedy powinien pojawić się opis KEYBOARD (rysunek 6). Następnie trzeba przyporządkować odpowiednim funkcjom klawisze na klawiaturze (rysunek 7):

  • D-PAD UP → klawisz strzałki w górę,
  • D-PAD DOWN → klawisz strzałki w dół,
  • D-PAD LEFT → klawisz strzałki w lewo,
  • D-PAD RIGHT → klawisz strzałki w prawo,
  • START → klawisz Enter,
  • SELECT → klawisz Shift (prawy),
  • BUTTON A/EAST → klawisz A,
  • BUTTON B/SOUTH → klawisz B,
  • BUTTON X/NORTH → klawisz X,
  • BUTTON Y/WEST → klawisz Y.
Rysunek 7. Przyporządkowanie odpowiednim funkcjom klawiszy na klawiaturze

Pozostałe funkcje należy pominąć, wystarczy przytrzymać dowolny klawisz na klawiaturze, aż pojawi się opis NOT DEFINED. W celu potwierdzenia dokonanych ustawień, po podświetleniu się pola OK, trzeba nacisnąć na klawiaturze klawisz A. Po pojawieniu się informacji dotyczącej przycisku specjalnego HOTKEY należy wybrać YES, ponieważ nie będzie on wykorzystywany.

Do kontynuowania konfiguracji systemu RetroPie niezbędne jest podłączenie komputera Raspberry Pi do sieci Wi-Fi. Po naciśnięciu klawisza F4 uruchomi się wiersz poleceń. Po wpisaniu polecenia sudo raspi-config otworzy się menu konfiguracyjne. Wybierając System Options → Wireless LAN, następnie wskazując państwo, w którym użytkownik się aktualnie znajduje, oraz wpisując nazwę oraz hasło sieci Wi-Fi, komputer Raspberry Pi zostanie podłączony do Internetu. Aby zadziałały kontrolery podłączone do wejść GPIO komputera Raspberry Pi, konieczne jest zainstalowanie programu Retrogame, który połączy przyciski w kontrolerach z wirtualną klawiaturą. Po wpisaniu instrukcji: curl https://raw.githubusercontent.com/adafruit/Raspberry-Pi-Installer-Scripts/master/retrogame.sh>retrogame.sh
program zostanie pobrany, a polecenie

sudo bash retrogame.sh

pozwoli go uruchomić. W otwartym oknie należy wybrać konfigurację nr 6 oraz od nowa uruchomić Raspberry Pi.

Konieczna jest jeszcze modyfikacja pliku konfiguracyjnego Retrogame. Wpisując polecenie:

sudo nano /boot/retrogame.cfg

uruchomimy aktualną konfigurację, którą trzeba zmodyfikować jak na listingu 1 (rysunek 8).

Rysunek 8. Zmodyfikowany plik konfiguracyjny Retrogame

Kombinacja klawiszy Ctrl+X, następnie Y i Enter zapisze zmiany w pliku.

Listing 1. Modyfikacja pliku konfiguracyjnego Retrogame

LEFT 26
RIGHT 13
UP 19
DOWN 12
A 20
B 16
X 21
Y 7
RIGHTSHIFT 6
ENTER 5
S 27
T 15
U 17
C 4
I 23
W 18
D 22
Z 2
G 14
2 3

Po skonfigurowaniu oprogramowania RetroPie pozostało jeszcze wgranie gier. Można je znaleźć w Internecie (rysunek 9).

Rysunek 9. Przykładowe gry dla RetroPie

Wystarczy w wyszukiwarce wpisać hasło RetroPie ROMs. Należy pamiętać, aby pobierać gry tylko z legalnych źródeł, ponieważ wiele z nich może być chronione prawami autorskimi. Po podłączeniu sformatowanego pendrive’a zamiast klawiatury oraz ponownym uruchomieniu konsoli system RetroPie utworzy na pendrivie foldery z nazwami konsol, do których należy skopiować gry (rysunek 10).

Rysunek 10. Utworzone przez RetroPie foldery z nazwami konsol

Po skopiowaniu gier i podłączeniu pendrive’a do konsoli oraz ponownym jej uruchomieniu gry powinny być już dostępne w głównym oknie oprogramowania RetroPie. Można już odłączyć pendrive, ponieważ gry zostaną automatycznie skopiowane na kartę mikroSD. Więcej informacji na temat konsoli ZW-G1 znajduje się na stronie internetowej www.zw-robotics.pl.

Zygmunt Wypich
zygmunt.wypich@zw-robotics.pl

[1] https://bit.ly/3cLLkDK
[2] https://www.raspberrypi.com/software/

Wykaz elementów:
Rezystory:
Kondensatory:
Półprzewodniki:
Pozostałe:
  • śruba stożkowa M3×8 mm – 28 szt.,
  • wkręt do tworzywa PZ 2,2×6 mm – 4 szt.,
  • nakrętka M3 – 28 szt.,
  • podkładka antypoślizgowa o średnicy 10 mm – 6 szt.,
  • komputerek Raspberry Pi Zero W,
  • karta pamięci mikroSD o pojemności 16 GB,
  • zasilacz mikroUSB 5 V o wydajności prądowej 2 A,
  • przewód OTG microUSB – USB A o długości 120 mm,
  • adapter miniHDMI – HDMI,
  • pendrive USB 16 GB,
  • przycisk o wymiarach 12×12 mm z białą nasadką – 20 szt.,
  • przewód 0,22 mm2 biały – ok. 36 m,
  • przewód 0,22 mm2 czarny – ok. 5 m,
  • oplot poliestrowy 5/10 mm czarny – 3 m,
  • gniazdo D-SUB15 – 2 szt.,
  • wtyk D-SUB15 – 2 szt.
Artykuł ukazał się w
Elektronika Praktyczna
sierpień 2022

Elektronika Praktyczna Plus lipiec - grudzień 2012

Elektronika Praktyczna Plus

Monograficzne wydania specjalne

Elektronik kwiecień 2024

Elektronik

Magazyn elektroniki profesjonalnej

Raspberry Pi 2015

Raspberry Pi

Wykorzystaj wszystkie możliwości wyjątkowego minikomputera

Świat Radio marzec - kwiecień 2024

Świat Radio

Magazyn krótkofalowców i amatorów CB

Automatyka, Podzespoły, Aplikacje marzec 2024

Automatyka, Podzespoły, Aplikacje

Technika i rynek systemów automatyki

Elektronika Praktyczna kwiecień 2024

Elektronika Praktyczna

Międzynarodowy magazyn elektroników konstruktorów

Elektronika dla Wszystkich kwiecień 2024

Elektronika dla Wszystkich

Interesująca elektronika dla pasjonatów