Satura rādītājs:

Amazon Dash Button Silent Doorbell: 10 soļi (ar attēliem)
Amazon Dash Button Silent Doorbell: 10 soļi (ar attēliem)

Video: Amazon Dash Button Silent Doorbell: 10 soļi (ar attēliem)

Video: Amazon Dash Button Silent Doorbell: 10 soļi (ar attēliem)
Video: Лучший автомобильный гудок за все время - DIY 2024, Novembris
Anonim
Image
Image

Pastāvīgi skatāties pa logu, lai jūs varētu pārtvert apmeklētājus, pirms viņi zvana pie durvīm? Vai esat noguris no suņu un mazuļa trakošanas, kad tas zvana? Vai nevēlaties tērēt naudu par "gudru" risinājumu?

Klusa durvju zvana izgatavošana ir tikpat vienkārša kā uzlaušana ar Amazon Dash pogu par 5 USD! Vienīgais, kas jums nepieciešams, ir dators, kas vienmēr ir mājās - piemēram, Raspberry Pi, kas jums ir sēdējis. Saņemiet īsziņu paziņojumus jebkurā laikā, kad kāds nospiež jūsu jauno durvju zvanu, lai visa māja būtu laimīga. (Ja jums ir viedpulkstenis, ir vēl vēsāk saņemt paziņojumus!)

Šim projektam jums būs nepieciešams:

  • Amazon domuzīme
  • Dators, kas paliek mājās (piemēram, Raspberry Pi)

1. darbība: domuzīmes pogas iestatīšana

Dash pogas iestatīšana
Dash pogas iestatīšana
Dash pogas iestatīšana
Dash pogas iestatīšana

Dash pogas sagatavošana uzlaušanai ir diezgan vienkārša - jums vienkārši jāiziet viss Amazon iestatīšanas process, atņemot produkta izvēli.

Šai iestatīšanai ir nepieciešama lietotne Amazon, kas ir pieejama operētājsistēmām iOS un Android. Kad esat pieteicies Amazon lietotnē, dodieties uz Jūsu konts -> Dash Pogas un ierīces -> Iestatīt jaunu ierīci. Atlasiet “Dash Button” un izpildiet norādījumus, līdz tiek parādīts uzaicinājums izvēlēties produktu.

Aizveriet lietotni. Neatceliet iestatīšanu; nespiediet x - vienkārši aizveriet lietotni. Ja nejauši izvēlējāties produktu vai atkārtoti izmantojat veco Dash pogu, vienkārši noņemiet ierīci, izmantojot lietotni Amazon, un veiciet šīs darbības vēlreiz.

Ja vēlaties mainīt pogas izskatu, etiķetes uzlīmes noņemšana ir vienkārša.

2. darbība: instalējiet ierīcē Node JS

Lai atrastu (un pēc tam izmantotu) jūsu Dash pogas aparatūras adresi, mums jāizmanto Node JS. To var instalēt jebkurā datorā - Mac, Linux (Raspberry Pi) vai Windows.

Mūsu pēdējais projekts ir atkarīgs no datora, kas ir savienots ar to pašu tīklu kā mūsu poga, kurā darbojas nepārtraukts mezgla skripts, tāpēc paturiet to prātā, izvēloties ierīci. Mājas galddators vai Raspberry Pi būtu ideāls.

Es izvēlos izmantot Pi 3, bet Pi Zero ar WiFi dongle arī darbotos!

Lai datorā instalētu Node JS, izpildiet atbilstošos norādījumus:

  • Raspberry Pi
  • Mac OS
  • Windows

Alekss Hortons uzrakstīja fantastisku moduli tam, ko mēs cenšamies darīt, ko sauc par mezgla domuzīmes pogu. Mums tas jāinstalē kopā ar mezglu pakotņu pārvaldnieku (npm) un libpcap. Komandrindā ievadiet šīs komandas:

sudo apt-get install npm

sudo apt-get install libpcap-dev npm install node-dash-button

3. darbība: atrodiet pogas adresi

Atrodiet pogas adresi
Atrodiet pogas adresi
Atrodiet pogas adresi
Atrodiet pogas adresi

Mēs esam atraduši vienkāršu veidu, kā atrast domuzīmes pogu.

Vispirms turiet nospiestu domuzīmes pogas pogu apmēram 5 sekundes, līdz gaismas diode sāk lēnām mirgot zilā krāsā. Tālrunī atveriet wifi iestatījumus un atrodiet wifi “Amazon Configure Me”. Kad esat izveidojis savienojumu ar to, atveriet tīmekļa pārlūkprogrammu un dodieties uz vietni

Mēs meklējam adresi, kas ir MAC adrese, un tā izskatīsies kā "ab: 64: be: 8b: ce: 82".

4. darbība: pogas pārbaude

Jūs varat apstiprināt, ka esat atradis pareizo adresi, uzrakstot vienkāršu skriptu, lai izdrukātu ziņojumu katru reizi, kad tiek nospiesta poga.

Izveidojiet jaunu skriptu mezgla-domuzīmes pogu direktorijā.

sudo nano button_test.js

Un kopējiet un ielīmējiet failā šādu informāciju:

var dash_button = prasīt ('node-dash-button'), domuzīme = domuzīme_button ('xx: xx: xx: xx: xx: xx'), // REPLACE WITH YOUR ADDRESS exec = need ('child_process'). exec; dash.on ('atklāts', function () {console.log ('Poga nospiesta!');});

Aizstājiet x otrajā rindā ar tikko atrasto pogas adresi. Saglabājiet failu ar Ctl-x, y.

Sāciet skriptu un nospiediet pogu.

sudo mezgls button_test.js

Jums vajadzētu redzēt "Poga nospiesta!" izprintēt. Tagad, kad mēs varam noteikt pogu nospiešanu, mēs varam aktivizēt darbības, pamatojoties uz tām!

5. darbība: iestatiet sākotnējo valsts kontu

Iestatiet sākotnējo valsts kontu
Iestatiet sākotnējo valsts kontu
Iestatiet sākotnējo valsts kontu
Iestatiet sākotnējo valsts kontu

Tagad, kad mēs varam aktivizēt komandrindas ziņojumu, nospiežot pogu Dash, mēs varam aktivizēt visādas citas lietas! Šajā gadījumā es sūtīšu īsziņu - mēs nevēlamies, lai kāds, kas atrodas pie durvīm, gaidītu, kamēr pārbaudīsim savu e -pastu.

Ir vairāki veidi, kā aktivizēt teksta paziņojumu - tādi pakalpojumi kā Twilio vai PushBullet. Viens no vienkāršākajiem veidiem, ko es atradu, bija caur sākotnējo stāvokli. Tas prasīja minimālu papildu kodēšanu un sniedza man informācijas paneļa skatu, kad mana poga tika nospiesta.

Dodieties uz vietni https://iot.app.initialstate.com un izveidojiet jaunu kontu.

Jums jāinstalē NodeJS sākotnējā stāvokļa SDK savā galddatorā/klēpjdatorā/Raspberry Pi. Komandu uzvednē (neaizmirstiet vispirms ievadīt SSH savā Pi), izpildiet šādu komandu:

cd/home/pi/node_modules/node-dash-button

sudo npm instalēt sākotnējo stāvokli

Lai pārbaudītu straumētāju, izveidojiet testa failu:

nano stream_test.js

Un kopējiet un ielīmējiet šo (atrodams arī šeit):

var IS = prasīt ('sākotnējais stāvoklis');

var spainis = IS.kauss ('NodeJS_SDK_Example', 'YOUR_ACCESS_KEY_GOES_HERE'); // Push notikums sākotnējā stāvoklī bucket.push ('Demo State', 'active'); setTimeout (function () {// Push another event bucket.push ('Demo State', 'inactive');}, 1000);

Saglabājiet skriptu ar Ctl-x, y.

Tomēr, pirms varam palaist šo skriptu, otrajā rindā jāpievieno unikāla piekļuves atslēga.

2. rindā redzēsit rindu, kas sākas ar var bucket = IS.bucket (…. Šīs rindas izveido jaunu datu kopu ar nosaukumu “NodeJS_SDK_Example” un ir saistīta ar jūsu kontu. Šī saistība notiek šī paša parametra dēļ jūsu sākotnējās valsts konta piekļuves atslēga ir gara burtu un ciparu sērija. Ja savā tīmekļa pārlūkprogrammā dodaties uz sākotnējās valsts kontu, augšējā labajā stūrī noklikšķiniet uz sava lietotājvārda, pēc tam dodieties uz sadaļu “Mani iestatījumi”. piekļuves atslēgu.

Palaidiet testa skriptu, lai pārliecinātos, ka varam izveidot datu straumi jūsu sākotnējā stāvokļa kontā. Izpildiet tālāk norādītās darbības.

mezgls stream_test.js

Tīmekļa pārlūkprogrammā atgriezieties sākotnējā valsts kontā. Jūsu žurnāla plaukta kreisajā pusē vajadzēja parādīties jaunai datu grupai ar nosaukumu “NodeJS_SDK_Example” (iespējams, lapa būs jāatsvaidzina). Noklikšķiniet uz šīs grupas, lai skatītu testa datus.

Tagad jūs esat gatavs nosūtīt pogas uz sākotnējo stāvokli!

6. darbība: galīgais kods

Gala kods
Gala kods

Mēs jau esam instalējuši sākotnējā stāvokļa mezgla SDK, tāpēc viss, kas mums jādara, ir tas jāpievieno savam kodam!

Šeit ir iepriekš izmantotā skripta button_test.js modificētā versija:

var dash_button = prasīt ('node-dash-button'), domuzīme = domuzīme_button ('xx: xx: xx: xx: xx: xx'), // REPLACE WITH YOUR ADDRESS exec = need ('child_process'). exec; var IS = prasīt ('sākotnējais stāvoklis'); var bucket = IS.bucket ('Durvju zvans', 'YOUR_ACCESS_KEY'); dash.on ('atklāts', function () {console.log ('Poga nospiesta!'); bucket.push ('Priekšējās durvis', 'Kāds ir šeit!');});

Kopējiet un ielīmējiet šo skriptu jaunā failā (joprojām atrodas mezgla-domuzīmes pogas direktorijā):

sudo nano durvju zvans

Jūs ievērosiet, ka 5. un 6. rindā mēs iekļaujam sākotnējā stāvokļa moduli un sniedzam kopas parametrus. Iepriekšējā unikālā piekļuves atslēga jāievieto 6. rindā.

10. rindā mēs faktiski nosūtām datus uz sākotnējo stāvokli. Šajā gadījumā esmu nosaucis savu spaini par “durvju zvanu” un straumēju “Kāds ir šeit!” pie manām ārdurvīm. Ja jums ir vairākas domuzīmju pogas, varat tās visas nosūtīt uz durvju zvanu, bet nosauciet tās atbilstoši to atrašanās vietai (piem., "Garāžas durvis", "Guļamistaba" utt.).

Saglabājiet skriptu ar Ctl-x, y.

Lai pārbaudītu skriptu, palaidiet:

sudo mezgls durvju zvans.js.

Nospiežot pogu, jums vajadzētu doties uz savu sākotnējā stāvokļa lapu un sānjoslā redzēt jaunu kausu ar nosaukumu “Durvju zvans”. Tagad pievienosim trigeri!

7. darbība: SMS aktivizētāja iestatīšana

SMS aktivizētāja iestatīšana
SMS aktivizētāja iestatīšana

“Aktivizētāji” ir sākotnējās valsts paziņojumu versija, un tos ir ļoti viegli pievienot. Vienkārši noklikšķiniet uz "Iestatījumi" zem durvju zvana kausa un pēc tam noklikšķiniet uz cilnes "Aktivizētāji".

Nolaižamajā sarakstā varat izvēlēties signālu, kuru vēlaties aktivizēt. Mūsu spainim ir tikai viena - "priekšējās durvis" - tāpēc izvēlieties to. Pēc tam izvēlieties opciju "atbilstība" un pievienojiet ziņojumu, ko straumējat, nospiežot pogu - šajā gadījumā "Kāds ir šeit!"

Visbeidzot, pievienojiet savu tālruņa numuru, lai saņemtu īsziņas. Pirmo reizi lietojot šo numuru, jums būs jāievada verifikācijas kods, kas nosūtīts uz jūsu tālruni.

Noteikti nospiediet "+" zīmi blakus savam tālruņa numuram, pretējā gadījumā aktivizētājs netiks izveidots.

Cilnes Aktivizētāji apakšdaļā noklikšķiniet uz Gatavs, lai saglabātu aktivizētāju.

Tagad jūs esat gatavs saņemt īsziņu brīdinājumus! Nospiediet pogu (kamēr darbojas durvju zvans.js skripts). Jums vajadzētu saņemt īsziņu 8 sekunžu laikā vai ātrāk!

Jūsu klusais durvju zvans ir gatavs darbam! Ja vēlaties pārliecināties, ka skripts tiek restartēts pēc strāvas padeves pārtraukuma, turpiniet lasīt. Es arī apskatīšu emocijzīmju pievienošanu jūsu spainim un signālu nosaukumus.

8. darbība. Informācijas paneļa personalizēšana

Informācijas paneļa personalizēšana
Informācijas paneļa personalizēšana
Informācijas paneļa personalizēšana
Informācijas paneļa personalizēšana

Ja vēlaties izkopt savu sākotnējā stāvokļa informācijas paneli, emocijzīmju pievienošana vai vārdu mainīšana ir ļoti vienkārša.

Lai mainītu flīzes nosaukumu, vienkārši ar peles labo pogu noklikšķiniet uz flīzes un atlasiet “rediģēt flīzi”. Atvērtajā nosaukuma lodziņā varat ievietot jebkuru emocijzīmju saīsni. Noklikšķinot uz "x" konfigurācijas loga augšdaļā, izmaiņas tiks saglabātas.

To var izdarīt arī sava kausa nosaukumam, zem kausa nosaukuma noklikšķinot uz “Iestatījumi” un pēc tam rediģējot lauku Nosaukums.

Informācijas panelim varat pievienot fona attēlu, lai saviem datiem piešķirtu lielāku personību un kontekstu.

9. darbība: skripta palaišana no sāknēšanas

Skripts, kas darbojas jūsu mājas datorā vai Pi, ir mūsu klusā durvju zvana atslēga. Ja kaut kas notiek, piemēram, strāvas padeves pārtraukums, mēs vēlamies pārliecināties, ka mūsu skripts tiek atjaunots un darbojas.

Mac datorā mēs izmantosim pakalpojumu ar nosaukumu crontab un teksta redaktoru nano:

env REDAKTORS = nano crontab -e

Faila iekšpusē pievienojiet:

@reboot nohup sudo mezgls /Users/UserName/node_modules/node-dash-button/doorbell.js &

Noteikti aizstājiet “UserName” ar savu. Ja skriptu nosaucāt citādi vai ievietojat citā direktorijā, nomainiet /Users/UserName/node_modules/node-dash-button/doorbell.js ar pareizo ceļu. Manā piemērā ceļš ir galvenais lietotāja direktorijs, kam seko direktorijs node_modules/node-dash-button. Jūs varat viegli nokopēt faila ceļa nosaukumu, izpildot šos norādījumus.

Saglabājiet failu ar Ctl-x, y. Varat pārbaudīt, vai tas darbojas, pārstartējot datoru.

Operētājsistēmā Windows Izpildiet šeit sniegtos norādījumus, lai restartējot sāktu mezgla skriptu. Noteikti norādiet visu skripta ceļu.

Raspberry Pi/Linux mašīnā Skripta palaišana no sāknēšanas uz Pi ir diezgan vienkārša. Mēs izmantosim pakalpojumu ar nosaukumu crontab:

sudo crontab -e

Izvēlieties savu iecienītāko teksta redaktoru (man patīk nano) un faila apakšā (zem visiem komentāriem) pievienojiet:

@reboot nohup sudo mezgls /home/pi/node_modules/node-dash-button/doorbell.js &

Ja skriptu nosaucāt citādi vai ievietojat citā direktorijā, nomainiet /home/pi/node_modules/node-dash-button/doorbell.js ar pareizo ceļu. Manā piemērā ceļš ir galvenais Pi direktorijs, kam seko direktorijs node_modules/node-dash-button.

Saglabājiet failu! Lai tas stātos spēkā, jums ir jāpārstartē, bet, ja arī vēlaties atsāknēt, ja interneta savienojums pārtrūkst, šajā nākamajā darbībā mēs pievienosim vēl vienu uzdevumu mūsu crontab.

Lai tiktu galā ar tīkla kritumiem, es nolēmu vienkārši ieviest veidu, kā Pi var noteikt tīkla savienojumu un pārstartēt, ja tā nav.

Vispirms mums ir jāizveido skripts, lai pārbaudītu WiFi un pēc tam aktivizētu izslēgšanu:

cd

sudo nano /usr/local/bin/checkwifi.sh

Ievietojiet faila iekšpusē šādu informāciju, neaizstājot IP adresi ar maršrutētāja IP adresi:

ping -c4 IP_ADDRESS> /dev /null

ja [$? ! = 0] tad sudo /sbin /shutdown -r tagad fi

Ping pārbauda savienojumu. Ja tas atgriežas ar izejas kodu, kas nav nulle, skripts nosūta izslēgšanas komandu. Saglabājiet un izejiet no skripta. Tagad pārliecinieties, vai tā atļaujas ir kārtībā:

sudo chmod 775 /usr/local/bin/checkwifi.sh

Tāpat kā mūsu skripts doorbell.js, mēs pievienosim šo skriptu crontab:

sudo crontab -e

Vieta

*/5 * * * */usr/bin/sudo -H /usr/local/bin/checkwifi.sh >>/dev/null 2> & 1

zem rindiņas, kuru pievienojām iepriekš. Tas veiks mūsu checkwifi skriptu ik pēc 5 minūtēm. Tagad izejiet no crontab un pārstartējiet Pi:

sudo atsāknēšana

Visam jābūt iestatītam un darbam! Varat arī iestatīt veidu, kā uzraudzīt Pi darbības procesus, ievērojot šo apmācību.

10. solis: Secinājums

Secinājums
Secinājums

Tagad jums ir kluss durvju zvans, lai šie Amazon piegādes puiši jūs nepamodinātu! Paziņojiet man, ja jums ir kādi jautājumi vai nākt klajā ar unikālām izmaiņām.

Ieteicams: