Programming ESP8266-EVB with Arduino IDE



We made Arduino style library to easy the stand alone ESP8266 programming, but we were not using any IDE but mostly command line compile and programming. Two of our developers decided to use Eclipse and set it up for ESP8266 tools.

Yesterday we spotted on ESP8266_wiki GitHub account that someone already add support for ESP8266 in the latest Arduino 1.6.1 IDE release, how cool is this?

I decide to try it today. I downloaded the pre-build binaries arduino-1.6.1-linux64.tar.xz and decompress it in /home folder then ran terminal and “sudo ./arduino” in the Arduino-1.6.1 folder, the Arduino IDE was launched.

Then I connected USB-SERIAL-Cable-F to ESP8266-EVB Open Source Hardware board UEXT connector connecting blue wire to PIN2, the green wire to PIN.3 and red wire to PIN.4 on the UEXT connector as on this picture:


Then in Arduino IDE I Selected Tools->Board-> Generic ESP8266 board

Then connected USB-SERIAL-CABLE-F to USB and selected Tools-> Port -> /dev/ttyUSB0

Then selected Tools-> Programmer->esptool

From examples loaded Blink LED then changed the port 13 to port 5 where the relay is connected.

I pressed the ESP8266-EVB button and connect 5V power supply to board to make it enter in bootloader mode, then click on Upload button.

The sketch was compiled and uploaded successfully then the relay start to switch on and off like expected.

Well done! I didn’t check all the libraries, but I see inside demos for web servers etc.


17 Comments (+add yours?)

  1. Shervin Emami
    Apr 01, 2015 @ 01:35:19

    Nice work! It’s an Arduino clone with onboard Wifi that is smaller & cheaper & faster than a plain Arduino!


  2. Trackback: ESP8266 Wi-Fi Module is Now Supported in Arduino IDE
  3. Walter Hynson
    Apr 06, 2015 @ 03:30:16

    I purchased my duinomegga to program in BASIC to get away from C++,now here you go with the same old crap why not an IDE where you code in BASIC and compile to C or whatever aurdino needs that would make more sense then following arduino down the road,most of the people who started with arduino are now switching to RASP PI,all you have to do is advertise that duino runs BASIC and your customer base will multiply….WCH


    • OLIMEX Ltd
      Apr 06, 2015 @ 08:42:03

      🙂 who uses Basic on Linux computer when there is Python, C#, Java and any other modern language available? BASIC is so 1980s, sure it have some sentiment for 50+ old people who started with it, but just think about it – why none of current high tech companies do not search for BASIC programmers? all I see is C#, .NET, Java, Python, PHP, C/C++ in the jobs offering


    • Abdullbasit
      Apr 23, 2015 @ 12:51:17

      Just because you’re familiar with Basic doesn’t make Basic the better choice for programming Arduino’s


  4. Rodrigo Adachi
    Apr 12, 2015 @ 17:41:06

    Hello, anything today is based on C, BASIC is very obsolete and ñ was evolved, moreover, we must update us when I was a kid I prograva in BASIC, hj I program in C ++, C #, JavaScript, among others, was evolving as things …


  5. Trackback: ESP8266 disappointment | Tiny gadgets
  6. Jean-Marie Guitard
    Jan 03, 2016 @ 17:51:58

    Hello, I just try to execute this small example using arduino 1.6.7 with the library

    I’m meeting the following problem :

    warning: espcomm_sync failed
    error: espcomm_open failed
    Invalid library found in /root/Arduino/libraries/libusb-1.0.9 : /root/Arduino/libraries/libusb-1.0.9
    Invalid library found in /root/Arduino/libraries/libusb-compat-0.1.4 : /root/Arduino/libraries/libusb-compat-0.1.4

    There is no esptool in the tools programmer, no joy with AVR ISP neither USBasp

    I’m using the genuine USB-SERIAL-CABLE-F correctly connected as on your picture…

    Can you help ?
    Thanks in advance


  7. Trackback: Getting Off the Ground – ESP8266 Projects
  8. He Won Cho
    Jan 16, 2016 @ 20:12:34

    Hello, I am trying to program ESP8266-evb to be able to get data from android application. After entering the bootloader mode, I tested AT commands on serial monitor but nothing appeared.. Can anybody help me?


  9. Mateusz
    May 17, 2016 @ 15:00:33

    You wrote:
    I pressed the ESP8266-EVB button and connect 5V power supply to board to make it enter in bootloader mode, then click on Upload button.
    Please, tell me when do you unpress button?



    • Wolle
      Jul 10, 2016 @ 14:16:46

      Disconnect power, press button on board, connect power, release button.
      Then press ‘upload’ in Arduino IDE.

      Make sure you don’t have connected Vcc of your UsbToSerial device to Olimex-Vcc (but GNDs must be connected). Otherwise 2 power suplies could start an open-ended competition.

      And make SURE you have crossed the TX/RX connections between your UsbToSerial device and Olimex board. (Sorry for this banality. I made painfull control-experiments whether this requirement still holds in serial connections. Meanwhile friends suggest a tattoo “Always cross RX/TX !” 🙂


  10. marco
    Dec 28, 2016 @ 18:24:20

    Sorry but following the ESP8266-EVB hardware data sheet the relay is connect to pin11, why is working with pin 5? (I try and working with pin 5) :-((
    I don’t understand!


    • SK
      Dec 29, 2016 @ 19:46:39

      The number 5 written in the Arduino sketch means the GPIO number as assigned from the ESP chip itself. You can see in the shematic that GPIO5 (marked “GPIO5/REL)” is exactly the one connected to the relay:

      Click to access ESP8266-EVB_Rev_A1.pdf

      If you look at it PCB-wise then yes, it is numbered as pin 11 of the ESP8266-DEV board itself. This is further exposed on the single row of pins of the EVB board as pin 12. But what you need to write in the Arduino sketches is the GPIO numbers as defined from the chip 😉


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: