Sisällysluettelo:
- Vaihe 1: Asenna vaadittu RaspberryPi -ohjelmisto
- Vaihe 2: WiFi -tukiaseman luominen
- Vaihe 3: Tarvittavat tarvikkeet: Vanha Broken Nintendo
- Vaihe 4: Tarvittavat tarvikkeet: Raspberry Pi 3 Malli B
- Vaihe 5: Tarvittavat tarvikkeet: 1,44 tuuman sarja: UART/I2C/SPI TFT LCD 128x128 -näyttömoduuli
- Vaihe 6: Tarvittavat tarvikkeet: 5V 0,1A Mini Fan Raspberry Pi
- Vaihe 7: Tarvittavat tarvikkeet: Ugreen USB 2.0 - 10/100 Fast Ethernet Lan Langallinen verkkosovitin
- Vaihe 8: Rakentaminen
- Vaihe 9: Rakentaminen jatkuu
- Vaihe 10: Rakentaminen jatkuu
- Vaihe 11: Digole -näytön liittäminen
- Vaihe 12: Asenna verkon valvontatyökalut ja tietokantaloki
- Vaihe 13: Asenna liikenteen yhteenvetoraportti (Cronjob ajaa 5 minuutin välein)
- Vaihe 14: Asenna Dashboard -näyttö
- Vaihe 15: Asenna paikallisen käytön/tilastosivusto [http://10.0.10.1]
Video: Nintendo Wifi -reititin: 17 vaihetta (kuvilla)
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:04
Käytä vanhaa Nintendo Entertainment -järjestelmäkoteloa ja luo erittäin toimiva kotireititin RaspberryPI 3: n avulla!
Vaihe 1: Asenna vaadittu RaspberryPi -ohjelmisto
Vilkkuva RaspberriPi -kiintolevy / Asenna vaadittu ohjelmisto (Ubuntu Linuxin käyttö)
Lataa "RASPBIAN JESSIE LITE"
Luo uusi kiintolevy DashboardPI: lle
Aseta microSD tietokoneeseen USB -sovittimen kautta ja luo levyn kuva dd -komennolla
Etsi asetettu microSD -kortti df -h -komennolla, irrota se ja luo levyn kuva levyn kopioi dd -komennolla
$ df -h/dev/sdb1 7.4G 32K 7.4G 1%/media/XXX/1234-5678
$ umount /dev /sdb1
Varoitus: varmista, että komento on täysin tarkka, sillä voit vahingoittaa muita levyjä tällä komennolla
if = RASPBIAN JESSIE LITE -kuvatiedoston sijainti = microSD -korttisi sijainti
$ sudo dd bs = 4M if =/path/to/raspbian-jessie-lite.img of//dev/sdb (Huomaa: tässä tapauksessa se on/dev/sdb,/dev/sdb1 oli microSD) RaspberriPi -laitteen asentaminen
Aseta uusi microSD -kortti vadelmapihaan ja käynnistä se HDMI -porttiin kytketyllä näytöllä
Kirjaudu sisään
user: pi pass: raspberry Vaihda tilisi salasana turvallisuuden vuoksi
sudo passwd pi Ota RaspberriPin lisäasetukset käyttöön
sudo raspi-config Valitse: 1 Laajenna tiedostojärjestelmä
9 Lisäasetukset
A2 -isäntänimi muuta se "NESRouteriksi"
A4 SSH Ota SSH -palvelin käyttöön
A7 I2C Ota i2c -liitäntä käyttöön Ota käyttöön englanninkielinen näppäimistö
sudo nano/etc/default/keyboard Vaihda seuraava rivi: XKBLAYOUT = "us" Määritä yksinkertainen hakemisto l -komento [valinnainen]
vi ~/.bashrc
lisää seuraava rivi:
alias l = 'ls -lh'
lähde ~/.bashrc Korjaa VIM -oletussyntaksin korostus [valinnainen]
sudo vi/etc/vim/vimrc
poista seuraava rivi:
Käynnistä PI uudelleen, jotta saat viimeisimmät muutokset
päivitä paikalliset aikavyöhykeasetukset
sudo dpkg-reconfigure tzdata valitse aikavyöhyke käyttöliittymän avulla
Vaihe 2: WiFi -tukiaseman luominen
Huomaa, että ennen kuin tästä tulee reititin, liitämme RaspberryPi -laitteen olemassa olevaan verkkoon sen ethernet -portin kautta asentaaksemme seuraavat paketit
sudo apt-get update && sudo apt-get -y upgrade
sudo apt-get install dnsmasq hostapd vim
sudo apt-get install vim git python-smbus i2c-tools python-imaging python-smbus build-essential python-dev rpi.gpio python3 python3-pip libi2c-dev
sudo vi /etc/dhcpcd.conf
Lisää seuraava rivi:
denyinterfaces wlan0 sudo vi/etc/network/interfaces
Muokkaa wlan0 -osaa niin, että se näyttää tältä:
auto lo iface lo inet loopback
iface eth0 inet käsikirja
auto wlan0 iface wlan0 inet staattinen osoite 10.0.10.1 netmask 255.255.255.0 verkko 10.0.10.0 broadcast 10.0.10.255
auto eth1 iface eth1 inet staattinen osoite 10.0.20.1 netmask 255.255.255.0 verkko 10.0.20.0 broadcast 10.0.20.255 Lataa DHCP -palvelin uudelleen ja palauta eth0- ja wlan0 -yhteyksien kokoonpano
sudo -palvelu dhcpcd uudelleen
sudo ifdown eth0; sudo ifup wlan0
Määritä HOSTAPD (Muuta ssid ja wpa_passphrase valitsemasi arvot)
sudo vi /etc/hostapd/hostapd.conf
# Tämä on WiFi -käyttöliittymän nimi, jonka määritimme yllä interface = wlan0
# Käytä nl80211 -ohjainta brcmfmac -ohjaimen kanssa = nl80211
# Tämä on verkon nimi ssid = NintendoWiFi
# Käytä 2,4 GHz: n kaistaa hw_mode = g
# Käytä kanavaa 6 kanavaa = 6
# Ota käyttöön 802.11n ieee80211n = 1
# Ota WMM käyttöön wmm_enabled = 1
# Ota 40 MHz: n kanavat käyttöön 20 s: n suojavälillä ht_capab = [HT40] [SHORT-GI-20] [DSSS_CCK-40]
# Hyväksy kaikki MAC -osoitteet macaddr_acl = 0
# Käytä WPA -todennusta auth_algs = 1
# Vaadi asiakkaita tietämään verkon nimi ignore_broadcast_ssid = 0
# Käytä WPA2 wpa = 2
# Käytä esijaettua avainta wpa_key_mgmt = WPA-PSK
# Verkon tunnuslause wpa_passphrase = salasana
# Käytä AES: ää TKIP: n sijaan rsn_pairwise = CCMP Voimme tarkistaa, toimiiko se tässä vaiheessa suorittamalla (mutta sillä ei ole vielä täydellistä Internet -yhteyttä):
sudo/usr/sbin/hostapd /etc/hostapd/hostapd.conf
sudo vi/etc/default/hostapd
Etsi linja
#DAEMON_CONF = "" ja korvaa se nimellä
DAEMON_CONF = "/etc/hostapd/hostapd.conf" Määritä DNSMASQ
sudo mv /etc/dnsmasq.conf /etc/dnsmasq.conf.orig
sudo vi /etc/dnsmasq.conf
bind-interfaces # Sido käyttöliittymään varmistaaksemme, ettemme lähetä asioita muualle palvelin = 8.8.8.8 # Välitä DNS-pyynnöt Googlen DNS-verkkotunnukselle tarvitaan # Älä välitä lyhyitä nimiä bogus-priv # Älä koskaan lähetä osoitteita -reititetyt osoiteavaruudet.
# Määritä IP-osoitteet rajattomalla vuokra-ajalla (laitteen käyttötilastot) dhcp-range = wlan0, 10.0.10.100, 10.0.10.200, 255.255.255.0, 10.0.10.255, ääretön dhcp-alue = eth1, 10.0.20.100, 10.0. 20.200, 255.255.255.0, 10.0.20.255, ääretön SET UP IPV4 FORWARDING
sudo vi /etc/sysctl.conf
[huomautus] net.ipv4.ip_forward = 1
Aktivoi se välittömästi sudo sh -c "echo 1>/proc/sys/net/ipv4/ip_forward"
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
sudo iptables -A ETEENPÄIN -i eth0 -o eth1 -m -tila -valtio LIITTYVÄ, PERUSTETTU -j HYVÄKSY
sudo iptables -A Eteenpäin -i eth1 -o eth0 -j HYVÄKSY
sudo iptables -A ETEENPÄIN -i eth0 -o wlan0 -m -tila --tila LIITTYVÄ, PERUSTETTU -j HYVÄKSY
sudo iptables -A Eteenpäin -i wlan0 -o eth0 -j HYVÄKSY
Tallenna iptables -asetukset seuraavaa uudelleenkäynnistystä varten
sudo sh -c "iptables -save> /etc/iptables.ipv4.nat"
Luo ipv4 -sääntötiedosto (uudella sisällöllä)
sudo vi/lib/dhcpcd/dhcpcd-koukut/70-ipv4-nat
iptables-restore </etc/iptables.ipv4.nat Käynnistä palvelut uudelleen
sudo -palvelu hostapd käynnistä sudo -palvelu dnsmasq -käynnistys
sudo uudelleenkäynnistys
Staattisten IP -osoitteiden määrittäminen [valinnainen]
Jos haluat, että verkkosi isännillä on staattinen IP, käytä seuraavaa
Hanki isännät, jotka ovat tällä hetkellä yhteydessä DHCP: n kautta vi /var/lib/misc/dnsmasq.leases
Lisää MAC -osoite (yllä olevasta tuotoksesta) ja IP -osoite, jonka haluat määrittää osoitteeseen sudo vi /etc/dnsmasq.conf
# main desktop dhcp-host = 12: 34: 56: 78: 9a: bc, 10.0.20.20 Huomautus: Tämä määrittää verkkoliitännän MAC-osoitteen kanssa: 12: 34: 56: 78: 9a: bc IP-osoitteeseen 10.0.20.20. Luetellun IP -osoitteen EI tarvitse olla annetulla DHCP -alueella, vain samassa aliverkossa. Päätyöpöytäni on aliverkossa eth1: 10.0.20.0, joten annoin sille IP -osoitteen 10.0.20.20.
UFW -palomuurin lisääminen
sudo apt-get install ufw
Salli portti 22 julkiseen käyttöön (verkon etäkäyttöä varten)
sudo ufw salli 22
Salli kaikki paikallisen verkon portit
sudo ufw salli 10.0.10.0/24 sudo ufw salli 10.0.20.0/24 alkaen
Salli verkkoportit kaikille
sudo ufw salli 80
Salli suojatut verkkoportit kaikille
sudo ufw salli 443
Ota UFW käyttöön ja tarkista tila
sudo ufw -Force käyttöön
sudo ufw -tila
Korjaa BUG ja UFW ei käynnisty käynnistyksen yhteydessä
sudo su crontab -e
Lisää seuraava rivi: @reboot /bin /sleep 60; ufw -Force käyttöön
Vaihe 3: Tarvittavat tarvikkeet: Vanha Broken Nintendo
Vanha Nintendo -kotelo rikkoutuneesta NES -laitteesta (poista kaikki vanha sisältö kotelon sisältä, jättäen vain ulkokehyksen, virta- / nollauspainikkeet ja ohjaimen liitännät)
Vaihe 4: Tarvittavat tarvikkeet: Raspberry Pi 3 Malli B
Vaihe 5: Tarvittavat tarvikkeet: 1,44 tuuman sarja: UART/I2C/SPI TFT LCD 128x128 -näyttömoduuli
Vaihe 6: Tarvittavat tarvikkeet: 5V 0,1A Mini Fan Raspberry Pi
Vaihe 7: Tarvittavat tarvikkeet: Ugreen USB 2.0 - 10/100 Fast Ethernet Lan Langallinen verkkosovitin
Vaihe 8: Rakentaminen
Asenna NES: n sisään
Tulosta 3D-tulostimella Digole-näyttökehys "NESPanel"/construction/display-frame/kansioon. [jos sinulla ei ole 3D -tulostinta, voit leikata hienovaraisesti neliönmuotoisen reiän Digole -näyttöä varten Dremel -työkalulla] Leikkaa seuraavat reiät auki kotelon takaa ja sivusta, jotta pieni tuuletin voidaan kiinnittää puolella ja virta-/ethernet- ja USB -ethernet -kaapelit päästäksesi sisään takaosan kautta.
Vaihe 9: Rakentaminen jatkuu
Kierrä oikea yläkulmainen musta paneeli pois NES: stä ja leikkaa siististi riittävän suuri neliömäinen reikä digolevyn asentamiseksi. Kuumaa liimaa näyttö paikalleen ja sen päällä on 3D -painettu "NESPanel" -kehys.
Vaihe 10: Rakentaminen jatkuu
Asenna RaspberryPi tyhjän NES -kotelon pohjan keskelle, kiinnitä liimalla tai pienellä ruuvilla pohjan läpi. Käytä 270 ohmin vastusta ja kytke NES: n "on -on -LED" Raspberry Pi: n 5V- ja GND -nastoihin (lyhyt LED -johto on maa). Kytke pieni tuuletin myös 5V- ja GND -nastoihin, jotta se toimii, kun laite käynnistyy. Liimaa tuuletin sen sivulla olevaa reikää vasten.
Vaihe 11: Digole -näytön liittäminen
Liitä seuraavat nastat RaspberryPi -laitteen nastoihin
VCC on kytketty 3 V: een GND on maadoitettu DATA on SDA CLOCK on SCL Nyt sinun pitäisi nähdä laite i2cdetect -komennossasi
i2cdetect -y 1 sen pitäisi näkyä tekstiruudukossa muodossa 27
Vaihe 12: Asenna verkon valvontatyökalut ja tietokantaloki
sudo apt-get install ifstat memcached python-memcache postgresql postgresql-contrib python-psycopg2
sudo vi /etc/postgresql/9.4/main/pg_hba.conf
Lisää seuraava rivi tiedoston loppuun: local all pi password sudo -i -u postgres
psql
luo rooli pi salasana 'salasana tähän';
muuttaa roolia pi kirjautuminen;
muuttaa roolia pi pääkäyttäjä;
du
(sinun pitäisi nähdä PI -käyttäjäsi, jolla on oikeudet) luo tietokanta network_stats;
q
poistua
psql -d network_stats
Suorita seuraavat kyselyt:
CREATE TABLE traffic_per_minute (id -sarja, aikamerkki ilman aikavyöhykettä EI NULL, eth0_down real, eth0_up real, eth1_down real, eth1_up real, wan0_down real, wan0_up real);
CREATE UNIQUE INDEX time_idx ON traffic_per_minute (aika); Kopioi projektin "loki" -kansio RPi: n kotihakemistoon
crontab -e
Lisää tämä rivi
@reboot /bin /sleep 60; nohup python /home/pi/logging/networkUsage.py>/dev/null 2> & 1
Vaihe 13: Asenna liikenteen yhteenvetoraportti (Cronjob ajaa 5 minuutin välein)
crontab -e
lisää seuraava rivi
*/5 * * * * python /home/pi/logging/trafficSummary.py
Vaihe 14: Asenna Dashboard -näyttö
Kopioi projektin "näyttö" -kansio RPi: n kotihakemistoon
Suorita se seuraavasti
$ python /home/pi/display/NESRouter.py Määritä näytön komentosarja toimimaan käynnistyksen yhteydessä
crontab -e
Lisää tämä rivi
@reboot nohup python /home/pi/display/NESRouter.py>/dev/null 2> & 1
Varmista, että näyttö alkaa toimia uudelleenkäynnistyksen yhteydessä
sudo uudelleenkäynnistys
Vaihe 15: Asenna paikallisen käytön/tilastosivusto [https://10.0.10.1]
Asenna paikallisen käytön/tilastojen verkkosivusto [https://10.0.10.1]
sudo apt-get update && sudo apt-get upgrade -y
sudo apt-get install apache2
sudo -palvelu apache2 uudelleen
Poista oletussivut
cd /var /www
sudo rm -rf html
Kopioi "webportal" -kansio tästä projektista RPi -laitteesi kotikansioon ja luo symlink linkki apachen käyttöön
cd /var /www
sudo ln -s/home/pi/webportal html
cd/var/www/html
chmod +x *.py
sudo a2enmod cgi
sudo vi /etc/apache2/sites-enabled/000-default.conf
Ota Python CGI Scripting käyttöön
Lisää tunnisteen sisälle
Valinnat +ExecCGI AddHandler cgi-script.py sudo-palvelu apache2 uudelleen
Voit nyt vierailla paikallisessa HTTP -sivustossa [https://10.0.10.1]
Määritä edistynyt verkon valvonta (IPFM: n kautta)
sudo apt-get päivitys
sudo apt-get install ipfm
sudo mv /etc/ipfm.conf /etc/ipfm.conf-bak
sudo vi /etc/ipfm.conf
Luo seuraavalla sisällöllä:
# Globaalimuuttujat
# IPFM voi valvoa vain yhtä laitetta. LAITE eth0
# GLOBAL LOGGING CONFIGURATION LOG
FILENAME "/var/log/ipfm/%Y_%d_%m/%H_%M"
# loki joka minuutti DUMP 1 minuutin välein
# selkeät tilastot päivittäin TYHJENNÄ 24 tunnin välein LAJITTELE RATKAISUUN sudo -palvelu ipfm start
VALINNAINEN: Luo omia Nintendo -kuvia näytettäväksi näytöllä
Lataa oma 128x128 -tiedostosi seuraavaan URL -osoitteeseen:
www.digole.com/tools/PicturetoC_Hex_convert…
Valitse ladattava kuvatiedosto ja lisää sen koko näytöllä (leveys/korkeus)
Valitse avattavasta "Käytetään" -valikosta "256 Väri värilliselle OLED/LCD -näytölle (1 tavu/pikseli)"
Hanki heksadesimaali.
Lisää heksadesimaali näyttö/ build/ header (.h) -tiedostoon, käytä muita syntaksin oppaina.
Sisällytä uusi tiedosto digole.c -tiedostoon #include myimage.h
Sisällytä uusi komentorivikoukku kuvatiedostoosi. Huomaa: alla oleva komento sanoo, että piirrä kuva 10 pikselin yli 10 pikselin alapuolelle. Voit muuttaa sen eri X, Y -koordinaateiksi, voit myös muuttaa arvot 128, 128 minkä kokoisiksi uusi kuvasi todellisuudessa on.
} else if (strcmp (digoleCommand, "myimage") == 0) {drawBitmap256 (10, 10, 128, 128, & myimageVariableHere, 0); // myimageVariableTämä on määritetty (.h) -tiedostossasi}
Rakenna nyt uudelleen (ohita virheet) saadaksesi uuden kuvan renderöinnin seuraavalla komennolla.
$./digole myimage Re-Building [Sisältyy] Digole-näytönohjain valinnaisiin muutoksiin
$ cd display/build $ gcc digole.c $ mv a.out../../digole $ chmod +x../../digole
Suositeltava:
Rakenna Nintendo NES PC: 10 vaihetta (kuvilla)
Rakenna Nintendo NES PC: Ah, Nintendo Entertainment System. Tuo mieleen paljon hyviä muistoja: Super Mario Bros., Double Dragon, Megaman. Se tuo myös takaisin ei-niin suuria muistoja. Patruunoiden vaihtamisen tuska, puhallus kunnes huimaat ja et silti saa mitään
Nintendo Joycon Drift Fix (ei ohjelmistoon liittyvää): 8 vaihetta (kuvilla)
Nintendo Joycon Drift Fix (ei ohjelmistoon liittyvää): Vuoden raskaan käytön jälkeen aloin huomata, että joycon ajautui, kun en kosketa analogista tikkua. Etsin korvaavaa analogista tikkua, mutta he
Nintendo -ohjain PC -kortinlukijaan: 4 vaihetta (kuvilla)
Nintendo -ohjain PC -kortinlukijaan: Aseta kortinlukija pöytätietokoneen tai kannettavan tietokoneen Nintendo -ohjaimen sisään. Kaikissa maininnoissa tästä hankkeesta on oltava linkki osoitteeseen www.zieak.com, jossa on Ryan McFarlandin ansiota
Uskomaton HULK Nintendo Wii W/ Extra USB: 6 vaihetta (kuvilla)
Uskomaton HULK Nintendo Wii W/ Extra Usb: No, sain vihdoin päätökseen toisen Wii Modin !!! Uskomaton mukautettu HULK Wii. Otin kaverisi neuvot ja tämän kautta jo e-bayssä! Toivottavasti siitä saa taikinaa! Tämä Instructable on hyvin samanlainen kuin Super Mario Wii, paitsi että
Nintendo Entertainment System -kasettikello: 7 vaihetta (kuvilla)
Nintendo Entertainment System Cartridge Clock: Jonkin aikaa sitten ystäväni Carolyn Main teki ystäville jouluksi NES -patruunakelloja. He rokkasivat. NES -patruunakellon mahtavuus on levitettävä kaikkialle maahan. Nyt voit mennä verkkoon ja ostaa yhden … MUTTA: 1) Me kaikki tiedämme makin