{"id":11543,"date":"2016-07-15T21:23:40","date_gmt":"2016-07-16T01:23:40","guid":{"rendered":"http:\/\/embedded-lab.com\/blog\/?p=11543"},"modified":"2016-07-15T21:23:40","modified_gmt":"2016-07-16T01:23:40","slug":"esp8266-diy-baby-monitor","status":"publish","type":"post","link":"https:\/\/embedded-lab.com\/blog\/esp8266-diy-baby-monitor\/","title":{"rendered":"DIY baby monitor that streams audio over wifi using ESP8266"},"content":{"rendered":"<p>This <strong><a href=\"https:\/\/perso.aquilenet.fr\/~sven337\/english\/2016\/07\/14\/DIY-wifi-baby-monitor.html\" target=\"_blank\">DIY baby monitor<\/a><\/strong> built by Sven337 uses two ESP8266 NodeMCU modules to send audio over wifi. The transmitter part consists of an inexpensive electret microphone to capture the audio in the room. The audio signal is amplified and converted to 12-bit digital samples using Microchip&#8217;s\u00a0<strong><a href=\"http:\/\/ww1.microchip.com\/downloads\/en\/DeviceDoc\/21290F.pdf\">MCP3201<\/a>\u00a0<\/strong>SPI ADC chip. The ESP8266 then reads the ADC samples through an SPI interface. The digital sound data is then sent over wifi using UDP packets to the receiving side ESP8266, where the analog audio is reconstructed using an <strong><a href=\"http:\/\/ww1.microchip.com\/downloads\/en\/DeviceDoc\/22039d.pdf\">MCP4725<\/a><\/strong> 12-bit I2C DAC device followed by an amplifier.<\/p>\n<div id=\"attachment_11544\" style=\"width: 590px\" class=\"wp-caption aligncenter\"><a href=\"http:\/\/embedded-lab.com\/blog\/wp-content\/uploads\/2016\/07\/receiver_back.jpg\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-11544\" class=\"size-medium wp-image-11544\" src=\"http:\/\/embedded-lab.com\/blog\/wp-content\/uploads\/2016\/07\/receiver_back-580x461.jpg\" alt=\"ESP8266 DIY baby monitor\" width=\"580\" height=\"461\" srcset=\"https:\/\/embedded-lab.com\/blog\/wp-content\/uploads\/2016\/07\/receiver_back-580x461.jpg 580w, https:\/\/embedded-lab.com\/blog\/wp-content\/uploads\/2016\/07\/receiver_back.jpg 585w\" sizes=\"auto, (max-width: 580px) 100vw, 580px\" \/><\/a><p id=\"caption-attachment-11544\" class=\"wp-caption-text\">ESP8266 DIY baby monitor<\/p><\/div>\n<blockquote><p>The ADC needs to be audio capable (able to sample at 20kHz or more), cheap, and preferably using <strong>SPI<\/strong> (because the ESP8266 has a <strong>hardware SPI<\/strong> interface, but no <strong>hardware I2C<\/strong> interface). I picked the 12-bit <strong><a href=\"http:\/\/ww1.microchip.com\/downloads\/en\/DeviceDoc\/21290F.pdf\">MCP3201<\/a><\/strong>, and I am very happy with it. I went for the DIP package, if I had to do it again I would probably buy it in a <strong>surface mount package<\/strong>. It\u2019s not usually<em>much<\/em> harder to solder and occupies less physical space &#8211; which in many projects, including this one, can be a real advantage. The <strong>MCP3201<\/strong> is single channel. More channels didn\u2019t cost all that much more, but required more pins, and I couldn\u2019t afford that on the 5&#215;5 cm board the project had to fit on.<\/p><\/blockquote>\n<p>[via <a href=\"http:\/\/hackaday.com\/2016\/07\/15\/baby-monitor-rebuild-is-also-esp8266-audio-streaming-how-to\/\" target=\"_blank\">Hackaday<\/a>]<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This DIY baby monitor built by Sven337 uses two ESP8266 NodeMCU modules to send audio over wifi. The transmitter part consists of an inexpensive electret microphone to capture the audio in the room. The audio signal is amplified and converted to 12-bit digital samples using Microchip&#8217;s\u00a0MCP3201\u00a0SPI ADC chip. The ESP8266 then reads the ADC samples through an SPI interface. The digital sound data is then sent over wifi using UDP packets to the receiving side ESP8266, where the analog audio is reconstructed using an MCP4725 12-bit I2C DAC device followed by an amplifier. The ADC needs to be audio capable<\/p>\n","protected":false},"author":1,"featured_media":11544,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1044],"tags":[1427,1426,1046],"class_list":["post-11543","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-esp8266","tag-audio-streaming-over-wifi","tag-esp8266-diy-baby-monitor","tag-esp8266-project"],"_links":{"self":[{"href":"https:\/\/embedded-lab.com\/blog\/wp-json\/wp\/v2\/posts\/11543","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/embedded-lab.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/embedded-lab.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/embedded-lab.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/embedded-lab.com\/blog\/wp-json\/wp\/v2\/comments?post=11543"}],"version-history":[{"count":2,"href":"https:\/\/embedded-lab.com\/blog\/wp-json\/wp\/v2\/posts\/11543\/revisions"}],"predecessor-version":[{"id":11546,"href":"https:\/\/embedded-lab.com\/blog\/wp-json\/wp\/v2\/posts\/11543\/revisions\/11546"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/embedded-lab.com\/blog\/wp-json\/wp\/v2\/media\/11544"}],"wp:attachment":[{"href":"https:\/\/embedded-lab.com\/blog\/wp-json\/wp\/v2\/media?parent=11543"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/embedded-lab.com\/blog\/wp-json\/wp\/v2\/categories?post=11543"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/embedded-lab.com\/blog\/wp-json\/wp\/v2\/tags?post=11543"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}