Innehållsförteckning:
- Steg 1: Skapa Circuit to Interface ESP-01 och Door Chime
- Steg 2: 3.3VDC nätaggregat för ESP-01
- Steg 3: blinkar ESP-01
- Steg 4: Testkörning
- Steg 5: Integrera kortet och strömförsörjningen i klockan
- Steg 6: Final Touch
Video: MQTT/Google Home DoorBell med ESP-01: 6 steg
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:45
Har du någonsin missat att svara på en gäst som ringde på din dörr bara för att du är i en del av huset som är för långt för att höra dörrklockan? som källare, sovrum med stängd dörr, eller kanske tittade du på tv eller lyssnade på musik.
Om du, precis som jag, har en eller flera Google -hemhögtalare på flera platser i hela ditt hus kan den här instruerbara vara vad du behöver.
I denna instruerbara kommer jag att visa dig hur du lägger till MQTT -klient till en befintlig dörrklocka för att kommunicera till MQTT -mäklare med meddelande till google home / pushbullet, med NodeRED. Detta projekt ersätter inte dörrklockans omkopplare eller klockan. Den använder fortfarande vanlig mekanisk tryckknapp för dörrklockan.
Vi kommer att lägga till ESP-01-modulen i det befintliga 16VAC dörrklocksystemet och lägga till MQTT-funktionalitet för att skicka meddelande till MQTT-mäklaren (när dörrklockomkopplaren trycks in). MQTT -mäklare skulle vidarebefordra meddelandet till NodeRED. Vid mottagandet av MQTT -meddelande skulle NodeRED skicka meddelande till flera Google Home -enheter och även eventuellt skicka meddelande till mobiltelefon/webbläsare via pushbullet.
Jag har en passion för DIY -hemautomation och lägger långsamt till IOT i mitt hem. Google home har varit en av de centrala funktionerna i min hemautomation.
Min son gav mig idén till det här projektet när han frågade mig om jag kan få Google Home att meddela varje gång någon ringer på vår dörrklocka. Vi har 2 våningar + avsluta källaren hem, och många gånger kunde vi inte höra ljudet när vi är i vår källare eller på övervåningen i sovrummet med dörren stängd eller med TV på.
Vi har fyra google home mini i vårt hus placerade på olika platser/rum, och genom att använda google homes för att meddela en dörrklocka, vet vi omedelbart var som helst i huset om någon ringer på dörren.
I mitt hus använder jag RaspberryPi ZeroW för att vara värd för Mosquitto MQTT -server och NodeRED. Det har körts i över ett år utan problem.
Referenser:
- Kopplingsschema för dörrklocka:
- Installera Mosquitto MQTT Broker på Raspberry Pi:
- Installera NodeRED på Raspberry Pi:
Steg 1: Skapa Circuit to Interface ESP-01 och Door Chime
Det första steget skulle vara att skapa kretsen som skulle vara gränssnittet mellan ESP-01 och Door Chime. Typisk dörrklocka aktiveras när det finns en 16VAC mellan "TRANS (tidigare)" och "FRONT/BAK" stift som visas på mitt första foto. Spänningen visas på dessa stift när dörrklockan trycks in.
Kretsen som jag konstruerade är att känna av denna 16VAC -signal och konvertera den till cirka 3,3VDC digital signal. Det är en grundläggande halvvågslikriktare bildad av D1 och C1. Vi behöver inte ha helvågslikriktare i den här situationen eftersom det är väldigt lite laddning till DC-utgången, vilket sparar oss lite fastigheter på tavlan. Jag vill göra brädan så lite som möjligt så att jag kan placera den inuti min befintliga klocka.
R1 och R2 bildar spänningsdelare för att sänka toppspänningen till cirka 3,3V.
R3, TR1 och R4 bildar en inverterare för att tillhandahålla omvänd logik för ESP-01 GPIO-2. Detta är nödvändigt för att ge logik HÖG under uppstart (med pull-up R4 och R5) för ESP-01 att starta från blixt. När dörrklockans tryckknapp trycks, presenterar den logik LÅG för GPIO-2. TR1 kan vara vilken liten NPN-transistor som helst, i mitt fall använde jag 2N3904.
V1 är en 3.3VDC strömförsörjning som jag byggde med en gammal 5V mobiltelefonladdare tillsammans med AMS1117 3.3VDC regulator som jag kommer att visa i nästa steg.
För ESP-01-uttaget använder jag ett 8-stifts standard IC-uttag och skär plastbryggorna som skapar gapet mellan raderna och limmer sedan ihop de två raderna.
Steg 2: 3.3VDC nätaggregat för ESP-01
I detta steg kommer vi att bygga 3.3VDC-strömförsörjningen för ESP-01. Jag har några gamla 500mA och 700mA 5VDC USB-laddare som jag planerade för detta projekt. Vi behöver också 3.3VDC regulator för att sänka 5V spänningen till 3.3V, för detta använder jag en billig förbyggd AMS1117 baserad regulatormodul som jag köpte från ebay. Du kan söka efter "3.3V AMS1117 -modul" och hitta vad som fungerar för dig.
Denna 3.3V regulatormodul är väldigt liten så att jag faktiskt kan stoppa in den i den ursprungliga 5V USB-laddaren, vilket gör den säkrare från potentiell kortslutning. Jag tog bort AC -väggpinnarna från laddarmodulen och ersatte den med två kablar som kommer att anslutas till 120VAC från väggen bakom min befintliga klocka. Men ta inte bort tapparna på detta steg förrän vi testkör på nästa steg.
Om det finns ett vägguttag i närheten, eller om du inte känner dig bekväm med att koppla strömförsörjningen direkt till husets ledningar, kan du eventuellt bara koppla in den modifierade strömförsörjningen till väggkontakten och köra kablar till klockan, även om det är kanske inte ser så rent ut som att ansluta den direkt till husets ledningar.
Se ett av mina bilder för att se att bakom min klocka finns 120VAC -kablar och 16VAC -transformatorn för klockan.
Utmatning från 3.3V-regulatorn skulle sedan ansluta till ESP-01-gränssnittskortet enligt föregående steg.
Steg 3: blinkar ESP-01
I detta steg kommer vi att blinka ESP-01 med arduino-skiss. Om du aldrig har blinkat ESP-01-modulen kan du följa min instruktion för att komma igång:
Du hittar min skiss på min github -sida:
I skissen behöver du åtminstone ändra följande information som gäller ditt hemnätverk/installation:
#define MQTT_SERVER "10.0.0.30" const char* ssid1 = "SSID"; const char* password1 = "MYSSIDpassword"; const char* ssid2 = "SSID1"; const char* password2 = "MYSSIDpassword";
I mitt hemnätverk har jag 2 olika åtkomstpunkter som sänder 2 olika SSID: er, och denna skiss skulle tillåta redundans genom att ansluta till nästa SSID om kommunikationen till den aktuella AP: n förloras. Om du bara har ett SSID fyller du i både ssid1 och ssid2 med samma värde.
När du har gjort ändringen laddar du upp skissen till ESP-01 och ansluter ESP-01 till gränssnittskortet.
Steg 4: Testkörning
Från steg 1 har vi byggt ESP-01-gränssnittskortet, och från steg 2 har vi 3,3V strömförsörjning för ESP-01-kortet. Vi ansluter nu strömförsörjningsutgången till kortet enligt kretsschemat, visat som V1.
Nu är nästa steg att ansluta klockans Trans/Door -terminaler till gränssnittskortets anslutningar som visas som "Door Chime Terminaler". Eftersom min klocka är monterad högt på en vägg, för testkörningen, kör jag tillfälligt ett par långa kablar från klockanslutningarna till kortet så att jag kan ansluta strömförsörjningen.
För att testa om vår utrustning fungerar skulle det enklaste vara att övervaka MQTT -meddelanden i nätverket. För att göra det måste du öppna en SSH -session för myggmäklaren och utfärda följande kommando:
mygga_sub -v -t '#'
Kommandot ovan skulle tillåta oss att se alla MQTT -meddelanden som kommer in i mäklaren.
Anslut nu strömförsörjningen till vägguttaget, och om allt fungerar, om några sekunder bör du åtminstone se följande MQTT -meddelande:
stat/DoorBell/LWT Online
Gå nu ut och ring på din dörrklocka, så ska du se detta meddelande:
tele/DoorBell PÅ
Om du ser dessa meddelanden är ditt projekt en framgång.
Jag inkluderade också flera användbara MQTT -ämnen i skissen som du kan använda:
"stat/DoorBellInfo": detta meddelande skickas varje minut för att ge upptid och annan information.
"cmnd/DoorBellInfo": ESP-01 skickar ut information om det tar emot detta ämne med värdet '1' (ascii = 49) "cmnd/DoorBellCPUrestart": ESP-01 startar om det får det här ämnet med värdet '1' '(ascii = 49) "cmnd/DoorBellCPUreset": ESP-01 återställs om det tar emot detta ämne med värdet' 1 '(ascii = 49)
"tele/FrontDoorBell": ESP-01 skickar meddelanden i detta ämne med värdet "PÅ" om dörrklockan trycks in
Steg 5: Integrera kortet och strömförsörjningen i klockan
Nu när vi har vår framgångsrika testkörning måste vi montera kortet och strömförsörjningen inuti vår dörrklocka (om möjligt). I min befintliga klocka finns det ett tomt hölje som jag kunde klippa upp och passa strömförsörjningen inuti det utrymmet. ESP-01-kortet passar inte inuti det lilla utrymmet, men passar ändå inuti den övergripande klocklådan. Jag använde precis en tjock dubbelsidig tejp för att montera ESP-01-gränssnittskortet.
Nu kan vi ta bort metallpinnar från vår USB -laddare och ersätta dem med tjockare kabel som vi kan ansluta till husets ledningar. Var noga med att stänga av din strömbrytare som levererar ström till klockan.
Om det inte finns tillräckligt med utrymme för att passa vårt projekt i den befintliga dörrklockan, måste du lägga det i en separat låda och montera det nära dörrklockan.
Steg 6: Final Touch
Nu när vi har fått projektet att fungera och kan publicera ett MQTT -meddelande till mäklaren är nästa steg att tänka på vad man ska göra med det.
I mitt projekt använder jag Node-RED för att lyssna/prenumerera på det dörrklockans MQTT-ämne och meddela flera Google-högtalare. Utöver det kopplade jag också flödet till en pushbullet -nod för att skicka meddelande till min Android -telefon så jag vet om någon ringer på dörren även om jag inte är hemma. Pushbullet -meddelande kan inte vara användbart för vissa, men det har varit ganska användbart ett par gånger för mig, tillsammans med videokamera på min veranda, kan jag se vem som kom för att släppa leveranser (de ringer vanligtvis på dörren). Jag kan inte lita mycket på kamerans rörelsedetekteringsfunktion på grund av olika störningar, särskilt rörliga skuggor av träd.
Bilden i det här steget visar flödet Node-RED för att åstadkomma detta. Du kan också klistra in flödet från min github-sida i din Node-RED:
Googles hemmeddelande är bara ett exempel på detta projekt, men jag tror att det är det mest användbara och praktiska. Du kan alltid ansluta till en annan MQTT -lyssnare eller till och med använda IFTTT för att driva andra enheter när du trycker på dörren.
Ha så kul…
Rekommenderad:
UK Ring Video Doorbell Pro som arbetar med mekanisk klocka: 6 steg (med bilder)
Storbritannien Ring Video Doorbell Pro som arbetar med mekanisk klocka: **************************************** **************** Observera att denna metod bara fungerar med växelström just nu. Jag uppdaterar om/när jag hittar en lösning för dörrklockor som använder likström Under tiden, om du har en likström leverans, du behöver inte
Persienner med ESP8266, Google Home och Openhab -integration och webbkontroll: 5 steg (med bilder)
Kontroll av persienner med ESP8266, Google Home och Openhab -integration och webbkontroll: I den här instruktionsboken visar jag dig hur jag lade automatisering till mina persienner. Jag ville kunna lägga till och ta bort automatiseringen, så all installation är klämd på. Huvuddelarna är: Stegmotor Stegdrivrutinstyrd vid ESP-01 Växel och montering
MQTT/Google Home Flood/Water WIFI-sensor med ESP-01: 7 steg
MQTT/Google Home Flood/Water WIFI-sensor med ESP-01: I den här instruktören kommer jag att visa dig hur du bygger wifi översvämnings-/vattensensor med minimal kostnad. Hela projektet kostar mig mindre än $ 8 för delar som jag köper från ebay och mina befintliga reservdelar. I detta projekt kommer vi att använda ESP-01 för att tillhandahålla Wif
Komma igång med Esp 8266 Esp-01 Med Arduino IDE - Installera Esp -kort i Arduino Ide och Programmering Esp: 4 steg
Komma igång med Esp 8266 Esp-01 Med Arduino IDE | Installera Esp-kort i Arduino Ide och programmera Esp: I dessa instruktioner lär vi oss hur man installerar esp8266-kort i Arduino IDE och hur man programmerar esp-01 och laddar upp kod i den. Eftersom esp-kort är så populära så jag tänkte rätta till en instruktionsför detta och de flesta människor har problem
Sonoff B1 Firmware Home Automation Openhab Google Home: 3 steg
Sonoff B1 Firmware Home Automation Openhab Google Home: Jag gillar verkligen Tasmota -firmware för mina Sonoff -switchar. Men a var inte riktigt nöjd med Tasmota-firmware på min Sonoff-B1. Jag lyckades inte helt integrera det i min Openhab och styra det via Google Home. Därför skrev jag mitt eget företag