To nie jest pierwsza ani ostatnia konsola do gier na świecie w RetroPie, ale wśród wielu podobnych proponowany projekt Instructables pod pseudonimem 陳亮 wyróżnia się jako miniaturowy: wymiary są w przybliżeniu takie same jak w bardziej minimalistycznej konsoli Arduboy.
Urządzenie oparte jest na płycie Raspberry Pi Zero, opcja jest odpowiednia zarówno z Wi-Fi, jak i bez. Pierwszy jest wygodniejszy, drugi bardziej energooszczędny. Mistrz nałożył na niego HAT Waveshare LCD. Ważne jest, aby wybrać nowszą wersję „czapki” - z 1,3-calowym wyświetlaczem o rozdzielczości 240x240. Tak, kwadrat, ale Instagram i Polaroid nie mają z tym nic wspólnego. Na tym „kapeluszu” oprócz wyświetlacza znajduje się joystick i przyciski. Raspberry Pi Zero nie zawiera grzebienia. Jeśli potrzebujesz, musisz sam go przylutować. Aby konsola nie okazała się zbyt gruba, potrzebujesz grzebienia z kołkami 8 mm. Nie znalazłem takiego mistrza i skróciłem 12 mm. Składa się z dwóch rzędów po 20 pinów każdy. W szczelinie między płytami umieść baterię LiPo o wymiarach 45x23x5 mm z wbudowanym obwodem ochronnym. Pojemność nie jest na nim wskazana. Ней Dodał do tego bardzo miniaturowy kontroler ładowania o wymiarach 10x10 mm, który jest dobry dla wszystkich, ale może ładować akumulator tylko w trybie wolnym prądem o natężeniu tylko 50 mA. Dwukolorowa dioda LED pokazana poniżej jest opcjonalna. Z wymaganych dodatkowych elementów: mechaniczny wyłącznik zasilania, pasek, cztery śruby z łbem stożkowym z gwintem M2.5 o długości 14 mm.
Obudowa i przyciski są wydrukowane w 3D, master ułożył wszystkie pliki niezbędne do ich powtórzenia na różne tematy. Możesz wydrukować je w jednym lub różnych kolorach, w wersji autora są one następujące: Layer123.stl - kruczoczarny, Layer4.stl - przezroczysty żółty, Layer5.stl - przezroczysty pomarańczowy, Layer678.stl - przezroczysty czerwony, ButtonHead.stl - przezroczysty czerwony, niebieski i zielony (trzy przyciski), CrossButtonHead.stl - ciemnoczerwony (i to jest D-pad).
Stabilizator PAM2306 na Raspberry Pi Zero może pracować z niewielkim spadkiem napięcia, generuje 3,3 V na wyjściu, nawet gdy napięcie wejściowe spadnie do 3,5 V. Konsola zużywa jedno ładowanie akumulatora, zużywając 100 do 200 mA, gdy WiFi jest odłączone , Działa przez około 90 minut, a zużywa około 90% pojemności baterii. Płyta, na której WiFi nie jest dostępne w sprzęcie, będzie działać jeszcze dłużej.
Mistrz łączy ze sobą „malinę” i „kapelusz” za pomocą grzebienia ze szpilkami 12 mm, ale jak dotąd go nie lutuje:
Nadgryza nadmiar, a szpilki stają się 8 mm:
Przylutuj grzebień do jednej planszy, a odpowiednik do innej:
Łączy się z innymi komponentami:
Zgodnie z tym schematem, skomponowanym w formie tekstowej:
Uwaga: w „czapce” grzebień znajduje się z tyłu, dlatego numeracja jego wniosków jest odwrócona.
Wszystko oprócz Raspberry Pi jest umieszczone w szczegółach skrzynki wydrukowanych z pliku Layer4.stl, pod przełącznikiem znajduje się ślad:
Na górze ustawia część drukowaną z pliku Layer5.stl:
Następnie - Raspberry Pi:
A tylna ściana to plik Layer678.stl:
Umieszcza śruby na miejscu:
Odwraca całą konstrukcję, umieszcza na miejscu przyciski wydrukowane z pliku ButtonHead.stl, ale jeszcze nie D-pad:
Zamyka się z panelem przednim wydrukowanym z pliku Layer123.stl:
Obraca i dokręca śruby:
Instaluje D-pad na osi joysticka, drukowany z pliku CrossButtonHead.stl:
Trzęsie Retropiewybierając opcję Raspberry Pi 0/1 i gry homebrew. Pobieranie dodatkowych plików: mk_arcade_joystick_rpi i rpi-fbcpwybierając opcję pobierania w archiwum ZIP.
Zapisuje pobrany obraz RetroPie na kartę pamięci. Po prostu skopiowanie pliku nie będzie działać. Musisz użyć jednej z metod, w zależności od systemu operacyjnego na pulpicie.
Metoda dla systemu Linux
Sposób na MacOS
Sposób na Windows
We wszystkich przypadkach nazwę pliku obrazu w tym przykładzie należy zastąpić nazwą pobranego pliku.
Umieszcza archiwa mk_arcade_joystick_rpi-master.zip i rpi-fbcp-master.zip na karcie pamięci.
Na końcu pliku config.txt na karcie pamięci umieszcza wiersz:
dtoverlay = dwc2
W pliku codlin.txt po słowie kluczowym rootwait wstawia: moduły-load = dwc2, g_ether
Okazuje się:
dwc_otg.lpm_enable = 0 konsola = serial0,115200 konsola = tty1 root = PARTUUID
Tworzy pusty plik ssh na karcie pamięci, w systemie MacOS kreator ma następujące polecenie:
dotknij / volume / boot / ssh
Drukowana obudowa 3D ma już wgłębienia na złącze USB i gniazdo na kartę pamięci, więc instalacja karty i podłączenie przewodu nie jest trudniejsze niż w odtwarzaczu, na przykład:
Krótko po załadowaniu RetroPie konsola komputera rozpoznaje wirtualną kartę sieciową. Jak tylko to się stanie, kreator wprowadza polecenie:
ssh pi@retropie.local
Domyślne hasło to malina, 陳亮 natychmiast zmienia je za pomocą polecenia passwd.
Na końcu pliku / etc / modules dodaje:
spi-bcm2835
flexfb
fbtft_device
Tworzy plik /etc/modprobe.d/fbtft.conf z następującą zawartością:
opcje flexfb setaddrwin = 0 szerokość = 240 wysokość = 240 init = -1,0x11, -2,120, -1,0x36,0x70, -1,0x3A, 0x05, -1,0xB2,0x0C, 0x0C, 0x00,0x33,0x33, -1.0xB7.0x35, -1.0xBB, 0x1A, -1.0xC0.0x2C, -1.0xC2.0x01, -1.0xC3.0x0B, -1.0xC4.0x20, -1.0xC6.0x0F, - 1,0xD0,0xA4,0xA1, -1,0x21, -1,0xE0,0x00,0x19,0x1E, 0x0A, 0x09,0x15,0x3D, 0x44,0x51,0x12,0x03,0x00,0x3F, 0x3F, -1,0xE1 , 0x00.0x18.0x1E, 0x0A, 0x09.0x25.0x3F, 0x43.0x52.0x33.0x03.0x00.0x3F, 0x3F, -1.0x29, -3
opcje fbtft_device name = flexfb gpios = reset: 27, dc: 25, cs: 8, led: 24 speed = 125000000 bgr = 1 fps = 60 niestandardowe = 1 wysokość = 240 szerokość = 240
Wyodrębnia pliki z jednego z dwóch archiwów wcześniej skopiowanych na kartę (patrz wyżej):
rozpakuj /boot/rpi-fbcp-master.zip
Kompiluje i instaluje:
cd rpi-fbcp-master /
kompilacja mkdir
kompilacja cd
cmake ..
zrobić
sudo zainstaluj fbcp / usr / local / bin / fbcp
Działa:
/ usr / local / bin / fbcp &
Na końcu pliku /boot/config.txt dodaje:
disable_overscan = 1
hdmi_force_hotplug = 1
hdmi_group = 2
hdmi_mode = 87
hdmi_cvt = 240 240 60 1 0 0 0
dtparam = spi = on
Rozpakowuje kolejne archiwum:
rozpakuj /boot/mk_arcade_joystick_rpi-master.zip
Uruchamia edytor i otwiera plik konfiguracyjny gamepad:
cd mk_arcade_joystick_rpi-master /
vi mk_arcade_joystick_rpi.c
Znajduje ciąg static const int mk_arcade_gpio_maps [] i sprawia, że wygląda następująco:
static const int mk_arcade_gpio_maps [] = {6,19,5,26,13,21,16,20,0,0,0,0,0,0};
Zapisuje plik, kompiluje i instaluje moduł:
sudo mkdir /usr/src/mk_arcade_joystick_rpi-0.1.5/
sudo cp -a * /usr/src/mk_arcade_joystick_rpi-0.1.5/
eksport MKVERSION = 0.1.5
sudo -E dkms build -m mk_arcade_joystick_rpi -v 0.1.5
sudo -E dkms install -m mk_arcade_joystick_rpi -v 0.1.5
Sprawdza przyciski:
sudo modprobe mk_arcade_joystick_rpi map = 1
jstest / dev / input / js0
Na końcu pliku / etc / modules dodaje:
mk_arcade_joystick_rpi
Tworzy plik /etc/modprobe.d/joystick.conf z następującą zawartością:
opcje mk_arcade_joystick_rpi map = 1
Pobrane pliki (patrz wyżej) z grami homebrew są rozproszone z folderu / boot do folderów ~ / RetroPie / roms / $ CONSOLE, gdzie $ CONSOLE to nazwa platformy, dla której są przeznaczone.
Uruchom raspi-config:
sudo raspi-config
Konfiguruje:
Wybiera sieć Wi-Fi (tylko dla płyty, na której się znajduje): 2 Opcje sieciowe -> N2 Wi-fi -> wprowadź dane o swojej sieci
Upewnia się, że pobieranie się nie zatrzymuje, aby pojawiła się sieć: 3 Opcje rozruchu -> B2 Poczekaj na sieć przy rozruchu -> Nie -> OK
Wskazuje strefę czasową: 4 Opcje lokalizacji -> I2 Zmień strefę czasową -> wybiera strefę czasową
Wyłącza port szeregowy: 5 Opcje interfejsu -> Szeregowy P6 -> Nie -> Nie -> OK
Uruchamia skrypt konfiguracyjny RetroPie:
sudo ~ / RetroPie-Setup / retropie_setup.sh
Optymalizuje rozdzielczość dla ekranu 1,3 cala: C Konfiguracja / Narzędzia -> 805 configedit -> 1 -> 0 -> 2 Rozdzielczość renderowania -> O Rozdzielczość wyjścia wideo -> OK -> Anuluj -> Anuluj -> Anuluj
Zmienia motyw na odpowiedni dla takiego wyświetlacza (musisz podłączyć WiFi): 812 estymatów -> 14 Pixel-tft -> OK -> 1 carbon -> 2 Uninstall
„Czapka” ma tylko trzy osobne przyciski oraz jeden wbudowany bezpośrednio w D-pad. Rozdzielczość wyświetlacza to 240 x 240. Mistrz woli platformę NES, gdzie rozdzielczość wynosi 256 x 240. Aby obraz nie był zniekształcony, postanowił go przyciąć. Dla czytelników, którzy chcą grać w gry tylko dla NES, zaleca dodanie linii na końcu pliku /opt/retropie/configs/nes/retroarch.cfg:
video_fullscreen_x = "0"
video_fullscreen_y = "0"
video_scale_integer = true
A na końcu pliku /opt/retropie/configs/all/retroarch-core-options.cfg - wiersz:
quicknes_use_overscan_h = "wyłączony"
Przyciski gamepad emulowane przez NES są rozproszone przez przyciski konsoli zgodnie z rysunkiem:
Użytkownicy przyzwyczajeni do przycisków Turbo będą musieli odzwyczaić się. Kreator uruchamia edytor i otwiera plik ustawień EmulationStation:
Tam umieszcza tekst:
& lt ;? xml version = "1.0"? & gt;
/opt/retropie/supplementary/emulationstation/scripts/inputconfiguration.sh
Po zapisaniu pliku i zamknięciu edytora uruchamia go ponownie, ale z plikiem ustawień RetroArch:
vi / opt / retropie / configs / all / retroarch / autoconfig / GPIO \ Controller \ 1.cfg
I oto tekst:
input_device = "Kontroler GPIO 1"
input_driver = "udev"
input_start_btn = "11"
input_exit_emulator_btn = "11"
input_down_axis = "+1"
input_right_axis = "+0"
input_state_slot_increase_axis = "+0"
input_select_btn = "10"
input_left_axis = "-0"
input_state_slot_decrease_axis = "-0"
input_up_axis = "-1"
input_a_btn = "0"
input_b_btn = "1"
input_reset_btn = "1"
input_enable_hotkey_btn = "10"
Zapisuje również i zamyka, przyspiesza ładowanie poprzez sekwencyjne wprowadzanie poleceń:
sudo systemctl wyłącz ekran asplash
sudo systemctl wyłącz dphys-swapfile
sudo systemctl wyłącz hciuart
sudo systemctl wyłącz konfigurację klawiatury
sudo systemctl wyłącz nmbd
sudo systemctl wyłącz raspi-config
sudo systemctl wyłącz smbd
sudo systemctl wyłącz nfs-config
Co zamiana wyłącza, robi to dobrze, nie chce, aby karta pamięci szybko się zginała.
W pliku /boot/cmdline.txt ustawia parametry w następujący sposób:
dwc_otg.lpm_enable = 0 konsola = root tty1 = PARTUUID = 14a75fe9-02 rootfstype = ext4 winda = ostateczny termin fsck.repair = tak rootwait loglevel = 3 consoleblank = 0 plymouth.enable = 0 logo.nologo fastboot quiet
Ta linia zamienia się w komentarz, umieszczając siatkę z przodu:
# dtoverlay = dwc2
Ponownie uruchamia urządzenie. Wyłącza się za pomocą polecenia:
sudo halt
Odłącza kabel, włącza przełącznik i ładuje się już bez komputera. Około minuty później, po zakończeniu pobierania, konfiguruje się, wybiera emulator i grę.
Jak już zgadł czytelnik, czytając powyższe pliki konfiguracyjne, klawisz Start odpowiada kliknięciu środkowej części pada kierunkowego. Naciskając to samo, gdy gra nie jest uruchomiona, możesz otworzyć menu ustawień. Tam kreator wybiera następujące elementy:
USTAWIENIA UI - & gt; USTAWIENIA EKRANU - & gt; SCREENSAVER AFTER - & gt; 1 minuta
INNE USTAWIENIA - & gt; TRYBY OSZCZĘDZANIA ENERGII - & gt; NATYCHMIAST
Umieszcza pasek w wyznaczonym „uchu”:
Gotowe, możesz użyć:
Poniżej znajdują się różne kolory konsoli: