Chuyển tới nội dung
Home » Esp8266 Arduino Android App | Schematics (3.3V Ftdi Programmer)

Esp8266 Arduino Android App | Schematics (3.3V Ftdi Programmer)

Creating an Android App to Control Nodemcu Wi-Fi Module | (Nodemcu is hotspot mode)

ArduinoDroid – Arduino/ESP8266 APP

Quan trọng:

Ứng dụng chiếm khoảng 500Mb trong bộ nhớ trong vì nó chứa IDE, trình biên dịch và trình tải lên cho AVR và ESP8266 / ESP32. Đảm bảo bạn có đủ dung lượng trống và nó hiện không thể được cài đặt trên thẻ sd do chính sách bảo mật của Android.

Tính năng :

* giới thiệu

* mở / chỉnh sửa các bản phác thảo Arduino / ESP8266 / ESP32

* bản phác thảo ví dụ và thư viện bao gồm

* đánh dấu cú pháp mã với hỗ trợ chủ đề *

* mã hoàn thành *

* chẩn đoán thời gian thực (lỗi và cảnh báo) và các bản sửa lỗi *

* trình điều hướng tệp *

* bàn phím phần mềm tích hợp nhỏ bé *

* biên dịch bản phác thảo (không cần root)

* tải lên bản phác thảo qua USB (tất cả các bảng ESP8266, tất cả các bảng ESP32, Arduino Uno / Uno_r3, Duemilanove, Nano, Mega 2560, Leonardo, Micro / Pro Micro, Pro, Pro Mini, Yun, Esplora, Robot Control, Robot Motor board đều được hỗ trợ , yêu cầu thiết bị Android có hỗ trợ máy chủ USB) và WiFi (OTA cho ESP8266 / ESP32)

* màn hình nối tiếp

* hoạt động ngoại tuyến (không cần kết nối internet)

* Hỗ trợ Dropbox

* Hỗ trợ Google Drive

* vật liệu thiết kế

Blog ứng dụng:

Khắc phục sự cố:

Đánh giá Các tính năng trả phí nâng cao (được đánh dấu bằng *):

Xem thêm ứng dụng CppDroid:

Lưu ý : đây KHÔNG phải là ứng dụng chính thức của nhóm Arduino mà là ứng dụng di động của bên thứ 3 có cùng chức năng được phát triển và hỗ trợ bởi một nhà phát triển độc lập.

© “Arduino” là thương hiệu của nhóm Arduino.

I am a retiree who has discovered Arduino for two months, I also have a degree in electronics, I know very well electronic components and integrated circuits. With Arduino I realized the automation of a model of electric trains. My experiences with Arduino are visible at these links: How to use Oled to display temperature and humidity using Arduino – YouTube This video shows how to use an oled display to display an appropriate sensor, temperature and humidity How to transfer strings between two Arduinos Come trasferire stringhe tra due Arduino – YouTube This video shows how strings of data can be transferred between two Arduinos Data transmission with Arduino via RS232 Trasmissione dati con Arduino via RS232 – YouTube This video shows how a basic program on a PC can send data to Arduino via RS232 I purchased the esp8266 esp-12f WIFI module which works perfectly, executes the commands sent via browser both from the PC and from the mobile phone when they are connected via WIFI. My current request is to be able to send commands to ESP8266 via mobile phone when I’m not connected via WIFI, but I’m away from home. I would like to know how I can create an APP on the mobile that allows me to send data to the WIFI module. Thank you in advance if you have any suggestions.

A simpler solution might be to get the esp to act as an Access Point (AP) when it cannot connect to your home wi-fi. Then you can connect your phone directly to its wi-fi and access the page(s) in the normal way.

Thanks for your suggestion, unfortunately it is not clear to me, could you give me some other indications. Currently from my mobile phone when it is connected via wifi I send the commands in this way:”” to turn on the led”” to turn off the ledIn what other way could I do. Thanks so much

There are many ways to do this. Have you tried searching for ESP8266 on the Play store? I believe there are already apps created just for this purpose, and they provide the code for you to modify on your ESP8266 to custom to your needs.

Another way is to search for “http request” apps. This is probably the simplest way. You can basically input your own http request in the app, and control your ESP8266 from it, or a widget. But you won’t get status feedback/update on your LED.

But the first order of things, assuming you don’t have static IP, is you need to get a DDNS service. It basically gives you a fixed domain name to connect back to your home network, instead of an IP address. There are free services online which you could use that provide this. You also need a router that supports the service, or a computer/device that supports it.

Thanks for the suggestion, I downloaded the “Smart Remote ESP8266” APP, it works perfectly if the mobile phone is connected to my WIFI, the address of my HTTP server is which is active on the esp8266 esp-12f board made with a sketch Arduino, turns the LED on and off. If I disconnect the mobile from my WIFI the “Smart Remote ESP8266” does not send anything to the esp8266 esp-12f card. I also have a static IP example:, I tried to configure the “Smart Remote ESP8266” with this address, but the program on the esp8266 esp-12f board does not receive any command. What can I do. Thanks so much

If you are sure you already have static IP, meaning IP address that does not change overtime, then you won’t need to use a DDNS service. The reason why it isn’t working, is because port forwarding on your router hasn’t been configured yet. What it actually does is to redirect traffic on an external(internet) port, to an internal IP and port. You need to login into your Wifi router’s interface to do so.

For example, you can use say a random port number 52142 externally, and map that port number to your ESP8266’s IP address, and port 80(http). So instead of typing “” while you are on Wifi, you type “” instead on a mobile network.

I have a static IP, changed my router and assigned random port number 52142 to my ESP8266 card as you suggested. I typed “” and “”, unfortunately both commands are not received. If you have any other indication, it is certainly welcome. Many thanks.

Have you also used the ESP8266e card and are you able to send commands from the mobile phone not connected via WIFI? If so, which APP on the mobile phone you used. Thanks and greetings from Italy

Perhaps you could post a screenshot of your port forwarding configuration. Yes, I have more than a dozen ESP8266s running, which have no trouble receiving data from the internet. I’m using my own self-written Android app. I’m not sure if you have tried “” using a browser on your phone, when you are connected to a mobile network. If not, try that first to confirm the issue does not lie with the app.

If your ESP8266 is already working fine with commands from your browser in your internal network, and you are already certain you have static IP, the issue most likely lies with your port forwarding configuration.

Thanks again for your suggestions, I did the test you suggested again, unfortunately I can’t get my HTTP server to work using ESP8266. I used the command “” on my mobile browser but it doesn’t work. I have a static IP, I think the problem is with my router not configured correctly like yours.

Which was why I suggested posting a screenshot of your port forwarding configuration here.

What steps should I take to get the screenshot of my port forwarding configuration ?Thanks in advance

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.

Install +2 K
From 10 Rates
Category Tools
Size 111 MB
Last Update 2022 July 5
Install +2 K
From 10 Rates
Category Tools
Size 111 MB
Last Update 2022 July 5

Write with code complete and libraries, compile, upload Arduino or ESP8266/ESP32 sketches over USB or WiFi and monitor your board right from your Android device with ArduinoDroid. No internet connection, no cloud service account is required.Important:The app takes about 500Mb in internal storage as it contains IDE, compiler and uploader for AVR and ESP8266/ESP32. Make sure you have enough free space and it can’t be currently installed on sd card because of Android security policy.Features:* onboarding* open/edit Arduino/ESP8266/ESP32 sketches* example sketches and libraries included* code syntax highlighting with themes support ** code complete ** real-time diagnostics (errors and warnings) and fixes ** file navigator ** tiny built-in software keyboard ** compile sketches (no root required)* upload sketches over USB (all ESP8266 boards, all ESP32 boards, Arduino Uno/Uno_r3, Duemilanove, Nano, Mega 2560, Leonardo, Micro/Pro Micro, Pro, Pro Mini, Yun, Esplora, Robot Control, Robot Motor boards are supported, android devices with USB-host support required) and WiFi (OTA for ESP8266/ESP32)* serial monitor* works offline (no internet connection required)* Dropbox support* Google Drive support* material designApp blog:https://www.arduinodroid.infoTroubleshooting: paid features (marked with *) review: also CppDroid app:https://www.cppdroid.infoNote: this is NOT an official Arduino team application, but a 3rd-party mobile application with the same functionality developed and supported by an independent developer.© “Arduino” is a trademark of Arduino team.

Parts List

Here’s the hardware that you need to complete this project:

  • 1x ESP8266 -read Best ESP8266 Wi-Fi Developmento Boards
  • 1x FTDI programmer
  • 2x LEDs
  • 2x 220Ω Resistors
  • 1x Breadboard
  • 1x Android Phone – example OnePlus 5 (read review)

You can use the preceding links or go directly to to find all the parts for your projects at the best price!

Creating an Android App to Control Nodemcu Wi-Fi Module | (Nodemcu is hotspot mode)
Creating an Android App to Control Nodemcu Wi-Fi Module | (Nodemcu is hotspot mode)

Sơ đồ đấu nối

Các linh kiện cần thiết cho dự án

Tên linh kiện Số lượng Shopee
NodeMCU ESP8266 Mua ngay
Dây cắm (Cái – Cái) Mua ngay
Module Relay 5V Mua ngay

Điều khiển thiết bị bằng MIT App Inventor sử dụng NodeMCU ESP8266

Trong nội dung bài viết hôm nay mình sẽ giới thiệu với các bạn một chủ đề mới cách có thể tạo một App Android trên MIT App Inventor một cách nhanh chóng mà không cần phải biết về lập trình nhiều.

Bài viết sẽ hướng dẫn các bạn cách tạo một App đơn giản và điều khiển các thiết bị trong gia đình thông qua NodeMCU ESP8266. Để có thể nắm rõ hơn các bạn có thể tìm đọc các bài viết liên quan đến dự án.

453 Use your Arduino and ESP32/ESP8266 from your Smartphone. No Cloud! (RemoteXY)
453 Use your Arduino and ESP32/ESP8266 from your Smartphone. No Cloud! (RemoteXY)



const char* ssid = “Phamson”; const char* password = “phamtheson”; WiFiServer server(80); void setup() { Serial.begin(115200); //Default Baud Rate for NodeMCU delay(10); pinMode(2, OUTPUT); // Connect Relay to NodeMCU’s D4 Pin digitalWrite(2, 0); // Connect to WiFi network Serial.println(); Serial.println(); Serial.print(“Connecting to “); Serial.println(ssid); WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print(“.”); } Serial.println(“”); Serial.println(“WiFi connected”); // Start the server server.begin(); Serial.println(“Server started”); // Print the IP address Serial.println(WiFi.localIP()); } void loop() { // Check if a client has connected WiFiClient client = server.available(); if (!client) { return; } // Wait until the client sends some data Serial.println(“new client”); while(!client.available()){ delay(1); } String req = client.readStringUntil(‘\r’); Serial.println(req); client.flush(); int val; if (req.indexOf(“/gpio/0”) != -1) val = 0; else if (req.indexOf(“/gpio/1”) != -1) val = 1; else { Serial.println(“invalid request”); client.stop(); return; } // Set GPIO2 according to the request digitalWrite(2, val); client.flush(); String s = “HTTP/1.1 200 OK\r\nContent-Type: text/html\r\n\r\n


\r\nGPIO is now “; s += (val)?”high”:”low”; s += ”

“; }

In this project, you’re going to build an Android app using the MIT App Inventor software that allows you to control the ESP8266 GPIOs.

First, watch the video demonstration

To learn more about the ESP8266 use the following tutorials as a reference:

  • Getting started with the ESP8266
  • ESP8266 web server with NodeMCU
  • Flashing NodeMCU firmware
  • ESP8266 troubleshooting guide

If you like the ESP and you want to do more projects you can download my eBook Home Automation using ESP8266 here.

Let’s get started!

Arduino UNO & ESP8266 and control using smartphone
Arduino UNO & ESP8266 and control using smartphone

Creating the Android App with MIT App Inventor

MIT App Inventor is a drag-and-drop software that allows you to create a basic, but fully functional Android app within an hour or less.

Here’s how to edit the ESP8266 Controller app:

  1. Click here to download the .aia file
  2. Unzip the folder
  3. Go to MIT App Inventor
  4. Click the “Create Apps” button on the top right corner
  5. Go to the “Projects” tab and select “Import project (.aia)”

After importing the .aia file, you’ll be able to edit the app and see how the app was built.


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.


The blocks section is where you can add what each button does and add logic to your app.

After finishing editing the app you can click the “Build” app tab and install the .apk file in your Android. I personally recommend that you first upload the app provided below to ensure that everything works as expected (later you can edit the app).

Tạo App Android bằng MIT APP INVENTOR

Để có thể tạo một App Android bằng MIT app inventor chúng truy cập vào link để tạo dự án nhé:

Bước đầu tiên các bạn Click vào Projects chọn “Start new project” để tạo một dự án mới.

Tiếp theo chúng ta cần đặt tên cho dự án.

Ở bên tay trái màn mình các bạn, chúng ta Click vào Button dùng để bật tắt thiết bị. Ở đây mình sẽ chọn 2 nút và đặt là “ON” và “OFF”.

Để có thể chỉnh sửa các thông số của Button các bạn Click vào và nó sẽ xổ ra các trường thông tin. Ở đây các bạn có thể đặt lại tên cho Button ở phần Text …

Tiếp theo, các bạn chọn mục Connectivity và cho Web và kéo thả vào Viewer nhé.

Sau khi đã cấu hình cho các Button và Web ta chọn vào Block để chuyển qua lập trình kéo thả Block.

Click vào “Button 1” chọn phần mà mình đã khoanh đỏ và kéo chúng vào vùng lập trình.

Tiếp tục, ta chọn “Web1” và kéo Block đã được đánh dấu. Ở phần này chúng ta sẽ cấu hình địa chỉ IP Web.

Chọn mục “Text” kéo block được khoanh đỏ vào vùng lập trình.

Tiếp theo ở mục Web1 chọn Block “Call Web.Get”.

Để biết được địa chỉ IP của NodeMCU ESP8266 ta cần nạp Code và bật Monitor lên xem nhé. Code mình để cuối bài viết các bạn tải về và

thực hiện nhé. Ở đây địa chỉ IP của mình là:


Các bạn kéo thả các Block lại với nhau giống như trên màn hình nhé.

Để có thể tải dự án về điện thoại, các bạn vào mục Build chọn App (project QR code for apk).

Quét mã QR code xuất hiện trên màn hình. Và các bạn tiến hành cài đặt App vào điện thoại nhé.

Như vậy là đã xong các bạn có thể điều khiển bật tắt thiết bị trên App điện thoại rồi.

NODEMCU programming blynk android & Desktop | malayalam
NODEMCU programming blynk android & Desktop | malayalam

Schematics (3.3V FTDI Programmer)

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 FTDI programmer on eBay.


  • RX -> TX
  • TX -> RX
  • CH_PD -> 3.3V
  • VCC -> 3.3V
  • GND -> GND

Uploading Code

You should see a window similar to the preceding Figure, follow these instructions to upload a Lua file:

  1. Connect your FTDI programmer to your computer
  2. Select your FTDI programmer port
  3. Press Open/Close
  4. Select NodeMCU+MicroPtyhon tab
  5. Create a new file called init.lua
  6. Press Save to ESP

Everything that you need to worry about or change is highlighted in red box.

How to Make a Simple App--[NodeMCU-ESP8266] -PART1
How to Make a Simple App–[NodeMCU-ESP8266] -PART1

Downloading ESPlorer IDE

I recommend using the ESPlorer IDE which is a program created by 4refr0nt to send commands to your ESP8266.

Follow these instructions to download and install ESPlorer IDE:

  1. Click here to download ESPlorer
  2. Unzip that folder
  3. Go to the main folder
  4. Run “ESPlorer.jar” file
  5. Open the ESPlorer IDE

Taking It Further

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.

You could add multiple screens to the app, so you can other ESPs or add buttons to control more GPIOs.

Do you have any questions? Leave a comment down below!

Thanks for reading. If you like this post probably you might like my next ones, so please support me by subscribing my blog.

ESP8266 Connect Application

An Android application that connects to an ESP8266 WiFi module through a shared access point and sends command to the server to turn on and off a light. See the accompanying Arduino project for the ESP8266 for software and hardware requirements to run the project.

Hardware Requirements

  • Android Device running Android SDK 15 or above
  • ESP8266 and other hardware (see the Arduino project).

Software Requirements

  • Android IDE if you wish to edit the code, otherwise side load the APK file from the release secton.
  • Android SDK 15 or above


From the release section download the APK file from the Android Github repository release section and side load onto your mobile device. If you have the ESP8266 project setup and running, the Android application will be able to automatically connect to the access point using the default IP address, access point name and password. These can be changed in the application settings.

Open the installed application on your device and select the “Connect” button. This will connect to the access point with the default name and password. If you wish to change these, you can do so under the settings from the drop down menu.

Once you connect, you can use the “Send” buttons below the values to toggle on/off the LED light. Use the “Disconnect” button to disconnect from the access point and return reconnect to your previous WiFi connection.

How to control LED through  Android Mobile phone App Using ESP8266 RemoteXY
How to control LED through Android Mobile phone App Using ESP8266 RemoteXY


Upload the following code into your ESP8266 using the preceding software. Your file should be named “init.lua“.

Don’t forget to add your network name (SSID) and password to the script below.

-- Rui Santos -- Complete project details at wifi.setmode(wifi.STATION) wifi.sta.config("YOUR_NETWORK_NAME","YOUR_NETWORK_PASSWORD") print(wifi.sta.getip()) led1 = 3 led2 = 4 gpio.mode(led1, gpio.OUTPUT) gpio.mode(led2, gpio.OUTPUT) srv=net.createServer(net.TCP) srv:listen(80,function(conn) conn:on("receive", function(client,request) local buf = ""; buf = buf.."HTTP/1.1 200 OK\n\n" local _, _, method, path, vars = string.find(request, "([A-Z]+) (.+)?(.+) HTTP"); if(method == nil)then _, _, method, path = string.find(request, "([A-Z]+) (.+) HTTP"); end local _GET = {} if (vars ~= nil)then for k, v in string.gmatch(vars, "(%w+)=(%w+)&*") do _GET[k] = v end end if( == "ON1")then gpio.write(led1, gpio.HIGH); elseif( == "OFF1")then gpio.write(led1, gpio.LOW); elseif( == "ON2")then gpio.write(led2, gpio.HIGH); elseif( == "OFF2")then gpio.write(led2, gpio.LOW); end client:send(buf); client:close(); collectgarbage(); end) end)

Installing the Android App

Follow these instructions to install the default app that I’ve created:

  1. Click here to download the .apk file
  2. Unzip the folder
  3. Move the .apk file to your Android phone
  4. Run the .apk file to install the app

Here’s how the ESP8266 Controller app looks when you to open it.

It’s very easy to configure. Click the button “Set IP Address” on the bottom of the screen and type your IP address (in my case

You’re all set!

Now you can turn the GPIOs high and low with your smartphone. Go to the top of this page to see a video demonstration of this project.


Keywords searched by users: esp8266 arduino android app

See more here:

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *