×

SparkFun will be closed on Tuesday, November 5th to support our team in being able to go out and vote! Orders placed after 2 pm MT Monday, November 4th will ship on Wednesday, November 6th. Thanks for your patience and understanding.

WiFi Module - ESP8266 (Blue)

The ESP8266 WiFi Module is a self contained SOC with integrated TCP/IP protocol stack that can give any microcontroller access to your WiFi network. The ESP8266 is capable of either hosting an application or offloading all Wi-Fi networking functions from another application processor. Each ESP8266 module comes pre-programmed with an AT command set firmware, meaning, you can simply hook this up to your Arduino device and get about as much WiFi-ability as a WiFi Shield offers (and that's just out of the box)! The ESP8266 module is an extremely cost effective board with a huge, and ever growing, community.

This module has a powerful enough on-board processing and storage capability that allows it to be integrated with the sensors and other application specific devices through its GPIOs with minimal development up-front and minimal loading during runtime. Its high degree of on-chip integration allows for minimal external circuitry, including the front-end module, is designed to occupy minimal PCB area. The ESP8266 supports APSD for VoIP applications and Bluetooth co-existance interfaces, it contains a self-calibrated RF allowing it to work under all operating conditions, and requires no external RF parts.

There is an almost limitless fountain of information available for the ESP8266, all of which has been provided by amazing community support. In the Documents section below you will find many resources to aid you in using the ESP8266, even instructions on how to transforming this module into an IoT (Internet of Things) solution!

Note: The ESP8266 Module is not capable of 5-3V logic shifting and will require an external Logic Level Converter. Please do not power it directly from your 5V dev board.

  • 802.11 b/g/n
  • Wi-Fi Direct (P2P), soft-AP
  • Integrated TCP/IP protocol stack
  • Integrated TR switch, balun, LNA, power amplifier and matching network
  • Integrated PLLs, regulators, DCXO and power management units
  • +19.5dBm output power in 802.11b mode
  • Power down leakage current of <10uA
  • Integrated low power 32-bit CPU could be used as application processor
  • SDIO 1.1 / 2.0, SPI, UART
  • STBC, 1×1 MIMO, 2×1 MIMO
  • A-MPDU & A-MSDU aggregation & 0.4ms guard interval
  • Wake up and transmit packets in < 2ms
  • Standby power consumption of < 1.0mW (DTIM3)

WiFi Module - ESP8266 (Blue) Product Help and Resources

ESP8266 Powered Propane Poofer

March 15, 2016

Learn how Nick Poole built a WiFi controlled fire-cannon using the ESP8266 Thing Dev Board!

Core Skill: Programming

If a board needs code or communicates somehow, you're going to need to know how to program or interface with it. The programming skill is all about communication and code.

3 Programming

Skill Level: Competent - The toolchain for programming is a bit more complex and will examples may not be explicitly provided for you. You will be required to have a fundamental knowledge of programming and be required to provide your own code. You may need to modify existing libraries or code to work with your specific hardware. Sensor and hardware interfaces will be SPI or I2C.
See all skill levels


Core Skill: Electrical Prototyping

If it requires power, you need to know how much, what all the pins do, and how to hook it up. You may need to reference datasheets, schematics, and know the ins and outs of electronics.

3 Electrical Prototyping

Skill Level: Competent - You will be required to reference a datasheet or schematic to know how to use a component. Your knowledge of a datasheet will only require basic features like power requirements, pinouts, or communications type. Also, you may need a power supply that?s greater than 12V or more than 1A worth of current.
See all skill levels


Comments

Looking for answers to technical questions?

We welcome your comments and suggestions below. However, if you are looking for solutions to technical questions please see our Technical Assistance page.

  • SoftwareDev777 / about 10 years ago * / 7

    I made a few cool tutorials for these modules:

    How To Make Phone Calls and Send SMS With ESP8266 and Arduino

    You can also use the ESP8266 as a stand alone micro:

    How To Flash The NodeMcu Firmware On The ESP8266

    and add more pins to it:

    How To Add More GPIO Pins To The ESP8266

    I have two tutorial playlists in my channel:

    ESP8266 With Arduino

    ESP8266 on its own with NodeMcu

    and you can get the code for all these in my website

    • Rusty14 / about 10 years ago / 1

      What version of the arduino IDE are you using? mine doesn't recognize the wifi.httpPost() function.

  • TRYAN3131 / about 10 years ago / 3

    Will you carry any of the other common packages (or possibly roll your own with breadboard-friendly pin spacing)? This would be great for IoT considering the ability to leverage the module without an external MCU. Unfortunately I've gotten a couple ESP-03s from ebay and they were lemons.

    • Member #403458 / about 10 years ago / 2

      I'm not crazy about the 2X header either. If Sparkfun does roll their own some day, PLEASE rethink the header and use a single row. It would be nice if it could interface directly with a pro-mini too.

  • boconn7782 / about 10 years ago / 2

    Does anyone know if there's an AT command to just return the IP address of the ESP8266? I'd rather not have to parse it out if I don't have to.

    Currently AT+CIFSR returns:

    +CIFSR:APIP,"192.168.5.2" +CIFSR:APMAC,"2a:ee:32:a2:97:2b" +CIFSR:STAIP,"192.168.1.128" +CIFSR:STAMAC,"28:ee:32:a2:97:2b"

    OK

    Most tutorials out there seem to suggest it should just return the IP and not all the extra info.

    • It looks like you have it configured for both Station and AP mode, so it has two IPs, one for each mode. If you set it to station only "AT+CWMODE=1" you will get less data to parse.

      That said, the command I use to get just the station IP is "AT+CIPSTA?". If you need to use both Station and AP mode you can also get the AP IP address with "AT+CIPAP?".

      On my site I have some write-ups on a prototype project I am working on, I still have more articles to publish on the subject, but this one discusses the commands I'll be using for various tasks.

  • Member #35720 / about 10 years ago / 2

    And now programmable with the Arduino IDE!!!!! github.com/igrr/Arduino

    • igrr / about 10 years ago / 1

      We've now moved this to the esp8266 account: http://github.com/esp8266/Arduino

  • Member #666109 / about 10 years ago / 2

    You should carry the olimex version: http://microcontrollershop.com/product_info.php?products_id=7067

  • Member #35720 / about 10 years ago / 2

    The way I use these is I put pins on the outer connections, those are the pwr, gnd, rx, tx. Then it fits in breadboard. Then I use 4 pin female connector on the remaining 4 center pins. CH-PD has to be at vcc so I soldered that one. Works great and you can use jumper wires for programming or using the GPIO's.

  • Andros / about 10 years ago / 2

    Holy crap, how is it so cheap?

    • D3Dev / about 10 years ago / 3

      well ... why has it taken so long?! Finally! a wifi module to add to small projects that doesn't cost more than the all the other components! This breaks some barriers.

      • Andros / about 10 years ago / 1

        Yes, I'm also wondering why others are so much more if this one is so cheap.

    • IggyB / about 10 years ago / 1

      Look at the price for 5x from China and re-evaluate your question.

      • Member #47110 / about 10 years ago / 1

        Pity that it is the old version and not the newer one like this one:

        http://www.aliexpress.com/item/2pcs-lot-ESP8266-serial-WIFI-model-ESP-07-Authenticity-Guaranteed/32256583551.html

        They are shielded (good idea for an RF device!) and have a lot more I/O pins broken out - the module has a full featured OS and for simpler applications it can function completely standalone (there is a free toolchain available for it), without another MCU. But it sucks when you have only about 2 available I/O lines.

        Whether the module costs $2 from China and it takes a month or two to get it (if it arrives at all) or whether it costs $7 from SparkFun and you get it quickly and reliably is up to you to decide whether it is worth for you.

      • Andros / about 10 years ago / 1

        Any thing from China tho...

        • Dirty Engineer / about 10 years ago / 2

          Ummm where do you think these come from? China

          • Andros / about 10 years ago / 1

            really!? i though sparkfun was 100% original and jut had a terrible business model

            • nickm50 / about 10 years ago / 3

              Can't tell if you're joking.. SF has an excellent business model. They resell (sell their own in-house designs) at huge margins. Almost any electronic component you buy is most likely manufactured in China, Taiwan, Thailand, etc. and SparkFun is no exception. Why is that a bad thing? Everything coming out of factories is QC'd.

            • MicroLAN / about 10 years ago / 2

              It's almost impossible to get ANY device that does not have at least some parts made/assembled in China. No matter who you order it from.

  • Takaitra / about 9 years ago / 1

    The ESP8266 I recently received from SparkFun is running version 0.9.5 of the AT firmware with a baud rate of 115200. This was too fast for my Arduino (especially for software serial). To lower the baud rate to 9600 I had to connect it to my computer via FTDI and send it the command AT+CIOBAUD=9600. Also, the wiki link in the Documents section labels the inner pins as "NC". This is incorrect. The pins are labeled correctly at http://www.electrodragon.com/w/File:ESP8266_V091.png. Make sure to connect the CH_PD pin to VCC. I had to discover this via a lot of searching and trial and error. Hopefully this saves someone some time.

  • Member #292829 / about 9 years ago / 1

    I realize Sparkfun is just sourcing these modules from China, but I still expect a certain level of quality in product posting, such as including a pinout! I just want a picture, on the product page, telling me for certain what pins do what. You must have tested it - so somebody at Sparkfun knows how to connect the module. I shouldn't have to crawl through posts and unrelated links hoping to find a pinout. Come on guys! Thought you were better than that - it's why I buy Sparkfun.

  • I’ve bought a few of these from Sparkfun and they have been working great for me. See my review titled “The little module that could, and probably will!” Most people seem to use this module with TCP connections. I am using it with UDP sockets and there isn’t a lot of information out there. If you need information on using UDP sockets check out this series of articles I have published on a prototype I am creating using the ESP8266 with UDP. Also you can check out my Google+ collection on the ESP8266 prototype here.

  • Professr / about 9 years ago / 1

    I looked through all the product links, but I didn't see an actual pinout for this particular product. They're not labeled on the board itself; am I missing something obvious?

  • PlanetaryGear / about 9 years ago / 1

    Why are there export restrictions when it was imported in the first place? I know... silly question, just ignore me. I love these, they are awesome.

  • It should be noted that the last three modules I got from here had no firmware installed on them. Easy fix with the electrodragon firmware installer but it did make me doubt my sanity for a moment.

  • lacour / about 10 years ago / 1

    Here's a library I made for these modules that makes logging data to data.sparkfun.com (or other phant servers) a breeze: esphant-arduino

  • Member #221782 / about 10 years ago / 1

    Does it support/provide SSL? I can't find any details about it so I'm guessing not.

  • GMUTechMan / about 10 years ago / 1

    I read on some of the linked sites that this supports WPA2-PSK. Can this be confirmed (and added to the features list)?

    Also, is there more info on how to use this as an IoT solution on it's own?

    • SprSxyStv0 / about 10 years ago / 1

      I can't vouch for the WPA2-PSK, but you can find more info on how to write/compile new FW for it here: http://www.esp8266.com/wiki/doku.php?id=loading_firmware

  • logictechs / about 10 years ago / 1

    A kit is available containing an ESP-12 development system and all parts needed to get started tinkering with a 1-wire sensor system. Here is the store website link for that:

    ESP UNO-WIRE KIT

  • logictechs / about 10 years ago * / 1

    A

  • SK_BG / about 10 years ago / 1

    You could have stocked a great, OSHW, EU-made version, that has all the GPIO pins available at a breadboard friendly spacing: https://www.olimex.com/Products/IoT/ The price is pretty good, too.

Customer Reviews

4 out of 5

Based on 1 ratings:

Currently viewing all customer reviews.

9 of 9 found this helpful:

The Little Module that could, and probably will!

A lot of bang for the buck! Overall it’s a pretty solid little board. It comes preloaded with firmware that implements an AT command interface. I recommend updating to the latest AT command firmware, especially if you are going to use UDP mode of communication.

I haven’t used it with TCP connections, but the UDP mode seems to be very robust. I’ve had it running for over 3 days sending UDP packets every 2 seconds and it’s still going strong, no hiccups with WiFi connection or serial data transmission to and from the module. I’m sure my awesome software design and coding has something to do with it, but the module is holding its own :)

Range seems pretty good, I had no problem connecting to my router indoors from anywhere inside, and I even took my setup on a breadboard out to the furthest point in my yard, about 150 feet from the house and was able to connect to my router down in the basement through solid concrete poured foundation. Not too shabby.

Since they are so economical I bought 2, and I’m glad I did, as the description mentions do not hook this up to more than 3.3 volts. When I went to update my firmware on one of the boards I didn’t have my glasses on and inadvertently connected the GPIO0 to USB 5v rather than ground the next terminal over. When I noticed the mix-up I switched it to ground and successfully flashed the new image, but when I try to boot up normal it just spews garbage out of the serial port, so it is very sensitive to the wrong voltage.

I don’t have any issues with the board, but I can’t bring myself to give it a 5 star rating as I believe that should be saved for special circumstances, even though this module is lots of bang for the buck I feel like there could be a better ESP8266 board so I’ll call it a 4.5 and recommend you play around with one if you haven’t already.