{"id":6130,"date":"2019-12-19T13:28:05","date_gmt":"2019-12-19T18:28:05","guid":{"rendered":"http:\/\/www.plastibots.com\/?p=6130"},"modified":"2022-09-06T07:35:04","modified_gmt":"2022-09-06T11:35:04","slug":"basement-disco-neopixel-music-sync-with-msgeq7","status":"publish","type":"post","link":"https:\/\/www.plastibots.com\/index.php\/2019\/12\/19\/basement-disco-neopixel-music-sync-with-msgeq7\/","title":{"rendered":"Basement Disco: NeoPixel Music Sync with MSGEQ7"},"content":{"rendered":"\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Basement Disco - NeoPixel Music Sync with MSGEQ7 - Projector Screen\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/q5sUrMm6Wn0?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<div class=\"wp-block-media-text alignwide has-media-on-the-right is-stacked-on-mobile\" style=\"grid-template-columns:auto 37%\"><figure class=\"wp-block-media-text__media\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"600\" src=\"http:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/IMG_1487.jpg\" alt=\"\" class=\"wp-image-6132 size-full\" srcset=\"https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/IMG_1487.jpg 800w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/IMG_1487-300x225.jpg 300w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/IMG_1487-768x576.jpg 768w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/IMG_1487-640x480.jpg 640w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/><\/figure><div class=\"wp-block-media-text__content\">\n<p>I didn&#8217;t have a lot of time in 2019 for projects as much of it was dedicated to finishing the basement.  A year ago it was nothing more than concrete, storage and dustballs.    Took the job on myself and did everything except hanging drywall and mudding (I hate that part).  Best part of doing your own basement is you get to hack in all the bits and pieces necessary for future projects &#8211; like LED lighting &amp; Nextion displays, Blynk etc.  Also built my own man-cave to house all my electronics stuff, 3D printer, laser engraver and a custom-built fume extractor to vent the nasty stuff.  But! That&#8217;s not what this is all about&#8230;.    <\/p>\n<\/div><\/div>\n\n\n\n<p>This post is about marrying love of  music with lighting &#8211; namely NeoPixel LED strips installed behind my projector screen.  The first revision was to add mood lighting behind the screen during movies \/ entertaining. This used a variety of readily-available NeoPixel themes all tied into <a href=\"https:\/\/blynk.io\/\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\"Blynk  (opens in a new tab)\">Blynk <\/a>to allow control from my phone.  Not being satisfied with status-quo, I wanted the strips to interact with the music to add entertainment value &#8211; a party mode of sorts.  I wanted a little <em>Saturday Night Fever<\/em>  flavor but be able to gracefully have it hidden from plain sight until needed.  After recently adding a set of <a rel=\"noreferrer noopener\" aria-label=\"Nanoleaf (opens in a new tab)\" href=\"https:\/\/nanoleaf.me\/en\/\" target=\"_blank\">Nanoleaf<\/a> light panels to the basement,  I turned my focus to figuring out what I could do with the NeoPixel strips I had mounted around the projector screen as well as under the audio cabinet.   <\/p>\n\n\n\n<figure class=\"wp-block-gallery columns-3 is-cropped wp-block-gallery-1 is-layout-flex wp-block-gallery-is-layout-flex\"><ul class=\"blocks-gallery-grid\"><li class=\"blocks-gallery-item\"><figure><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"768\" src=\"http:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/mancave-1024x768.jpg\" alt=\"\" data-id=\"6164\" data-link=\"http:\/\/www.plastibots.com\/index.php\/2019\/12\/19\/basement-disco-neopixel-music-sync-with-msgeq7\/mancave\/\" class=\"wp-image-6164\" srcset=\"https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/mancave-1024x768.jpg 1024w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/mancave-300x225.jpg 300w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/mancave-768x576.jpg 768w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/mancave-640x480.jpg 640w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"blocks-gallery-item__caption\">The Workshop<\/figcaption><\/figure><\/li><li class=\"blocks-gallery-item\"><figure><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"766\" src=\"http:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/NanoLeaf-1024x766.jpg\" alt=\"\" data-id=\"6165\" data-link=\"http:\/\/www.plastibots.com\/index.php\/2019\/12\/19\/basement-disco-neopixel-music-sync-with-msgeq7\/nanoleaf\/\" class=\"wp-image-6165\" srcset=\"https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/NanoLeaf.jpg 1024w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/NanoLeaf-300x224.jpg 300w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/NanoLeaf-768x575.jpg 768w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/NanoLeaf-640x480.jpg 640w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"blocks-gallery-item__caption\">NanoLeaf Canvas<\/figcaption><\/figure><\/li><li class=\"blocks-gallery-item\"><figure><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"768\" src=\"http:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/screen-1024x768.jpg\" alt=\"\" data-id=\"6166\" data-link=\"http:\/\/www.plastibots.com\/index.php\/2019\/12\/19\/basement-disco-neopixel-music-sync-with-msgeq7\/screen\/\" class=\"wp-image-6166\" srcset=\"https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/screen-1024x768.jpg 1024w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/screen-300x225.jpg 300w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/screen-768x576.jpg 768w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/screen-640x480.jpg 640w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption class=\"blocks-gallery-item__caption\">Mounting the NeoPixel Strip <\/figcaption><\/figure><\/li><li class=\"blocks-gallery-item\"><figure><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"768\" src=\"http:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/IMG_2459-1-1024x768.jpg\" alt=\"\" data-id=\"6170\" data-link=\"http:\/\/www.plastibots.com\/index.php\/2019\/12\/19\/basement-disco-neopixel-music-sync-with-msgeq7\/img_2459-2\/\" class=\"wp-image-6170\" srcset=\"https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/IMG_2459-1-1024x768.jpg 1024w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/IMG_2459-1-300x225.jpg 300w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/IMG_2459-1-768x576.jpg 768w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/IMG_2459-1-640x480.jpg 640w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure><\/li><li class=\"blocks-gallery-item\"><figure><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"496\" src=\"http:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/Screenshot_0.png\" alt=\"\" data-id=\"6219\" data-full-url=\"http:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/Screenshot_0.png\" data-link=\"http:\/\/www.plastibots.com\/index.php\/2019\/12\/19\/basement-disco-neopixel-music-sync-with-msgeq7\/screenshot_0\/\" class=\"wp-image-6219\" srcset=\"https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/Screenshot_0.png 800w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/Screenshot_0-300x186.png 300w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/Screenshot_0-768x476.png 768w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/><\/figure><\/li><\/ul><\/figure>\n\n\n\n<div class=\"wp-block-media-text alignwide has-media-on-the-right is-stacked-on-mobile\" style=\"grid-template-columns:auto 19%\"><figure class=\"wp-block-media-text__media\"><img loading=\"lazy\" decoding=\"async\" width=\"384\" height=\"364\" src=\"http:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/s-l640-1.jpg\" alt=\"\" class=\"wp-image-6153 size-full\" srcset=\"https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/s-l640-1.jpg 384w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/s-l640-1-300x284.jpg 300w\" sizes=\"auto, (max-width: 384px) 100vw, 384px\" \/><\/figure><div class=\"wp-block-media-text__content\">\n<p>The most common way to take sound and convert it to use for lighting effects is by way of an electret mic &#8211; it essentially &#8220;listens&#8221; to the sound and converts it to analog output that can be processed to display effects using LEDs.   The issue is a mic listens and converts <strong>all<\/strong> sounds which can make for an ugly visual given all the sounds (including people speaking) are part of that result.  <\/p>\n<\/div><\/div>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<div class=\"wp-block-media-text alignwide has-media-on-the-right is-stacked-on-mobile is-vertically-aligned-top\"><figure class=\"wp-block-media-text__media\"><img loading=\"lazy\" decoding=\"async\" width=\"680\" height=\"322\" src=\"http:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/MSGEQ7.jpg\" alt=\"\" class=\"wp-image-6138 size-full\" srcset=\"https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/MSGEQ7.jpg 680w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/MSGEQ7-300x142.jpg 300w\" sizes=\"auto, (max-width: 680px) 100vw, 680px\" \/><\/figure><div class=\"wp-block-media-text__content\">\n<p>After a bit more digging I came across the <a rel=\"noreferrer noopener\" aria-label=\"MSGEQ7 (opens in a new tab)\" href=\"https:\/\/www.ebay.ca\/itm\/MSGEQ7-breakout-board-7-band-graphic-equalizer-for-audio-for-Arduino-RPi-PIC-\/301210655107\" target=\"_blank\">MSGEQ7<\/a> made by MSI.  This little chip processes an incoming audio signal direct from source and outputs 7 frequency bands that can be processed on a microcontroller to do all sorts of things. The item displayed here is a ready-made version composed of the chip and necessary components to get you up and running quickly.  For the $$ this was just easier.  Have a look at the <a rel=\"noreferrer noopener\" aria-label=\"datasheet (opens in a new tab)\" href=\"http:\/\/images.100y.com.tw\/pdf_file\/34-MSGEQ7.pdf\" target=\"_blank\">datasheet<\/a> to get a better understanding of specifics.  It reads the audio signal and processes the output into 7 bands ( <br>63Hz, 160Hz, 400Hz, 1kHz, 2.5kHz, 6.25kHz and 16kHz).<\/p>\n<\/div><\/div>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<div class=\"wp-block-media-text alignwide has-media-on-the-right is-stacked-on-mobile is-vertically-aligned-top\" style=\"grid-template-columns:auto 29%\"><figure class=\"wp-block-media-text__media\"><img loading=\"lazy\" decoding=\"async\" width=\"600\" height=\"970\" src=\"http:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/Blynk.png\" alt=\"\" class=\"wp-image-6264 size-full\" srcset=\"https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/Blynk.png 600w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/Blynk-186x300.png 186w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><\/figure><div class=\"wp-block-media-text__content\">\n<p>The Blynk app is pretty straight forward. It allows the setting of 10 different mood effects, direct control of colour (see the zebra controller), brightness control, displays the IP address of the MCU in case I want to remotely update it, and also has messaging feedback to report on the status of the device  &#8211; including when it&#8217;s sleeping (as Blynk will not work).  The Music option is what this post is all about.  It also has different LED colour patterns for this mode (see bottom). <\/p>\n<\/div><\/div>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p><span style=\"color:#ff6900\" class=\"tadv-color\"><em>Update:  I&#8217;ve since migrated this project to use an ESP32 as I wanted to reliably use the MCU&#8217;s sleep features as well as easily update the device remotely using OTA &#8211; more on this below)<\/em>.   <\/span><\/p>\n\n\n\n<div class=\"wp-block-media-text alignwide has-media-on-the-right is-stacked-on-mobile is-vertically-aligned-top\"><figure class=\"wp-block-media-text__media\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"496\" src=\"http:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/Screenshot_0.png\" alt=\"\" class=\"wp-image-6219 size-full\" srcset=\"https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/Screenshot_0.png 800w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/Screenshot_0-300x186.png 300w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/Screenshot_0-768x476.png 768w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" \/><\/figure><div class=\"wp-block-media-text__content\">\n<p class=\"has-normal-font-size\"> The first strip (216 pixels) goes all the way around the projector screen.  The second strip (79 pixels) is under the audio cabinet.   I use the Blynk app to drive various mood lighting modes for entertainment, and added in this music-mode option being discussed here.  Tip: These NeoPixels can draw a lot of current at full tilt. Having ~300 pixels @ about 60mA each at full, that&#8217;s about 18A.  I am using a 5V 10A switching power supply which will do as none of the modes will drive all LEDs at full power at once, so there&#8217;s lots of room there. <\/p>\n<\/div><\/div>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p>In the sketch, the MSGEQ7 reads the audio signal, splits it into the 7 frequency bands and passes the values onto the MCU (here&#8217;s a good <a rel=\"noreferrer noopener\" href=\"https:\/\/rheingoldheavy.com\/msgeq7-arduino-tutorial-01-getting-started\/\" target=\"_blank\">write-up<\/a> if you want to understand more).  In my case, I take 2 bands in the array and process their output to each of the 2 NeoPixel strips respectively.   Credit to Nazmul&#8217;s <a rel=\"noreferrer noopener\" href=\"https:\/\/projectxero2one.com\/flashing-rgb-leds-and-a-person-drooling\/\" target=\"_blank\">write-up<\/a> to help me understand how to make this work for my project.  <\/p>\n\n\n\n<p> Since I only want the VU Meter to show on the left and right side of the projector screen, some simple math takes care of this in the sketch (included below) .  The screen NeoPixels are tagged to the 160Hz band, with the cabinet strip tagged to the 1kHz band.  It seems to work well enough, but I want to do more testing to find the ideal frequencies to represent what looks best.   <\/p>\n\n\n\n<p>I&#8217;m also looking for options to reduce delays in the code as there&#8217;s a lot going on there and I want to make sure the LED response timing match the timing of the sound input with as little delay as possible.  It&#8217;s currently in the range of &lt; 100ms but I think there are opportunities to reduce that further.  There is also an element of sampling to eliminate noise, so it&#8217;s a balance quality vs speed.  <\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Build Instructions: ESP32 Version<\/h2>\n\n\n\n<p>I&#8217;ve now got 2 versions of this project.  Both perform similar activities.   The original version is based on a NodeMCU Mini ESP8266 (below) and is always powered and waiting for a signal input.  This works fine but there are few issues that I wanted to overcome. Namely I did not want it always powered on when I don&#8217;t use it that often, and I&#8217;m always looking for ways to conserve power.    The newer version is based on a DoIt ESP32 DevKit V1 and has additional features including a Deep Sleep feature as well as OTA Updates<\/p>\n\n\n\n<p>For this build I am using a DoIt ESP32 DevKit V1.  However, most any ESP32 will do as this project does not require many pins.   Just make sure you take note of the pins you end up using and adjust as necessary in the sketch.    The general concept is simple.  The MSGEQ7 processes the signal from my receiver into a single Analog pin on the ESP32.  The ESP takes that signal and processes it into 7 channels, but only 2 are used.  It outputs the data over 2 data lines.  It also sleeps after 60 second of inactivity and uses the 12V trigger output from the receiver to keep awake.  <s>I use a voltage divider to drop the 12V down to 3.3V for the ESP to read (HIGH or LOW)<\/s>.  Change of plan.  I decided to switch to a 4N35 Opto Isolator as I wanted to isolate the 12V trigger from my receiver completely from this circuit to avoid noise.   It uses the ESP Deep Sleep function with an Interrupt triggered when the receiver Trigger 12V out triggers the 4N35 to send a HIGH (3v3) signal out (more in the code).  This version also uses a level shifter as the ESP data pins output at 3.3V and since my NeoPixels are driven at 5V, I needed to step up the output to for the 2 data lines to match.<\/p>\n\n\n\n<p>For this version, you will need the below parts:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td>DoIt ESP32 DevKit (or similar ESP 32)<\/td><td><a href=\"https:\/\/s.click.aliexpress.com\/e\/_ACrVAF\" target=\"_blank\" rel=\"noreferrer noopener\">Single<\/a><br>or <a href=\"https:\/\/s.click.aliexpress.com\/e\/_9ICUgL\" target=\"_blank\" rel=\"noreferrer noopener\">others<\/a><\/td><td><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"130\" class=\"wp-image-6283\" style=\"width: 150px;\" src=\"http:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/Capture.jpg\" alt=\"\" srcset=\"https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/Capture.jpg 501w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/Capture-300x259.jpg 300w\" sizes=\"auto, (max-width: 150px) 100vw, 150px\" \/><\/td><\/tr><tr><td>NeoPixel Strip 5 Meter 5V<\/td><td><a rel=\"noreferrer noopener\" href=\"https:\/\/s.click.aliexpress.com\/e\/_9wUo5H\" target=\"_blank\">Here<\/a> or <a href=\"https:\/\/s.click.aliexpress.com\/e\/_9ARFMn\" target=\"_blank\" rel=\"noreferrer noopener\" title=\"here \">here <\/a>or <a aria-label=\"Here (opens in a new tab)\" rel=\"noreferrer noopener\" href=\"https:\/\/www.adafruit.com\/?q=neopixel%20strip\" target=\"_blank\">Alternate<\/a><\/td><td><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"119\" class=\"wp-image-6213\" style=\"width: 150px;\" src=\"http:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/NeoPixels.jpg\" alt=\"\" srcset=\"https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/NeoPixels.jpg 506w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/NeoPixels-300x237.jpg 300w\" sizes=\"auto, (max-width: 150px) 100vw, 150px\" \/><\/td><\/tr><tr><td>MSGEQ7 Breakout (single channel will do)<\/td><td><a href=\"https:\/\/www.ebay.ca\/itm\/MSGEQ7-breakout-board-7-band-graphic-equalizer-for-audio-for-Arduino-RPi-PIC\/301210655107?ssPageName=STRK%3AMEBIDX%3AIT&amp;_trksid=p2057872.m2749.l2649\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\"Single Channel (opens in a new tab)\">Single Channel<\/a><br><a href=\"https:\/\/www.ebay.ca\/itm\/Stereo-MSGEQ7-breakout-board-7-band-graphic-equalizer-for-Arduino-RPi-PIC\/251977940811?hash=item3aab0e3f4b:g:kQQAAOSwrklVahXO\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\"Dual Channel (opens in a new tab)\">Dual Channel<\/a><\/td><td><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"138\" class=\"wp-image-6214\" style=\"width: 150px;\" src=\"http:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/MSGEQ7_2.jpg\" alt=\"\" srcset=\"https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/MSGEQ7_2.jpg 440w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/MSGEQ7_2-300x277.jpg 300w\" sizes=\"auto, (max-width: 150px) 100vw, 150px\" \/><\/td><\/tr><tr><td>74HC125  (<a href=\"https:\/\/www.diodes.com\/assets\/Datasheets\/74HC125.pdf\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\"datasheet (opens in a new tab)\">datasheet<\/a>) or &nbsp;74AHCT125  (converts logic from 3.3V to 5V.  <\/td><td><a href=\"https:\/\/s.click.aliexpress.com\/e\/_AOKXkJ\" target=\"_blank\" rel=\"noreferrer noopener\">link<\/a>  <a aria-label=\"link (opens in a new tab)\" href=\"https:\/\/www.adafruit.com\/product\/1787\" target=\"_blank\" rel=\"noreferrer noopener\">link<\/a><\/td><td><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"131\" class=\"wp-image-6284\" style=\"width: 150px;\" src=\"http:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/Capture-1.jpg\" alt=\"\"><\/td><\/tr><tr><td>Other bits: 5V 10A switching power supply, jack, 4N35 Opto Isolator, wiring, 1000uF 10V Cap, 470, 560 and 1.7K Ohm resistors, headers, project case.<\/td><td><a href=\"https:\/\/www.banggood.com\/search\/electronics.html?p=R90804949020201412E4\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\"Source (opens in a new tab)\">Source<\/a><\/td><td><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>The wiring diagram should be self-explanatory.   Some additional info:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>MSGEQ7 VDD &gt;&gt;  5V power supply rail<\/li><li>MSGEQ7 GND &gt;&gt; GND on power supply rail<\/li><li>MSGEQ7 Reset &gt;&gt; ESP32 D32<\/li><li>MSGEQ7 Strobe &gt;&gt; ESP32 D25<\/li><li>MSGEQ7 OUT-L &gt;&gt;ESP32 D35<\/li><li>12V Trigger out (from voltage divider) &gt;&gt; ESP32 D33 (~3.3V)<\/li><li>74HC125 Pin 2 &gt;&gt; ESP32 D14<\/li><li> 74HC125 Pin 3 &gt;&gt; 470 Ohm Resistor &gt;&gt; Strip 1 Data Pin (header)<\/li><li> 74HC125 Pin 5 &gt;&gt; ESP32 D12 <\/li><li> 74HC125 Pin 7 &gt;&gt; 470 Ohm Resistor &gt;&gt; Strip 2 Data Pin (header)  <\/li><li> 74HC125 Pins 1, 4, 7 GND on power supply rail<\/li><li> 74HC125 Pin 14 &gt;&gt; 5V DC on power supply rail<\/li><li>NeoPixel Strips VCC(5V) and GND to header pins on power supply rail.<\/li><li>NeoPixel Data connectors to Strip 1 \/ Strip 2 Data headers<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-gallery columns-1 is-cropped wp-block-gallery-2 is-layout-flex wp-block-gallery-is-layout-flex\"><ul class=\"blocks-gallery-grid\"><li class=\"blocks-gallery-item\"><figure><a href=\"http:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2020\/01\/ProjectWiringESP32_bb.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"548\" src=\"http:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2020\/01\/ProjectWiringESP32_bb-1024x548.jpg\" alt=\"\" data-id=\"6257\" data-full-url=\"http:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2020\/01\/ProjectWiringESP32_bb.jpg\" data-link=\"http:\/\/www.plastibots.com\/projectwiringesp32_bb\/\" class=\"wp-image-6257\" srcset=\"https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2020\/01\/ProjectWiringESP32_bb-1024x548.jpg 1024w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2020\/01\/ProjectWiringESP32_bb-300x161.jpg 300w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2020\/01\/ProjectWiringESP32_bb-768x411.jpg 768w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2020\/01\/ProjectWiringESP32_bb.jpg 1382w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure><\/li><\/ul><\/figure>\n\n\n\n<p>Download the sketch below and load into your Arduino IDE. Ensure you have the correct libraries loaded. If not, you can use the library manager or GitHub to get them.  A lot of hard work has gone into making this project and providing this documentation.  Please consider donating a few bucks &#8211; a cup of coffee these days \ud83d\ude42  It goes right back into future projects which means more instructions! <\/p>\n\n\n\n<p>Please read my <a href=\"http:\/\/www.plastibots.com\/index.php\/disclaimer-props\/\" target=\"_blank\" rel=\"noreferrer noopener\" title=\"http:\/\/www.plastibots.com\/index.php\/disclaimer-props\/\">Disclaimer<\/a> page.  <\/p>\n\n\n\n<p><strong>Your Support is Appreciated:<\/strong> A lot of time is put into developing my projects and the publishing of videos and these build logs. If you use them for your projects, please consider a small donation. It will go to purchasing new things for future projects and help support the work I do here. You can support vai either Ko-Fi or PayPal links below. Thanks!<\/p>\n\n\n\n<center><script type=\"text\/javascript\" src=\"https:\/\/storage.ko-fi.com\/cdn\/widget\/Widget_2.js\"><\/script><script type=\"text\/javascript\">kofiwidget2.init('Support Me on Ko-fi', '#29abe0', 'Q5Q39BHIW');kofiwidget2.draw();<\/script><\/center> <br><br>\n\n\n\n<!-- Begin PayPal Donations by https:\/\/www.tipsandtricks-hq.com\/paypal-donations-widgets-plugin --> <form action=\"https:\/\/www.paypal.com\/cgi-bin\/webscr\" method=\"post\"> <div class=\"paypal-donations\"> <input type=\"hidden\" name=\"cmd\" value=\"_donations\" \/> <input type=\"hidden\" name=\"bn\" value=\"TipsandTricks_SP\" \/> <input type=\"hidden\" name=\"business\" value=\"AU2MLEMVKZY4Y\" \/> <input type=\"hidden\" name=\"item_name\" value=\"NeoPixel Music MSGEQ7 Source - Plastibots.com\" \/> <input type=\"hidden\" name=\"item_number\" value=\"www.plastibots.com\" \/> <input type=\"hidden\" name=\"rm\" value=\"0\" \/> <input type=\"hidden\" name=\"currency_code\" value=\"USD\" \/> <input type=\"image\" style=\"cursor: pointer;\" src=\"https:\/\/www.paypalobjects.com\/en_US\/i\/btn\/btn_donateCC_LG.gif\" name=\"submit\" alt=\"PayPal - The safer, easier way to pay online.\" \/> <img loading=\"lazy\" decoding=\"async\" alt=\"\" src=\"https:\/\/www.paypalobjects.com\/en_US\/i\/scr\/pixel.gif\" width=\"1\" height=\"1\" \/> <\/div> <\/form> <!-- End PayPal Donations -->\n\n\n<div class=\"sdm_download_button_box_default\"><div class=\"sdm_download_link\"><a href=\"https:\/\/www.plastibots.com\/?sdm_process_download=1&#038;download_id=6293\" class=\"sdm_download green\" title=\"Basement NeoPixel ESP32 Sketch\" target=&quot;_blank&quot;>Download Now!<\/a><\/div><\/div>\n\n\n<div style=\"height:44px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-gallery aligncenter columns-3 is-cropped wp-block-gallery-3 is-layout-flex wp-block-gallery-is-layout-flex\"><ul class=\"blocks-gallery-grid\"><li class=\"blocks-gallery-item\"><figure><a href=\"http:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2020\/01\/IMG_2568.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"768\" src=\"http:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2020\/01\/IMG_2568.jpg\" alt=\"\" data-id=\"6297\" data-link=\"http:\/\/www.plastibots.com\/index.php\/2019\/12\/19\/basement-disco-neopixel-music-sync-with-msgeq7\/img_2568\/\" class=\"wp-image-6297\" srcset=\"https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2020\/01\/IMG_2568.jpg 1024w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2020\/01\/IMG_2568-300x225.jpg 300w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2020\/01\/IMG_2568-768x576.jpg 768w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2020\/01\/IMG_2568-640x480.jpg 640w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure><\/li><li class=\"blocks-gallery-item\"><figure><a href=\"http:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2020\/01\/IMG_2569.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"768\" src=\"http:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2020\/01\/IMG_2569.jpg\" alt=\"\" data-id=\"6298\" data-link=\"http:\/\/www.plastibots.com\/index.php\/2019\/12\/19\/basement-disco-neopixel-music-sync-with-msgeq7\/img_2569\/\" class=\"wp-image-6298\" srcset=\"https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2020\/01\/IMG_2569.jpg 1024w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2020\/01\/IMG_2569-300x225.jpg 300w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2020\/01\/IMG_2569-768x576.jpg 768w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2020\/01\/IMG_2569-640x480.jpg 640w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure><\/li><li class=\"blocks-gallery-item\"><figure><a href=\"http:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2020\/01\/IMG_2570.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"768\" src=\"http:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2020\/01\/IMG_2570.jpg\" alt=\"\" data-id=\"6299\" data-link=\"http:\/\/www.plastibots.com\/index.php\/2019\/12\/19\/basement-disco-neopixel-music-sync-with-msgeq7\/img_2570\/\" class=\"wp-image-6299\" srcset=\"https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2020\/01\/IMG_2570.jpg 1024w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2020\/01\/IMG_2570-300x225.jpg 300w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2020\/01\/IMG_2570-768x576.jpg 768w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2020\/01\/IMG_2570-640x480.jpg 640w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure><\/li><li class=\"blocks-gallery-item\"><figure><a href=\"http:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2020\/01\/IMG_2571.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"784\" src=\"http:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2020\/01\/IMG_2571.jpg\" alt=\"\" data-id=\"6301\" data-full-url=\"http:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2020\/01\/IMG_2571.jpg\" data-link=\"http:\/\/www.plastibots.com\/index.php\/2019\/12\/19\/basement-disco-neopixel-music-sync-with-msgeq7\/img_2571\/\" class=\"wp-image-6301\" srcset=\"https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2020\/01\/IMG_2571.jpg 1024w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2020\/01\/IMG_2571-300x230.jpg 300w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2020\/01\/IMG_2571-768x588.jpg 768w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure><\/li><\/ul><figcaption class=\"blocks-gallery-caption\">Final Build Ready for the Project Box<\/figcaption><\/figure>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Build Instructions: ESP8266 Version<\/h2>\n\n\n\n<p>Wiring the sucker up is pretty straight forward.    I&#8217;m using a NodeMCU Mini (ESP8266) but most any micro controller will do (read up on NeoPixels first as there is some processing power needed).  I used an ESP8266 as I wanted to enable control via my phone (Blynk app).  Power is supplied by a 5V &#8211; 10A switching power supply (don&#8217;t buy cheap crap if you care for your NeoPixels!), and feeds into the NodeMCU, both the LED NeoPixel strips and the MSGEQ7 breakout.  Connections are as shown above. That&#8217;s a 10V 1000uF Cap on the +\/- lines of the power supply to protect the strips from surges.  Ditto for the 2 resistors shown.  <\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td>NodeMCU Mini ESP8266<\/td><td><a rel=\"noreferrer noopener\" aria-label=\"Single  (opens in a new tab)\" href=\"https:\/\/www.banggood.com\/Mini-NodeMCU-ESP8266-WIFI-Development-Board-Based-On-ESP-12F-p-1054209.html?p=R90804949020201412E4\" target=\"_blank\">Single<\/a><br>or <a rel=\"noreferrer noopener\" aria-label=\"3 Pack (opens in a new tab)\" href=\"https:\/\/www.banggood.com\/3Pcs-Mini-NodeMCU-ESP8266-WIFI-Development-Board-Based-On-ESP-12F-p-1058306.html?p=R90804949020201412E4\" target=\"_blank\">3 Pack<\/a><\/td><td><img loading=\"lazy\" decoding=\"async\" width=\"114\" height=\"121\" class=\"wp-image-6212\" style=\"width: 114px;\" src=\"http:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/NodeMCU.jpg\" alt=\"\"><\/td><\/tr><tr><td>NeoPixel Strip 5 Meter 5V<\/td><td><a rel=\"noreferrer noopener\" aria-label=\"Here (opens in a new tab)\" href=\"https:\/\/www.banggood.com\/5M-45W-150SMD-WS2812B-LED-RGB-Colorful-Strip-Light-Waterproof-IP65-WhiteBlack-PCB-DC5V-p-1035640.html?p=R90804949020201412E4\" target=\"_blank\">Here<\/a> or <a rel=\"noreferrer noopener\" aria-label=\"Here (opens in a new tab)\" href=\"https:\/\/www.adafruit.com\/?q=neopixel%20strip\" target=\"_blank\">Alternate<\/a><\/td><td><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"119\" class=\"wp-image-6213\" style=\"width: 150px;\" src=\"http:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/NeoPixels.jpg\" alt=\"\" srcset=\"https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/NeoPixels.jpg 506w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/NeoPixels-300x237.jpg 300w\" sizes=\"auto, (max-width: 150px) 100vw, 150px\" \/><\/td><\/tr><tr><td>MSGEQ7 Breakout (single channel will do)<\/td><td><a href=\"https:\/\/www.ebay.ca\/itm\/MSGEQ7-breakout-board-7-band-graphic-equalizer-for-audio-for-Arduino-RPi-PIC\/301210655107?ssPageName=STRK%3AMEBIDX%3AIT&amp;_trksid=p2057872.m2749.l2649\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\"Single Channel (opens in a new tab)\">Single Channel<\/a><br><a href=\"https:\/\/www.ebay.ca\/itm\/Stereo-MSGEQ7-breakout-board-7-band-graphic-equalizer-for-Arduino-RPi-PIC\/251977940811?hash=item3aab0e3f4b:g:kQQAAOSwrklVahXO\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\"Dual Channel (opens in a new tab)\">Dual Channel<\/a><\/td><td><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"138\" class=\"wp-image-6214\" style=\"width: 150px;\" src=\"http:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/MSGEQ7_2.jpg\" alt=\"\" srcset=\"https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/MSGEQ7_2.jpg 440w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/MSGEQ7_2-300x277.jpg 300w\" sizes=\"auto, (max-width: 150px) 100vw, 150px\" \/><\/td><\/tr><tr><td>Other bits: 5V power supply, jack, cap, resistors, wiring, 1000uF Cap, 470Ohm resistors, headers.<\/td><td><a href=\"https:\/\/www.banggood.com\/search\/electronics.html?p=R90804949020201412E4\" target=\"_blank\" rel=\"noreferrer noopener\" aria-label=\"Source (opens in a new tab)\">Source<\/a><\/td><td><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"500\" src=\"http:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/ProjectWiring_bb-2-1024x500.png\" alt=\"\" class=\"wp-image-6222\" srcset=\"https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/ProjectWiring_bb-2-1024x500.png 1024w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/ProjectWiring_bb-2-300x146.png 300w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/ProjectWiring_bb-2-768x375.png 768w, https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/ProjectWiring_bb-2.png 1053w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>My Yamaha RX-A2080 receiver feeds a signal out via Zone 2 RCA out to a 3.5mm stereo audio cable and into the MSGEQ7.  The below sketch has a lot of bits in it as it covers off the MSGEQ7 music reactive code as well as the Blynk integration with all the other patterns. It&#8217;s pretty easy to discover the bits that drive the music piece though.  <\/p>\n\n\n\n<p>As I delved into researching what could be done with the MSGEQ7, I wanted to give a shout out to <a rel=\"noreferrer noopener\" aria-label=\"Nazmul  (opens in a new tab)\" href=\"https:\/\/projectxero2one.com\/flashing-rgb-leds-and-a-person-drooling\/\" target=\"_blank\">Nazmul <\/a>and <a rel=\"noreferrer noopener\" aria-label=\"Max (opens in a new tab)\" href=\"https:\/\/www.eeweb.com\/profile\/max-maxfield\/articles\/handling-noise-when-working-with-the-msgeq7-audio-spectrum-analyzer\" target=\"_blank\">Max<\/a> for their samples and write-ups that help me understand how to process the output of the MSGEQ7 and some of the things that could be done with this versatile chip and an audio signal.  I am also truly amazed with all the samples out there and other makers doing crafty things with this chip, some NeoPixels and an audio output.  It blows away the old days of a graphic EQ on a ghetto blaster (I&#8217;m giving away my age here folks \ud83d\ude09<\/p>\n\n\n\n<p>Ideas that I&#8217;m working on to enhance this:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Sleep mode: Since the unit would need to be off for the most part, I&#8217;m going to use the ESP Sleep Mode.   My Yamaha receiver has a 12V trigger out port that I can use to trigger the ESP to wake up and start the routine.<\/li><li>Since I have more of the screen real estate LEDs unused, I&#8217;m going to see what I can do to represent some or all of the remaining MSGEQ7 frequency bands. <\/li><\/ul>\n\n\n\n<p>If you want to build it yourself, here are the key components for this project:<\/p>\n\n\n\n<p>You can download the Arduino sketch below.  Please be sure to give credit where due. Also do not remove any of the reference\/credit code at the top.  Rename the file with a .ino extension to get started.  You will also have to re-create the Blynk project yourself if you want to remote control the lights. Else, you could easily hack in a push button to the controller and have it scroll through the different modes.    A lot of hard work has gone into making this project and providing this documentation.  Please consider donating a few bucks &#8211; a cup of coffee these days \ud83d\ude42  It goes right back into future projects which means more instructions!  <\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&#091;paypal-donation purpose=&quot;NeoPixel Music MSGEQ7 Source - Plastibots.com&quot; reference=&quot;Plastibots.com&quot;]<\/code><\/pre>\n\n\n<div class=\"sdm_download_button_box_default\"><div class=\"sdm_download_link\"><a href=\"https:\/\/www.plastibots.com\/?sdm_process_download=1&#038;download_id=6230\" class=\"sdm_download green\" title=\"NeoPixel Music Sketch\" target=&quot;_blank&quot;>Download Sketch<\/a><\/div><\/div>","protected":false},"excerpt":{"rendered":"<p>I didn&#8217;t have a lot of time in 2019 for projects as much of it was dedicated to finishing the basement. A year ago it was nothing more than concrete, storage and dustballs. Took the job on myself and did everything except hanging drywall and mudding (I hate that part). Best part of doing your own basement is you get to hack in all the bits and pieces necessary for future projects &#8211; like LED &hellip; <a href=\"https:\/\/www.plastibots.com\/index.php\/2019\/12\/19\/basement-disco-neopixel-music-sync-with-msgeq7\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":4,"featured_media":6170,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[57,168,189,119],"tags":[195,66,196],"class_list":["post-6130","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-electronics","category-esp8266","category-esp8266-2","category-iot","tag-blynk","tag-led","tag-neopixel","has_thumb"],"aioseo_notices":[],"jetpack_featured_media_url":"https:\/\/www.plastibots.com\/wordpress\/wp-content\/uploads\/2019\/12\/IMG_2459-1.jpg","jetpack_shortlink":"https:\/\/wp.me\/pK41j-1AS","jetpack_sharing_enabled":true,"post_mailing_queue_ids":[],"_links":{"self":[{"href":"https:\/\/www.plastibots.com\/index.php\/wp-json\/wp\/v2\/posts\/6130","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.plastibots.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.plastibots.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.plastibots.com\/index.php\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/www.plastibots.com\/index.php\/wp-json\/wp\/v2\/comments?post=6130"}],"version-history":[{"count":4,"href":"https:\/\/www.plastibots.com\/index.php\/wp-json\/wp\/v2\/posts\/6130\/revisions"}],"predecessor-version":[{"id":7455,"href":"https:\/\/www.plastibots.com\/index.php\/wp-json\/wp\/v2\/posts\/6130\/revisions\/7455"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.plastibots.com\/index.php\/wp-json\/wp\/v2\/media\/6170"}],"wp:attachment":[{"href":"https:\/\/www.plastibots.com\/index.php\/wp-json\/wp\/v2\/media?parent=6130"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.plastibots.com\/index.php\/wp-json\/wp\/v2\/categories?post=6130"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.plastibots.com\/index.php\/wp-json\/wp\/v2\/tags?post=6130"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}