Sadržaj:
- Pribor
- Korak 1: Postavite usmjerivač (izborno, ali preporučeno)
- Korak 2: Kodiranje
- Korak 3: Hardver (beta)
- Korak 4: Outlook/Reference
Video: [15min] Weasley sat / Ko je kod kuće indikator - na temelju TR -064 (beta): 4 koraka (sa slikama)
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:34
AŽURIRANJE: Pogledajte korak 3.
Duga priča (TL; DR u nastavku): Prije nekog vremena napisao sam malu bash-skriptu na svom računalu koja će skenirati mrežu za registrirane uređaje i usporediti njihova imena hostova s popisom s povezanim imenima. Svaki put kad bi se uređaj prijavio ili odjavio s mreže dobio bih obavijest. Ovako bih imao ideju tko je kod kuće (ne samo da je ponekad lijepo znati tko je kod kuće i pitati ih želi li se pridružiti nekom obroku, već vam također može pomoći da izbjegnete neugodne situacije). Problem je u tome što ova metoda nije jako pouzdana. Nažalost, neki uređaji ne odgovaraju na pingove (npr. Pametni telefoni) i čini se da prelaze u neki način uštede energije pa se stoga ne mogu pouzdano otkriti naredbama poput nmap-a. Pokušao sam to prevladati zahtijevajući najmanje 10 negativa prije nego što sam konačno objavio da je uređaj napustio mrežu. Sve u svemu, radilo je, ali polako, nepouzdano i ne baš lijepo. Također sam htio moći provjeriti tko je kod kuće, a da nisam otvorio računalo. Pa sam imao ove ESP8266 -e ležeće - i želio sam se igrati s njima. Ali nisam želio izgraditi 10.120.124.812. meteorološku postaju zasnovanu na ESP-u ili takvu (zašto biste htjeli pratiti vrijeme svojim usranim termometrom ± 2 ° C kad svejedno možete posjetiti neku web stranicu?). Tako je plan napravljen. Nažalost, pokazalo se da izgleda da ESP nije opremljen za pravilan ping (što je za početak bilo loše, sjećate se?), A kamoli za potpuno pretraživanje mreže. Razmišljao sam o tome da napišem neku biblioteku za to - ali budući da je moj C ++ vrlo ograničen, ovo je moj prvi ESP -projekt i nisam genij s mrežnim stvarima niti sam odbacio tu ideju. Nakon što sam malo istraživao, otkrio sam da je moj usmjerivač (marka Fritz! Box) zapravo ima API! DAJ !!!! Protokol se zove TR-064. Tako nadahnjujuće ime, zar ne? Istražujući tu temu, našao sam (prilično lošu) dokumentaciju na internetu. Trebalo mi je neko vrijeme da to riješim. Možda ću sljedećih dana objaviti više praktičnih instrukcija (i kako komunicirati s/testirati ovaj API pomoću dodatka za preglednik). Kad sam shvatio API, počeo sam ga koristiti sa svog ESP -a. Ukratko: dobio sam rješenje za patkaste trake i wd40 koje radi i radi ono što sam htio (postavljanje upita API-ju za povezane uređaje, usporedba s popisom MAC adresa i prebacivanje LED-ova u skladu s tim). Ali htio sam jače i fleksibilno rješenje, a ovaj API nudi još mnogo toga (možete promijeniti postavke (uključiti/isključiti wifi, promijeniti lozinku, otvoriti/zatvoriti gostujuću wifi mrežu, promijeniti snagu signala), ponovno pokrenuti usmjerivač, upitati brzinu veze,…) - pa sam odlučio stvoriti univerzalnu knjižnicu TR -064! TL; DR; Uređaj koji preko LED dioda pokazuje tko je trenutno kod kuće. Radi odlično, nema još sjajno kućište (hej - primijetio si beta u naslovu?). Koristi SOAP-protokol za komunikaciju s usmjerivačem. Napisao je Arduino knjižnicu kako bi se to dogodilo. Potrebno znanje • Osnovno znanje o Arduinu/ESP -u • Ako ste sastavili Blink primjer sa svojim ESP -om, bit ćete u redu! • Ako niste, možete slijediti prva dva koraka ovog uputstva • Lemljenje bi moglo dobro doći, ako želite napustiti osnovnu ploču • Neki 3D dizajni i/ili obrada drveta mogli bi vam dobro doći za poveznicu na projekt stanovanjaGithub [https://github.com/Aypac/Arduino-TR-064-SOAP-Library] za brzu referencu.
Pribor
- ESP8266 ili ESP32 na razvojnoj ploči ili kod drugog programera (2 ~ 6 €)
- USB kabel koji odgovara programatoru
- Adapter za napajanje (npr. USB ili baterija ~ 2 €)
- Nekoliko LED i otpornika (~ 1 €)
- (Kućište)
=> Oko 4-6 € za minimalni dizajn. To za mene znači da ih mogu nekoliko objesiti po kući. Ako ste lijeni, možete upotrijebiti i razvojnu ploču s uključenim LED diodama (za više detalja pogledajte korak 4).
Korak 1: Postavite usmjerivač (izborno, ali preporučeno)
Protokol je zamišljen kao opći protokol za usmjerivače, ali znam samo da ga (većina) usmjerivača Fritz! Box (vrlo često barem u Europi) koristi. Ne znam za druge marke. Pretpostavit ću, dakle, da koristite Fritz! Box. Ako možete uspjeti (ili to ne učinite) na bilo kojem drugom usmjerivaču, rado ću ga dodati ovom uputstvu (možda čak i započeti kratki popis kompatibilnosti?).
Ovaj korak nije neophodan, mogli biste koristiti i svoj administratorski račun, ali to nije preporučljivo iz očiglednih razloga (moglo bi se presresti ili izvući iz vašeg ESP -a, mogli biste slučajno promijeniti stvari koje ne želite …) - pa savjetujem vam da to učinite.
U svakom slučaju, evo nas:
- Prijavite se na svoj Fritz! Box upisivanjem fritz.box u url traku vašeg omiljenog preglednika.
- Pronađite stranicu za stvaranje novog korisnika FRITZ! Box -a (morate imati napredno mjesto u sustavu, ako ga ne možete pronaći, pokušajte ažurirati svoj uređaj).
- Izradite novi račun kao što vidite na slici (koristeći drugo korisničko ime/lozinku!).
- Odjavite se.
Korak 2: Kodiranje
-
Knjižnicu možete nabaviti na Githubu.
- U primjerima ćete pronaći datoteku pod nazivom home-indicator.ino, koja je kôd za ovaj projekt. Mapu s primjerima postavite u svoju mapu arduino IDE projekta, a drugu u mapu knjižnica u istoj matičnoj mapi projekta.
- (Ponovno) Pokrenite IDE.
- Otvorite home-indicator.ino u IDE-u i unesite svoje postavke. Trebalo bi biti posve očito što gdje ide. Ako imate pitanja, javite mi!
- Sada ga možete sastaviti i prenijeti na svoj ESP!
Korak 3: Hardver (beta)
Da … Ovo je korak gdje moram još poraditi. Ali pretpostavljam da na webu ima dovoljno materijala da se nešto shvati:) Postavljanje kao na slikama je samo dioda s ~ 100Ohm otpornikom ožičenim na GPIO {5, 4, 0, 2}, a to su D1, D2, D3, D4 (tim redoslijedom) pinovi moje MCU ESP8266 ploče i mali narančasti kabel koji vodi katode do GND (označeno G na mojoj ploči). Ako ste lijeni, možete učiniti ono što vidite na drugoj slici. Dovoljno je koristiti razvojnu ploču s uključenim LED diodama (poput "ESP-202", pogledajte slike-oko 3,50-5,00 € uključujući dostavu). Zatim ga možete jednostavno priključiti na USB napajanje ili upotrijebiti priloženu bateriju, nacrtati sučelje na komadu papira i zalijepiti ga na zid. Gotovo. Za ovu određenu ploču portovi su:
int userPins [numUser] = {5, 4, 2, 14, 16};
od vrha do dna.
Korak 4: Outlook/Reference
Ovo još uvijek planiram: 1. Napraviti lijepo kućište (očito) 2. Dodati lijep GUI za upravljanje korisnicima/LED -ovima/MAC -ovima/poznatim uređajima 3. Poboljšanje biblioteke (za to pogledajte Github) 4. Popravak: ponekad LED diode reagirati tromo (potrebno je malo dok se ne isključe, nakon što je uređaj napustio) bez očitog razloga 5. Priključite stvar u hodnik i možda još koju po kući. Voljeli bismo od vas nešto dobiti na znanje! I kao i uvijek, jako me veseli vidjeti druge kako stvaraju sranja koja ste smislili, pa vas molimo da odvojite trenutak za komentar i objavljivanje slika!:):) Još nekoliko referenci Ovdje ću povezati neke stvari koje bi vam mogle pomoći: • Referenca TR-064 • Neki tip koji se petlja oko ljuske i TR-064 (dobro da se razumije API) • Harry Potter Wikipedia: Unos Weasley sata • Neki dečki grade lijep, ali kompliciran Weasly sat*_*Temelji se na aplikaciji za vaš telefon koja vam zauzima lokaciju. Ako se nalazite u određenim unaprijed definiranim područjima, uključit će se odgovarajuće svjetlo na satu. Za mene je to bilo previše komplicirano i moralo je biti na mnogim mjestima gdje bi se moglo pokvariti/otkazati: • Aplikacije moraju biti ažurirane • Svi moraju koristiti ove aplikacije • I biti u redu s utjecajem na privatnost • Aplikacija radi samo s internetom veza • Morate koristiti posrednički poslužitelj za povezivanje komunikacije (osim ako ne želite postaviti eSP kao poslužitelj i otvoriti svoju kućnu mrežu za vanjski promet - da, još jedan nesigurni IOT uređaj izravno spojen na internet!) • posrednička služba jednog dana može biti isključena/promijeniti API, • … Treba vam više softvera. Više softvera znači više mjesta za pogreške;) Ali, učinili su nevjerojatan posao i ako želite učiniti nešto takvo, prijeđite na njihovu web stranicu, stvarno je sjajno!
Preporučeni:
Kako napraviti senzor vibracija za proljeće kod kuće!: 5 koraka (sa slikama)
Kako napraviti osjetnik opružnih vibracija kod kuće !: Radio sam na novom projektu koji uključuje senzor vibracija opruge poznat i kao "jadnik" akcelerometar/senzor pokreta! Ovi prekidači s opružnim vibracijama su prekidači okidača visoke osjetljivosti koji nisu usmjereni vibracijama. Unutra je
Kako napraviti PCB kod kuće: 14 koraka (sa slikama)
Kako napraviti PCB kod kuće: Web stranica Link: www.link.blogtheorem.com Pozdrav svima, Ovo je uputstvo o " Kako napraviti PCB kod kuće " bez ikakvog posebnog materijala. Kao student elektrotehnike pokušavam izraditi DIY projekte koji zahtijevaju jednostavnu elektroniku
Kako napraviti RC automobil s Bluetooth kontrolom kod kuće: 4 koraka (sa slikama)
Kako napraviti RC automobil s Bluetooth kontrolom kod kuće: Naučite kako napraviti jednostavan robotski automobil kojim upravlja SmartPhone pomoću Arduina i vrlo osnovnih elektroničkih komponenti
TinyDice: Profesionalne PCB -ove kod kuće s rezačem za vinil: 10 koraka (sa slikama)
TinyDice: Profesionalne PCB -ove kod kuće s rezačem za vinil: Ova uputa sastoji se od vodiča korak po korak koji dokumentira način proizvodnje PCB -a profesionalne kvalitete kod kuće pomoću rezača za vinil, na pouzdan, jednostavan i učinkovit način. Ova metoda omogućuje proizvodnju konzistenta
Izrada daljinskog upravljača za vaš Arduino projekt kod kuće: 9 koraka (sa slikama)
Izrada daljinskog upravljača koji izgleda profesionalno za vaš Arduino projekt kod kuće: Napravio sam projekt koji je koristio arduino i IR udaljenu biblioteku za kontrolu nekoliko stvari. Dakle, u ovom uputstvu pokazat ću vam kako možete promijeniti bilo koji daljinski upravljač u iskoristio vaš sljedeći projekt. I ne trebate ništa otmjeno da napravite dobar toalet