{"id":19973,"date":"2016-04-14T09:55:56","date_gmt":"2016-04-14T09:55:56","guid":{"rendered":"http:\/\/randomnerdtutorials.com\/?p=19973"},"modified":"2019-10-04T10:12:53","modified_gmt":"2019-10-04T10:12:53","slug":"esp8266-controlled-with-android-app-mit-app-inventor","status":"publish","type":"post","link":"https:\/\/randomnerdtutorials.com\/esp8266-controlled-with-android-app-mit-app-inventor\/","title":{"rendered":"ESP8266 Controlled with Android App (MIT App Inventor)"},"content":{"rendered":"<p>In this project, you\u2019re going to build an Android app using\u00a0the MIT App Inventor software that allows you to control the\u00a0ESP8266 GPIOs.<\/p>\n<h2>First, watch the video demonstration<\/h2>\n<p style=\"text-align:center\"><iframe width=\"720\" height=\"405\" src=\"https:\/\/www.youtube.com\/embed\/Yo6nFHaTUGI?rel=0\" frameborder=\"0\" allowfullscreen><\/iframe><\/p>\n<p><strong>To\u00a0learn more about the ESP8266 use the\u00a0following tutorials as a reference:<\/strong><\/p>\n<ul>\n<li><a href=\"https:\/\/randomnerdtutorials.com\/getting-started-with-esp8266-wifi-transceiver-review\/\" target=\"_blank\" rel=\"noopener noreferrer\">Getting started with the ESP8266<\/a><\/li>\n<li><a href=\"https:\/\/randomnerdtutorials.com\/esp8266-web-server\/\">ESP8266 web server with NodeMCU<\/a><\/li>\n<li><a href=\"https:\/\/randomnerdtutorials.com\/flashing-nodemcu-firmware-on-the-esp8266-using-windows\/\">Flashing NodeMCU firmware<\/a><\/li>\n<li><a href=\"https:\/\/randomnerdtutorials.com\/esp8266-troubleshooting-guide\/\">ESP8266 troubleshooting guide<\/a><\/li>\n<\/ul>\n<p>If you like the ESP and you want to do more projects\u00a0you can download\u00a0my eBook <a href=\"https:\/\/randomnerdtutorials.com\/home-automation-using-esp8266\/\" target=\"_blank\" rel=\"noopener noreferrer\">Home Automation using ESP8266 here<\/a>.<\/p>\n<p><strong>Let\u2019s get started!<\/strong><\/p>\n<h2>Parts List<\/h2>\n<p>Here\u2019s the hardware that you need to complete\u00a0this project:<\/p>\n<ul>\n<li><a href=\"https:\/\/makeradvisor.com\/tools\/esp-01-wi-fi-board\/\" target=\"_blank\" rel=\"noopener noreferrer\">1x\u00a0ESP8266<\/a> -read <a href=\"https:\/\/makeradvisor.com\/best-esp8266-wi-fi-development-board\/\" target=\"_blank\" rel=\"noopener noreferrer\">Best ESP8266 Wi-Fi Developmento Boards<\/a><\/li>\n<li><a href=\"https:\/\/makeradvisor.com\/tools\/ftdi-programmer-board\/\" target=\"_blank\" rel=\"noopener noreferrer\">1x\u00a0FTDI programmer\u00a0<\/a><\/li>\n<li><a href=\"https:\/\/makeradvisor.com\/tools\/3mm-5mm-leds-kit-storage-box\/\" target=\"_blank\" rel=\"noopener noreferrer\">2x LEDs<\/a><\/li>\n<li><a href=\"https:\/\/makeradvisor.com\/tools\/resistors-kits\/\" target=\"_blank\" rel=\"noopener noreferrer\">2x 220\u03a9 Resistors<\/a><\/li>\n<li><a href=\"https:\/\/makeradvisor.com\/tools\/mb-102-solderless-breadboard-830-points\/\" target=\"_blank\" rel=\"noopener noreferrer\">1x Breadboard<\/a><\/li>\n<li>1x Android Phone &#8211; example <a href=\"https:\/\/makeradvisor.com\/oneplus-5-review-best-value-smartphone\/\" target=\"_blank\" rel=\"noopener noreferrer\">OnePlus 5 (read review)<\/a><\/li>\n<\/ul>\n<p>You can use the preceding links or go directly to <a href=\"https:\/\/makeradvisor.com\/tools\/?utm_source=rnt&utm_medium=post&utm_campaign=post\" target=\"_blank\">MakerAdvisor.com\/tools<\/a> to find all the parts for your projects at the best price!<\/p><p style=\"text-align:center;\"><a href=\"https:\/\/makeradvisor.com\/tools\/?utm_source=rnt&utm_medium=post&utm_campaign=post\" target=\"_blank\"><img data-recalc-dims=\"1\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/randomnerdtutorials.com\/wp-content\/uploads\/2017\/10\/header-200.png?w=1200&#038;quality=100&#038;strip=all&#038;ssl=1\"><\/a><\/p>\n<figure id=\"attachment_4815\"><\/figure>\n<h2>Flashing Your ESP with NodeMCU<\/h2>\n<p>In this tutorial we are going to use the NodeMCU firmware.\u00a0You have to\u00a0<a href=\"https:\/\/randomnerdtutorials.com\/flashing-nodemcu-firmware-on-the-esp8266-using-windows\/\" target=\"_blank\" rel=\"noopener noreferrer\">flash your ESP with NodeMCU firmare<\/a>.<\/p>\n<h2>Downloading ESPlorer IDE<\/h2>\n<p>I recommend using the ESPlorer IDE which is a program\u00a0created by 4refr0nt\u00a0to send commands to your\u00a0ESP8266.<\/p>\n<p>Follow these instructions to download and install ESPlorer IDE:<\/p>\n<ol>\n<li><a href=\"http:\/\/esp8266.ru\/esplorer\/#tutorials\" target=\"_blank\" rel=\"noopener noreferrer\">Click here<\/a> to download\u00a0ESPlorer<\/li>\n<li>Unzip that folder<\/li>\n<li>Go to the main\u00a0folder<\/li>\n<li>Run &#8220;<strong>ESPlorer.jar&#8221;<\/strong> file<\/li>\n<li>Open the ESPlorer IDE<\/li>\n<\/ol>\n<p><img data-recalc-dims=\"1\" fetchpriority=\"high\" decoding=\"async\" class=\"aligncenter size-full wp-image-5125\" src=\"https:\/\/i0.wp.com\/randomnerdtutorials.com\/wp-content\/uploads\/2015\/02\/esplorer-start.png?resize=802%2C598&#038;quality=100&#038;strip=all&#038;ssl=1\" alt=\"\" width=\"802\" height=\"598\" srcset=\"https:\/\/i0.wp.com\/randomnerdtutorials.com\/wp-content\/uploads\/2015\/02\/esplorer-start.png?w=802&amp;quality=100&amp;strip=all&amp;ssl=1 802w, https:\/\/i0.wp.com\/randomnerdtutorials.com\/wp-content\/uploads\/2015\/02\/esplorer-start.png?resize=300%2C224&amp;quality=100&amp;strip=all&amp;ssl=1 300w\" sizes=\"(max-width: 802px) 100vw, 802px\" \/><\/p>\n<h2>Schematics (3.3V FTDI\u00a0Programmer)<\/h2>\n<p>The schematics for this project are very straight forward. You only need to establish a serial communication between your FTDI programmer and your ESP8266. You can buy one <a href=\"http:\/\/ebay.to\/1EQQWjA\" target=\"_blank\" rel=\"noopener noreferrer\">FTDI programmer on eBay<\/a>.<\/p>\n<p><img data-recalc-dims=\"1\" decoding=\"async\" class=\"aligncenter size-full wp-image-4814\" src=\"https:\/\/i0.wp.com\/randomnerdtutorials.com\/wp-content\/uploads\/2015\/01\/esp8266_pinout_h-569x236.png?resize=569%2C236&#038;quality=100&#038;strip=all&#038;ssl=1\" alt=\"\" width=\"569\" height=\"236\" srcset=\"https:\/\/i0.wp.com\/randomnerdtutorials.com\/wp-content\/uploads\/2015\/01\/esp8266_pinout_h-569x236.png?resize=569%2C236&amp;quality=100&amp;strip=all&amp;ssl=1 569w, https:\/\/i0.wp.com\/randomnerdtutorials.com\/wp-content\/uploads\/2015\/01\/esp8266_pinout_h-569x236.png?resize=300%2C124&amp;quality=100&amp;strip=all&amp;ssl=1 300w\" sizes=\"(max-width: 569px) 100vw, 569px\" \/>Wiring:<\/p>\n<ul>\n<li>RX -&gt; TX<\/li>\n<li>TX -&gt; RX<\/li>\n<li>CH_PD -&gt; 3.3V<\/li>\n<li>VCC -&gt; 3.3V<\/li>\n<li>GND -&gt; GND<\/li>\n<\/ul>\n<p><img data-recalc-dims=\"1\" decoding=\"async\" class=\"aligncenter size-full wp-image-5193\" src=\"https:\/\/i0.wp.com\/randomnerdtutorials.com\/wp-content\/uploads\/2015\/03\/ESP-Bitcoin-price_bb.png?resize=759%2C279&#038;quality=100&#038;strip=all&#038;ssl=1\" alt=\"\" width=\"759\" height=\"279\" srcset=\"https:\/\/i0.wp.com\/randomnerdtutorials.com\/wp-content\/uploads\/2015\/03\/ESP-Bitcoin-price_bb.png?w=759&amp;quality=100&amp;strip=all&amp;ssl=1 759w, https:\/\/i0.wp.com\/randomnerdtutorials.com\/wp-content\/uploads\/2015\/03\/ESP-Bitcoin-price_bb.png?resize=300%2C110&amp;quality=100&amp;strip=all&amp;ssl=1 300w\" sizes=\"(max-width: 759px) 100vw, 759px\" \/><\/p>\n<h2>Uploading Code<\/h2>\n<p>You should see a window similar to the preceding Figure, follow these instructions to upload a Lua file:<\/p>\n<ol>\n<li>Connect your FTDI programmer to your computer<\/li>\n<li>Select your FTDI programmer <strong>port<\/strong><\/li>\n<li>Press\u00a0<strong>Open\/Close<\/strong><\/li>\n<li>Select <strong>NodeMCU+MicroPtyhon tab<\/strong><\/li>\n<li>Create a new file called <strong>init.lua<\/strong><\/li>\n<li>Press <strong>Save to ESP<\/strong><\/li>\n<\/ol>\n<p>Everything that you need to worry about or change is highlighted in red box.<\/p>\n<p><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-5126\" src=\"https:\/\/i0.wp.com\/randomnerdtutorials.com\/wp-content\/uploads\/2015\/02\/esplorer_tab.png?resize=899%2C650&#038;quality=100&#038;strip=all&#038;ssl=1\" alt=\"\" width=\"899\" height=\"650\" srcset=\"https:\/\/i0.wp.com\/randomnerdtutorials.com\/wp-content\/uploads\/2015\/02\/esplorer_tab.png?w=899&amp;quality=100&amp;strip=all&amp;ssl=1 899w, https:\/\/i0.wp.com\/randomnerdtutorials.com\/wp-content\/uploads\/2015\/02\/esplorer_tab.png?resize=300%2C217&amp;quality=100&amp;strip=all&amp;ssl=1 300w\" sizes=\"(max-width: 899px) 100vw, 899px\" \/><\/p>\n<h2>Code<\/h2>\n<p>Upload the following code into your ESP8266 using the preceding software. Your file should be named \u201c<strong>init.lua<\/strong>\u201c.<\/p>\n<p><strong>Don\u2019t forget to add your network name (SSID) and password to the script\u00a0below.<\/strong><br \/>\n<pre style=\"max-height: 40em; margin-bottom: 20px;\"><code class=\"language-c\">-- Rui Santos\n-- Complete project details at http:\/\/randomnerdtutorials.com\n\nwifi.setmode(wifi.STATION)\nwifi.sta.config(&quot;YOUR_NETWORK_NAME&quot;,&quot;YOUR_NETWORK_PASSWORD&quot;)\nprint(wifi.sta.getip())\nled1 = 3\nled2 = 4\ngpio.mode(led1, gpio.OUTPUT)\ngpio.mode(led2, gpio.OUTPUT)\nsrv=net.createServer(net.TCP)\nsrv:listen(80,function(conn)\n    conn:on(&quot;receive&quot;, function(client,request)\n        local buf = &quot;&quot;;\n        buf = buf..&quot;HTTP\/1.1 200 OK\\n\\n&quot;\n        local _, _, method, path, vars = string.find(request, &quot;([A-Z]+) (.+)?(.+) HTTP&quot;);\n        if(method == nil)then\n            _, _, method, path = string.find(request, &quot;([A-Z]+) (.+) HTTP&quot;);\n        end\n        local _GET = {}\n        if (vars ~= nil)then\n            for k, v in string.gmatch(vars, &quot;(%w+)=(%w+)&amp;*&quot;) do\n                _GET[k] = v\n            end\n        end\n        \n        if(_GET.pin == &quot;ON1&quot;)then\n              gpio.write(led1, gpio.HIGH);\n        elseif(_GET.pin == &quot;OFF1&quot;)then\n              gpio.write(led1, gpio.LOW);\n        elseif(_GET.pin == &quot;ON2&quot;)then\n              gpio.write(led2, gpio.HIGH);\n        elseif(_GET.pin == &quot;OFF2&quot;)then\n              gpio.write(led2, gpio.LOW);\n        end\n        client:send(buf);\n        client:close();\n        collectgarbage();\n    end)\nend)\n<\/code><\/pre>\n\t<p style=\"text-align:center\"><a class=\"rntwhite\" href=\"https:\/\/github.com\/RuiSantosdotme\/Random-Nerd-Tutorials\/raw\/master\/Projects\/ESP8266_Controller.lua\" target=\"_blank\">View raw code<\/a><\/p><\/p>\n<h2>Schematics<\/h2>\n<p>Now follow these schematics to create the\u00a0circuit that\u00a0controls two LEDs.<\/p>\n<p><a href=\"https:\/\/i0.wp.com\/randomnerdtutorials.com\/wp-content\/uploads\/2015\/02\/ESP-web-server_bb.png?quality=100&#038;strip=all&#038;ssl=1\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-5132\" src=\"https:\/\/i0.wp.com\/randomnerdtutorials.com\/wp-content\/uploads\/2015\/02\/ESP-web-server_bb.png?resize=425%2C464&#038;quality=100&#038;strip=all&#038;ssl=1\" alt=\"\" width=\"425\" height=\"464\" srcset=\"https:\/\/i0.wp.com\/randomnerdtutorials.com\/wp-content\/uploads\/2015\/02\/ESP-web-server_bb.png?w=691&amp;quality=100&amp;strip=all&amp;ssl=1 691w, https:\/\/i0.wp.com\/randomnerdtutorials.com\/wp-content\/uploads\/2015\/02\/ESP-web-server_bb.png?resize=275%2C300&amp;quality=100&amp;strip=all&amp;ssl=1 275w\" sizes=\"(max-width: 425px) 100vw, 425px\" \/><\/a><\/p>\n<h2>Your ESP IP Address<\/h2>\n<p>When your ESP8266 restarts, it prints in your serial monitor\u00a0the ESP IP address. Save that IP address, because you&#8217;ll need it later.<\/p>\n<p>In my case, the\u00a0ESP IP address is <strong>192.168.1.95<\/strong>. If you experience problems seeing your IP <a href=\"https:\/\/randomnerdtutorials.com\/esp8266-troubleshooting-guide\/\" target=\"_blank\" rel=\"noopener noreferrer\">read this troubleshooting guide<\/a>.<\/p>\n<h2>Creating the Android App with MIT App Inventor<\/h2>\n<p>MIT App Inventor is a\u00a0drag-and-drop software that allows you to create\u00a0a basic, but fully functional Android app within an hour or less.<\/p>\n<p>Here&#8217;s how to edit the ESP8266 Controller app:<\/p>\n<ol>\n<li><a href=\"https:\/\/github.com\/RuiSantosdotme\/arduino-mit-app-inventor\/blob\/master\/Code\/Project_9_Control_ESP8266_Outputs.aia?raw=true\" target=\"_blank\" rel=\"noopener noreferrer\">Click here to download the .aia file<\/a><\/li>\n<li>Unzip the folder<\/li>\n<li>Go to <a href=\"http:\/\/appinventor.mit.edu\/explore\/\" target=\"_blank\" rel=\"noopener noreferrer\">MIT App Inventor<\/a><\/li>\n<li>Click the &#8220;Create Apps&#8221; button on the top right corner<\/li>\n<li>Go to the &#8220;Projects&#8221; tab and select &#8220;Import project (.aia)&#8221;<\/li>\n<\/ol>\n<p><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-19993\" src=\"https:\/\/i0.wp.com\/randomnerdtutorials.com\/wp-content\/uploads\/2016\/04\/aia-file-import.png?resize=526%2C254&#038;quality=100&#038;strip=all&#038;ssl=1\" alt=\"aia file import\" width=\"526\" height=\"254\" srcset=\"https:\/\/i0.wp.com\/randomnerdtutorials.com\/wp-content\/uploads\/2016\/04\/aia-file-import.png?w=526&amp;quality=100&amp;strip=all&amp;ssl=1 526w, https:\/\/i0.wp.com\/randomnerdtutorials.com\/wp-content\/uploads\/2016\/04\/aia-file-import.png?resize=300%2C145&amp;quality=100&amp;strip=all&amp;ssl=1 300w\" sizes=\"(max-width: 526px) 100vw, 526px\" \/><\/p>\n<p>After importing the .aia file, you&#8217;ll be able to edit the app and\u00a0see how the app was built.<\/p>\n<h3>Designer<\/h3>\n<p>The designer tab is where you can edit how the app looks. Feel free to change the text, change the colors, add buttons or add more features.<\/p>\n<p><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-19974 size-full\" src=\"https:\/\/i0.wp.com\/randomnerdtutorials.com\/wp-content\/uploads\/2016\/04\/app-designed.jpg?resize=345%2C514&#038;quality=100&#038;strip=all&#038;ssl=1\" alt=\"app designed\" width=\"345\" height=\"514\" srcset=\"https:\/\/i0.wp.com\/randomnerdtutorials.com\/wp-content\/uploads\/2016\/04\/app-designed.jpg?w=345&amp;quality=100&amp;strip=all&amp;ssl=1 345w, https:\/\/i0.wp.com\/randomnerdtutorials.com\/wp-content\/uploads\/2016\/04\/app-designed.jpg?resize=201%2C300&amp;quality=100&amp;strip=all&amp;ssl=1 201w\" sizes=\"(max-width: 345px) 100vw, 345px\" \/><\/p>\n<h3>Blocks<\/h3>\n<p>The blocks section is where you can add what each button does and add logic\u00a0to your app.<\/p>\n<figure id=\"attachment_19975\" aria-describedby=\"caption-attachment-19975\" style=\"width: 545px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/i0.wp.com\/randomnerdtutorials.com\/wp-content\/uploads\/2016\/04\/app-inventor-blocks.jpg?quality=100&#038;strip=all&#038;ssl=1\" target=\"_blank\" rel=\"noopener noreferrer\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" class=\"wp-image-19975\" src=\"https:\/\/i0.wp.com\/randomnerdtutorials.com\/wp-content\/uploads\/2016\/04\/app-inventor-blocks.jpg?resize=555%2C407&#038;quality=100&#038;strip=all&#038;ssl=1\" alt=\"app inventor blocks\" width=\"555\" height=\"407\" srcset=\"https:\/\/i0.wp.com\/randomnerdtutorials.com\/wp-content\/uploads\/2016\/04\/app-inventor-blocks.jpg?w=1055&amp;quality=100&amp;strip=all&amp;ssl=1 1055w, https:\/\/i0.wp.com\/randomnerdtutorials.com\/wp-content\/uploads\/2016\/04\/app-inventor-blocks.jpg?resize=300%2C220&amp;quality=100&amp;strip=all&amp;ssl=1 300w, https:\/\/i0.wp.com\/randomnerdtutorials.com\/wp-content\/uploads\/2016\/04\/app-inventor-blocks.jpg?resize=768%2C563&amp;quality=100&amp;strip=all&amp;ssl=1 768w, https:\/\/i0.wp.com\/randomnerdtutorials.com\/wp-content\/uploads\/2016\/04\/app-inventor-blocks.jpg?resize=1024%2C750&amp;quality=100&amp;strip=all&amp;ssl=1 1024w\" sizes=\"(max-width: 555px) 100vw, 555px\" \/><\/a><figcaption id=\"caption-attachment-19975\" class=\"wp-caption-text\">Click the image above to enlarge the figure<\/figcaption><\/figure>\n<p>After finishing editing the app\u00a0you can click the &#8220;Build&#8221; app tab and install the .apk file\u00a0in your Android. \u00a0I personally recommend that you first upload the app provided below to ensure that everything works as expected (later you can edit the app).<\/p>\n<h2>Installing the Android App<\/h2>\n<p>Follow these instructions to install the default app that I&#8217;ve created:<\/p>\n<ol>\n<li><a href=\"https:\/\/github.com\/RuiSantosdotme\/arduino-mit-app-inventor\/blob\/master\/Code\/Project_9_Control_ESP8266_Outputs.apk?raw=true\" target=\"_blank\" rel=\"noopener noreferrer\">Click here to download the .apk file<\/a><\/li>\n<li>Unzip the folder<\/li>\n<li>Move the .apk file to your Android phone<\/li>\n<li>Run the .apk file to install the app<\/li>\n<\/ol>\n<p>Here&#8217;s how the <strong>ESP8266 Controller<\/strong> app looks when you to open it.<\/p>\n<figure id=\"attachment_19982\" aria-describedby=\"caption-attachment-19982\" style=\"width: 327px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/i0.wp.com\/randomnerdtutorials.com\/wp-content\/uploads\/2016\/04\/App.png?quality=100&#038;strip=all&#038;ssl=1\" rel=\"attachment wp-att-19982\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" class=\"wp-image-19982 size-full\" src=\"https:\/\/i0.wp.com\/randomnerdtutorials.com\/wp-content\/uploads\/2016\/04\/App.png?resize=337%2C600&#038;quality=100&#038;strip=all&#038;ssl=1\" alt=\"App\" width=\"337\" height=\"600\" srcset=\"https:\/\/i0.wp.com\/randomnerdtutorials.com\/wp-content\/uploads\/2016\/04\/App.png?w=337&amp;quality=100&amp;strip=all&amp;ssl=1 337w, https:\/\/i0.wp.com\/randomnerdtutorials.com\/wp-content\/uploads\/2016\/04\/App.png?resize=169%2C300&amp;quality=100&amp;strip=all&amp;ssl=1 169w\" sizes=\"(max-width: 337px) 100vw, 337px\" \/><\/a><figcaption id=\"caption-attachment-19982\" class=\"wp-caption-text\">ESP8266 Controller<\/figcaption><\/figure>\n<p>It&#8217;s very easy to configure. Click the button &#8220;Set IP Address&#8221; on the bottom of the screen and type your IP address (in my case 192.168.1.95).<\/p>\n<p><strong>You&#8217;re all set!<\/strong><\/p>\n<p>Now you can turn\u00a0the GPIOs high and low with your smartphone.\u00a0Go to the top of this page to see a <a href=\"https:\/\/www.youtube.com\/watch?v=Yo6nFHaTUGI\" target=\"_blank\" rel=\"noopener noreferrer\">video demonstration<\/a>\u00a0of this project.<\/p>\n<h2>Taking It Further<\/h2>\n<p>This is a basic example that shows you how easy it is to integrate an Android app with the ESP8266. You can take this example and modify it.<\/p>\n<p>You could add multiple screens to the app, so you can other ESPs or add buttons to control more GPIOs.<\/p>\n<p><strong>Do you have any questions?\u00a0<\/strong><strong>Leave a comment down below!<\/strong><\/p>\n<p>Thanks for reading. If you like this post probably you might like my next ones, so please support me by <a href=\"https:\/\/randomnerdtutorials.com\/download\">subscribing my blog<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In this project, you\u2019re going to build an Android app using\u00a0the MIT App Inventor software that allows you to control the\u00a0ESP8266 GPIOs. First, watch the video demonstration To\u00a0learn more about &#8230; <\/p>\n<p class=\"read-more-container\"><a title=\"ESP8266 Controlled with Android App (MIT App Inventor)\" class=\"read-more button\" href=\"https:\/\/randomnerdtutorials.com\/esp8266-controlled-with-android-app-mit-app-inventor\/#more-19973\" aria-label=\"Read more about ESP8266 Controlled with Android App (MIT App Inventor)\">CONTINUE READING \u00bb<\/a><\/p>\n","protected":false},"author":1,"featured_media":19977,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"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":[234,214,265,300,240,220,263,250,264,218],"tags":[],"class_list":["post-19973","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-android-app","category-esp8266","category-esp8266-project","category-0-esp8266","category-esp8266-projects","category-http-client","category-mit-app-inventor","category-nodemcu","category-project","category-web-server"],"aioseo_notices":[],"jetpack_featured_media_url":"https:\/\/i0.wp.com\/randomnerdtutorials.com\/wp-content\/uploads\/2016\/04\/featured-image.png?fit=980%2C551&quality=100&strip=all&ssl=1","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/randomnerdtutorials.com\/wp-json\/wp\/v2\/posts\/19973","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/randomnerdtutorials.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/randomnerdtutorials.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/randomnerdtutorials.com\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/randomnerdtutorials.com\/wp-json\/wp\/v2\/comments?post=19973"}],"version-history":[{"count":0,"href":"https:\/\/randomnerdtutorials.com\/wp-json\/wp\/v2\/posts\/19973\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/randomnerdtutorials.com\/wp-json\/wp\/v2\/media\/19977"}],"wp:attachment":[{"href":"https:\/\/randomnerdtutorials.com\/wp-json\/wp\/v2\/media?parent=19973"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/randomnerdtutorials.com\/wp-json\/wp\/v2\/categories?post=19973"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/randomnerdtutorials.com\/wp-json\/wp\/v2\/tags?post=19973"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}