INHOUDSOPGAWE:

Raspberry Pi Reboot Router: 3 stappe
Raspberry Pi Reboot Router: 3 stappe

Video: Raspberry Pi Reboot Router: 3 stappe

Video: Raspberry Pi Reboot Router: 3 stappe
Video: BTT - Manta E3EZ - CB1 with EMMc install 2024, Julie
Anonim
Raspberry Pi Reboot Router
Raspberry Pi Reboot Router
Raspberry Pi Reboot Router
Raspberry Pi Reboot Router

Het u al ooit opgelet dat u nie meer aan die internet gekoppel is nie?

Is dit frustrerend om soggens op te staan en die router te moet 'herlaai' om die internet terug te kry?

Dit het meer gereeld met my gebeur as wat ek wil hê dit moet gebeur.

Vroeër hierdie jaar het ek drie weke lank uit die stad gegaan en op die eerste dag het my router van die internet ontkoppel! Dit het beteken dat ek geen verband gehad het met die dinge in my huis waarop ek gereeld moet 'aanmeld' nie, byvoorbeeld Nest -termostaat, Arlo -kameras … Omdat ek nie tuis was nie, kon ek nie my router herlaai nie. Ek wou regtig nie 'n buurman pla om verby my sekuriteitstelsel te kom nie, dan my router te vind en weer te begin. Ek het ook daaraan gedink om die kragonderneming te bel en hulle die elektrisiteit na my huis vir ongeveer 5 minute te laat afskakel - my S. O. het nie goedgekeur nie..:(Toe ek terugkom, het ek begin soek na 'n goeie oplossing, maar kon niks omvattends genoeg vind vir wat ek nodig gehad het nie. Eers het ek pas 'n digitale tydstekker gekoop en dit ingestel om die router 5 minute om 02:00 af te skakel. Ongelukkig het ek 'n paar oggende nie internet gehad nie - 'n hersiening van die router -logs vir daardie dae het aangedui dat die internet omstreeks 04:00 ontkoppel het en my router sou nie konnekteer nie, tensy ek dit weer begin.

Met 'n ekstra Raspberry Pi en 'n bietjie python -vaardigheid, het ek besluit om te kyk hoe dit my dilemma kan help, en ek het met hierdie oplossing vorendag gekom.

Ek het dit getoets en geïnstalleer en tot dusver so goed!

Die Raspberry Pi kyk basies elke 2 minute na 'n internetverbinding via 'ping' na 2 verskillende webwerwe. Solank as wat ten minste een van hulle reageer, is ons almal goed. As daar geen teruggekoppelde pings is nie, skakel die Pi die interne USB -hub af, wat weer veroorsaak dat die Iot Power Relay die router afskakel. Na 2 minute skakel die Pi die interne USB -hub aan, waardeur die Iot Power Relay die router aanskakel. Dit wag dan 4 minute voordat die internetverbindingsondersoek van 2 minute hervat word.

Ek moes ook oorweeg dat daar miskien 'n onderbreking in my omgewing is en dat die internet 'n rukkie gaan lê - skaars, maar dit kom wel voor (ten minste in my omgewing …) en ek wou nie hê dat die router elke 6 herlaai nie tot 8 minute, so ek het 'n vlag ingesit wat die volgende herlaai vir 1 uur in hierdie geval sou uitstel.

Voorrade

Toerustinglys:

  1. Iot Power Relay vir Raspberry Pi (foto hierbo)
  2. USB 2.0 A -skroefaansluitblokaansluiting (as u u eie USB -> kragstrookkabel gaan maak, ook op die foto hierbo)
  3. Kabel met 2 of meer geleidingsdrade of 'n ou / ekstra USB -kabel wat u kan gebruik. Ek het 'n ou stereo phono plug kabel gebruik en die proppe afgesny.
  4. Raspberry Pi Model 3+ (jy kan 'n Model 4 gebruik en individuele poorte beheer - ek gebruik 'n Model 3)

Ek kan 'n klein kommissie verdien vir my goedkeuring, aanbeveling, getuigskrif en/of skakel na enige van die bogenoemde produkte.

Stap 1: Bou en koppel die hardeware aan

Bou en koppel die hardeware aan
Bou en koppel die hardeware aan

Ek het my kabel gebou om die Pi aan die kragrelais te koppel.

Ek gebruik die USB -skroefklemblok met 2 drade wat aan die + en gnd -gleuwe gekoppel is. U behoort dit op die aansluiting te sien. Sien die prentjie met die rooi (+) en wit (-) pyle na die gleuwe.

Ek het die ander kant in die kragrelais gekoppel. Die groen deel aan die kant van die kragrelais trek net uit en dan kan u die drade in die gleuwe steek en dan vasdraai. Sien die prentjie met die rooi (+) en wit (-) pyle na die drade.

Let wel: as u 'n bestaande USB -kabel gebruik, het u gewoonlik 4 drade aan die ander kant - die rooi is die (+5v) en die swart een (-). U sal slegs die twee vir die Power Relay gebruik.

Vir die toets het ek 'n tafellamp gekoppel aan een van die afsetpunte met 'normaal af'. Dit word beheer deur die USB -kragtoestand. Ek het die Raspberry Pi in die 'altyd aan' -aansluiting gekoppel, ingeprop en aangeskakel vir die volgende stap.

Stap 2: Installeer sagteware

Stel die Pi op:

Daar is 'n paar webwerwe wat u kan lei om u RPi vir die eerste keer op te stel indien nodig.

Life Hacker

Framboos Pi Org

Ek stel myne 'koploos' op en gebruik VNC om daarby aan te sluit. Die skakels hierbo wys hoe u dit moet doen.

Sagteware opgestel:

  1. Installeer uhubctl (sien https://github.com/mvp/uhubctl) wat gebruik sal word om die usb -hub aan en uit te skakel.
  2. Laai die sagteware wat ek van my GitHub -bladsy af geskryf het, af en installeer dit: RPi Router Reboot sagteware.
  3. Stel internet-monitor.service op en registreer dit as u hierdie diens wil gebruik wanneer die Raspberry Pi begin.

Stap 3: Toets- en gebruiksbesonderhede

Die hoof python-program, rpi-internet-monitor.py, kan met 1 of 2 parameters uitgevoer word vir ontfoutings- en toetsdoeleindes.

Open 'n terminale sessie in die gids waarin u die kode plaas en voer die volgende opdrag uit:

: ~/Documents/RebootRouter $ python3 rpi-internet-monitor.py -debug -toets

Let wel: dit sal die ontfoutingsinligting uitdruk en die lamp aan en aanskakel, aangesien dit sal toets of dit nie aan die internet gekoppel is nie. U kan net -debug gebruik en die boodskappe sien. U kan nie net -test gebruik nie; dit moet die tweede parameter wees na -debug.

U kan die KONSTANTE in die boonste deel van die program verander na die waardes wat u wil. Die eerste stel loop met die -toets parameterset, die tweede stel is wat in alle ander gevalle gebruik sal word.

Ek het 'n diens opgestel om dit tydens opstart te laat loop, sodat dit altyd op my Raspberry Pi werk.

Maak internet-monitor.service oop en wysig die ExecStart- en WorkingDirectory-reëls met u volledige paaie na die python-kode. Stoor die lêer.

Kopieer die lêer na die systemd/system folder:

: ~/Documents/RebootRouter $ sudo cp internet-monitor.service /etc/systemd/system/internet-monitor.service

Toets of die diens sonder foute begin:

: ~/Documents/RebootRouter $ sudo systemctl begin internet-monitor.service

Stel die diens in staat om tydens opstart te begin:

: ~/Documents/RebootRouter $ sudo systemctl aktiveer internet-monitor.service

As alles goed gaan, kan u dit nou bymekaar sit en die Iot Power Relay afskakel, die lamp ontkoppel, die router koppel en die Power Relay weer aanskakel. U router moet herlaai en monitor nou die internet.

Ek het nog 'n toets gedoen nadat ek alles ingeskakel het - ek het my internetkabel by die muur ontkoppel en wag; die router het sekerlik afgegaan en daarna aangeskakel. Dit bly aan en na ongeveer 10 minute het ek die kabel weer aan die muur gekoppel en die internet gekry - dit werk tot dusver goed….:)

Aanbeveel: