» elektronik »Subminiature spilkonsol på RetroPie

Subminiature spilkonsol på RetroPie



Dette er ikke den første eller den sidste spilkonsol i verden på RetroPie, men blandt de mange lignende, fremtræder det foreslåede Instructables-design under kaldenavnet ется som miniature: dimensionerne er omtrent de samme som i den mere minimalistiske Arduboy-konsol.

Enheden er baseret på Raspberry Pi Zero-kortet, muligheden er egnet med både WiFi og uden. Den første er mere praktisk, den anden er mere energieffektiv. Skibsføreren satte en Waveshare LCD HAT på den. Det er vigtigt at vælge en nyere version af “hatten” - med en 1,3-tommer skærm med en opløsning på 240x240. Ja, en firkant, men Instagram og Polaroid har intet at gøre med det. På denne "hat" er der foruden displayet en joystick og knapper. Raspberry Pi Zero inkluderer ikke en kam. Hvis du har brug for det, skal du lodde det selv. Til konsollen blev det ikke for tyk, du har brug for en kam med 8 mm stifter. Jeg fandt ikke en sådan mester og forkortede 12 mm. Det består af to rækker på 20 ben hver. I afstanden mellem pladerne passer et LiPo-batteri, der måler 45x23x5 mm med et indbygget beskyttelseskredsløb. Kapaciteten er ikke angivet på den. Til det tilføjede 陳亮 en meget miniatyr opladningskontrol med dimensioner på 10x10 mm, hvilket er godt for alle, men kun kan oplade batteriet i langsom tilstand med en strøm på kun 50 mA. Den næste tofarvede LED er valgfri. Af de krævede ekstra komponenter: en mekanisk afbryder, en rem, fire nedskårne skruer med en M2,5 gevind på 14 mm længde.











Kassen og knapperne er 3D-trykt, masteren har lagt alle de nødvendige filer til deres gentagelse på tingiverse. Du kan udskrive dem i en eller forskellige farver, i forfatterens version er de som følger: Layer123.stl - jet black, Layer4.stl - transparent gul, Layer5.stl - transparent orange, Layer678.stl - transparent rød, ButtonHead.stl - gennemsigtig rød, blå og grøn (tre knapper), CrossButtonHead.stl - mørkerød (og dette er en D-pude).

PAM2306-stabilisatoren på Raspberry Pi Zero kan arbejde med et lille spændingsfald, den genererer 3,3 V ved udgangen, selv når indgangsspændingen falder til 3,5 V. Konsollen bruger en batteriopladning og bruger 100 til 200 mA, når WiFi er afbrudt , Det fungerer i cirka 90 minutter, mens det bruger ca. 90% af batterikapaciteten. Et bord, hvor der ikke findes WiFi i hardware, fungerer endnu længere.

Mesteren forbinder "hindbær" og "hat" til hinanden med en kam med 12 mm-stifter, men indtil videre lodder den ikke:



Han bider det overskydende ud, og stifterne bliver 8 mm:



Lodde kammen til det ene bræt og modstykket til det andet:



Tilslutter til andre komponenter:



I henhold til denne ordning, sammensat i tekstform:



Bemærk: ved “hatten” er kammen placeret på bagsiden, hvorfor nummereringen af ​​dens konklusioner vendes.

Alt undtagen Raspberry Pi er placeret i sagsdetaljen udskrevet fra filen Layer4.stl, under kontakten er der et fodaftryk:



På toppen sætter den del, der er udskrevet fra filen Layer5.stl:



Så - Raspberry Pi:



Og bagvæggen er filen Layer678.stl:



Placer skruerne på plads:



Vend hele konstruktionen, sætter på plads knapperne, der er udskrevet fra filen ButtonHead.stl, men endnu ikke D-pad:



Lukker med frontpanelet udskrevet fra filen Layer123.stl:



Drej og stram skruer:



Installerer D-pad på joystickaksen, udskrevet fra filen CrossButtonHead.stl:



shakes RetroPieved at vælge Raspberry Pi 0/1 og hjemmebrygge-spil. Download af yderligere filer: mk_arcade_joystick_rpi og RPI-fbcpved at vælge downloadindstillingen i ZIP-arkivet.

Skriver det downloadede RetroPie-billede til hukommelseskortet. Bare at kopiere filen fungerer ikke. Du skal bruge en af ​​metoderne, afhængigt af hvilket operativsystem du har på skrivebordet.

Metode til Linux

Måde til MacOS

Måde til Windows

I alle tilfælde skal billedfilnavnet i eksemplet erstattes med navnet på den fil, du downloadede.

Placer arkiverne mk_arcade_joystick_rpi-master.zip og rpi-fbcp-master.zip på hukommelseskortet.

I slutningen af ​​filen config.txt på hukommelseskortet sætter du linjen:

dtoverlay = dwc2


I filen codlin.txt efter nøgleordet rootwait sætter: modules-load = dwc2, g_ether

Det viser sig:

dwc_otg.lpm_enable = 0 konsol = serie0,115200 konsol = tty1 root = PARTUUID


Det opretter en tom ssh-fil på hukommelseskortet, på MacOS har guiden følgende kommando:

touch / volumes / boot / ssh


Den 3D-trykte taske har allerede udsparinger til et USB-stik og en plads til et hukommelseskort, så installation af et kort og tilslutning af ledningen er ikke vanskeligere end i en afspiller, for eksempel:




Kort efter indlæsning af RetroPie genkender computerens OS-konsol det virtuelle netværkskort. Så snart dette sker, indtaster guiden kommandoen:

ssh pi@retropie.local


Standardadgangskoden er hindbær, den changes ændrer den straks med kommandoen passwd.

I slutningen af ​​filen / etc / modules tilføjer den:

spi-bcm2835
flexfb
fbtft_device


Opretter en /etc/modprobe.d/fbtft.conf-fil med følgende indhold:

indstillinger flexfb setaddrwin = 0 bredde = 240 højde = 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
indstillinger fbtft_device navn = flexfb gpios = reset: 27, DC: 25, cs: 8, led: 24 hastighed = 125000000 bgr = 1 fps = 60 brugerdefineret = 1 højde = 240 bredde = 240


Udtrækker filer fra et af to arkiver, der tidligere er kopieret til kortet (se ovenfor):

unzip /boot/rpi-fbcp-master.zip


Kompilerer og installerer:

cd rpi-fbcp-master /
mkdir build
cd build
cmake ..
make
sudo installere fbcp / usr / local / bin / fbcp


starter:

/ usr / local / bin / fbcp &


I slutningen af ​​filen tilføjer /boot/config.txt:

disable_overscan = 1
hdmi_force_hotplug = 1
hdmi_group = 2
hdmi_mode = 87
hdmi_cvt = 240 240 60 1 0 0 0
dtparam = spi = til


Pakker ud et andet arkiv:

unzip /boot/mk_arcade_joystick_rpi-master.zip


Start af editoren og åbner gamepad-konfigurationsfilen:

cd mk_arcade_joystick_rpi-master /
vi mk_arcade_joystick_rpi.c


Finder strengen statisk const int mk_arcade_gpio_maps [] og får den til at se sådan ud:

statisk konst int mk_arcade_gpio_maps [] = {6,19,5,26,13,21,16,20,0,0,0,0,0};


Gemmer filen, kompilerer og installerer modulet:

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 installere -m mk_arcade_joystick_rpi -v 0.1.5


Tjek knapper:

sudo modprobe mk_arcade_joystick_rpi map = 1
jstest / dev / input / js0

I slutningen af ​​filen tilføjer / etc / modules:

mk_arcade_joystick_rpi


Opretter en /etc/modprobe.d/joystick.conf-fil med følgende indhold:

indstillinger mk_arcade_joystick_rpi kort = 1


Overførte filer (se ovenfor) med homebrew-spil er spredt fra mappen / boot i mapperne ~ / RetroPie / roms / $ CONSOLE, hvor $ CONSOLE er navnet på den platform, de er beregnet til.

Kør raspi-config:

sudo raspi-config


justerer:

Vælger et WiFi-netværk (kun for det bord, hvor det er): 2 Netværksindstillinger -> N2 Wi-fi -> indtast data om dit netværk
Sørger for, at overførslen ikke stopper, så netværket vises: 3 Boot-indstillinger -> B2 Vent på netværk ved opstart -> Nej -> OK
Angiver tidszone: 4 Lokaliseringsindstillinger -> I2 Skift tidszone -> vælger din tidszone
Deaktiverer den serielle port: 5 Interfaces-indstillinger -> P6 Seriel -> Nej -> Nej -> OK

Subminiature spilkonsol på RetroPie











Kører RetroPie-konfigurationsskriptet:

sudo ~ / RetroPie-Setup / retropie_setup.sh


Optimerer opløsningen til en 1,3-tommer skærm: C Konfiguration / Værktøjer -> 805 konfigureret -> 1 -> 0 -> 2 gengivelse af opløsning -> O Videooutputopløsning -> OK -> Annuller -> Annuller -> Annuller
Ændrer temaet til et passende tema til sådan en skærm (du har brug for WiFi for at være tilsluttet): 812 esthemes -> 14 Pixel-tft -> OK -> 1 carbon -> 2 Uninstall








"Hatten" har kun tre separate knapper plus en indbygget direkte i D-puden. Og skærmopløsningen er 240x240. Skibsføreren foretrækker NES-platformen, hvor opløsningen er 256 x 240. Så billedet ikke forvrides, besluttede han at beskære det. For læsere, der vil spille kun NES-spil, anbefaler han at tilføje linjer til slutningen af ​​filen /opt/retropie/configs/nes/retroarch.cfg:

video_fullscreen_x = "0"
video_fullscreen_y = "0"
video_scale_integer = sandt


Og i slutningen af ​​filen /opt/retropie/configs/all/retroarch-core-options.cfg - linjen:

quicknes_use_overscan_h = "deaktiveret"


Knapperne på gamepad-emuleringen af ​​NES er spredt med knapperne på konsollen i henhold til figuren:



Brugere, der er vant til Turbo-knapperne, skal fravænne. Guiden starter editoren og åbner indstillingsfilen EmulationStation:

Der sætter det teksten:

& lt ;? xml version = "1.0"? & gt;
/opt/retropie/supplementary/emulationstation/scripts/inputconfiguration.sh


Når du har gemt filen og lukket redigeringsprogrammet, starter den den igen, men med RetroArch-indstillingsfilen:

vi / opt / retropie / configs / all / retroarch / autoconfig / GPIO \ Controller \ 1.cfg


Og der sætter teksten:

input_device = "GPIO-controller 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_decreas_axis = "-0"
input_up_axis = "-1"
input_a_btn = "0"
input_b_btn = "1"
input_reset_btn = "1"
input_enable_hotkey_btn = "10"


Det gemmer og lukker også, fremskynder indlæsningen ved sekventiel input af kommandoer:

sudo systemctl deaktiverer asplashscreen
sudo systemctl deaktiverer dphys-swapfile
sudo systemctl deaktivere hciuart
sudo systemctl deaktiverer tastaturopsætning
sudo systemctl deaktiverer nmbd
sudo systemctl deaktiverer raspi-config
sudo systemctl deaktivere smbd
sudo systemctl deaktiverer nfs-config


Hvad swap deaktiverer, det gør det rigtige, men han ønsker ikke, at hukommelseskortet hurtigt bøjes.

I filen /boot/cmdline.txt indstiller parametre som dette:

dwc_otg.lpm_enable = 0 konsol = tty1 root = PARTUUID = 14a75fe9-02 rootfstype = ext4 elevator = deadline fsck.repair = ja rootwait loglevel = 3 consoleblank = 0 plymouth.enable = 0 logo.nologo fastboot stille


Og denne linje bliver til en kommentar ved at placere et gitter foran:

# dtoverlay = dwc2


Genstarter enheden. Slukker for med kommandoen:

sudo stop


Frakobler kablet, tænder for kontakten, og det indlæses allerede uden en pc. Cirka et minut senere, når overførslen er afsluttet, konfigurerer den, vælger emulatoren og spillet.

Som læseren allerede har gættet og læst konfigurationsfilerne ovenfor svarer Start-tasten til at klikke på D-pad i midten. Ved at trykke på det samme, når spillet ikke kører, kan du åbne indstillingsmenuen. Her vælger guiden følgende elementer:

UI-INDSTILLINGER - & gt; INDSTILLINGER FOR SCREENSAVER - & gt; SCREENSAVER EFTER - & gt; 1 minut

ANDRE INDSTILLINGER - & gt; POWER SAVER MODES - & gt; INSTANT


Sætter stroppen i det udpegede “øre”:



Udført, du kan bruge:



Nedenfor er de forskellige farver til konsollen:





10
10
10

Tilføj en kommentar

    • smilesmilxaxaokdontknowyahoonea
      bossscratchnarrejaja-jaaggressivhemmelighed
      undskylddansdance2dance3benådninghjælpdrikkevarer
      stop-vennergodgoodgoodfløjtedånetunge
      røgklappecrayerklærerspottendedon-t_mentiondownloade
      hedeirefullaugh1mdamødemoskingnegativ
      not_ipopcornstraffelæseskræmmeforskrækkelsersøg
      hånethank_youdetteto_clueumnikakutenig
      dårligbeeeblack_eyeblum3blushpralekedsomhed
      censureretpleasantrysecret2truesejryusun_bespectacled
      SHOKRespektlolprevedvelkommenkrutoyya_za
      ya_dobryihjælperenne_huliganne_othodiFludforbudtæt
1 kommentar
ynkeligt
Indsendt af Instructables under kaldenavnet 陳亮
Han har tilsyneladende ikke en smartphone eller tablet, intet at spille på! smile

Vi råder dig til at læse:

Giv den til smartphonen ...