Friday, June 17, 2016

ESP-05, mini ESP8266 WiFi module

ESP-05 is a mini size WiFi module of ESP8266 family. Almost half size of ESP-01, no on-board antenna, with five-pin in SIL, more breadboard friendly.

It's 5 pins on the board:
- VCC3V3

First test AT Command and check firmware:

To test ESP-05 with AT Command, we connect ESP-05 to PC via FTDI USB-to-Serial adapter, as shown:

(The Fritzing part of ESP8266-05 can be found HERE)

- Run Arduino IDE
- Select connected port
- Open Tools > Serial Monitor
- Select Booth NL & CR, 115200 baud
- Power on ESP-05
- Then you can enter AT command as show in this video:

To check the firmware, enter the command AT+GMR:

AT version:  8 2015 14:45:58)
SDK version:1.3.0
Ai-Thinker Technology Co.,Ltd.
Build: Sep 11 2015 11:48:04

Connect with Arduino Mega 2560 via Level Converter:

In this step, we are going to connect ESP-05 to Arduino Mega 2560, such that we can send command to ESP-05 by Mega. Because Mega is work on 5V, and ESP-05 work on 3.3V, so we need a Level Converter.

Connect as shown:

(Alternatively, you can simple use a voltage divider of 2 resistors to convert 5V Mega TX to 3.3V ESP-05 RX, ESP-05 TX can direct connect to Mega RX, to achieve the same job.)

Enter the code run on Mega. This program simple accept command from PC forward to ESP-05, receive response from ESP-05, forward to PC.

int LED = 13;
boolean LEDst = false;

void setup() {
  pinMode(LED, OUTPUT);
  digitalWrite(LED, LEDst);

void loop() {
  while (Serial.available() > 0) {
    char a =;

void serialEvent3() {
  while (Serial3.available() > 0) {
    char a =;

void ToggleLED(){
  digitalWrite(LED, LEDst = !LEDst);

Such that we can enter command as in "First test AT Command and check firmware" above. This step aim to make sure the connection between Mega and ESP-05 is correct.

ESP-05(ESP8266) + Arduino Mega, act as simple web server

No comments:

Post a Comment