ESP8266

From Noisebridge
Revision as of 11:38, 14 October 2015 by 208.87.217.74 (talk) (Updated with info about Arduino IDE #ffff00)
Jump to navigation Jump to search

ESP8266

The ESP8266 is a small, low-cost wifi-talking board. It's the new center of the Internet of Things. Originally intended as a "wifi modem", it exposes the WiFi interface over AT-style commands.

Some hackers immediately noticed there is a general-purpose microcontroller on the box, and made a firmware for it that takes Lua programs. Now you don't need another microcontroller. Sweet!

Several additional community efforts have also been initiated and are generally discussed at http://esp8266.com one of the newer developmentss is the addition of integrated support in the Arduino IDE, further details follow in the Software section below.

                                    ,---.-,                                        
                      ,-.----.     '   ,'  '.                                      
    ,---,.  .--.--.   \    /  \   /   /      \      ,----,                         
  ,'  .' | /  /    '. |   :    \ .   ;  ,/.  :    .'   .' \   ,---.       ,---.    
,---.'   ||  :  /`. / |   |  .\ :'   |  | :  ;  ,----,'    | /     \     /     \   
|   |   .';  |  |--`  .   :  |: |'   |  ./   :  |    :  .  ;/    / '    /    / '   
:   :  |-,|  :  ;_    |   |   \ :|   :       ,  ;    |.'  /.    ' /    .    ' /    
:   |  ;/| \  \    `. |   : .   / \   \     /   `----'/  ;'    / ;    '    / ;     
|   :   .'  `----.   \;   | |`-'   ;   ,   '\     /  ;  / |   :  \    |   :  \     
|   |  |-,  __ \  \  ||   | ;     /   /      \   ;  /  /-,;   |   ``. ;   |   ``.  
'   :  ;/| /  /`--'  /:   ' |    .   ;  ,/.  :  /  /  /.`|'   ;      \'   ;      \ 
|   |    \'--'.     / :   : :    '   |  | :  ;./__;      :'   |  .\  |'   |  .\  | 
|   :   .'  `--'---'  |   | :    '   |  ./   :|   :    .' |   :  ';  :|   :  ';  : 
|   | ,'              `---'.|    |   :      / ;   | .'     \   \    /  \   \    /  
`----'                  `---`     \   \   .'  `---'         `---`--`    `---`--`   
                                   `---`-'                                         

Hardware

For full specs, see [1]. Important facts:

  • 3.3v *only* - 5v will let out the majikul smoke
  • Some reports say 1A current draw, others say 250 mA
  • Talks 802.1n, supports most major auth types.

There are a number of ESP8266 hardware versions. The ones of interest are:

  • ESP1: 8 pins (basically one I/O plus power, etc.). Breadboard friendly (2.54mm), but not useful standalone
  • ESP12: 16 pins (I/O, power, 9 GPIO). Non-breadboard friendly: 2mm pin spacing

Software

Arduino IDE

Enhancements to the Arduino IDE in versions 1.6.4 and later have enabled support for the esp8266 and the ability to upload new firmware. Version 1.6.5 r5 or later is recommended.

The current version of the IDE can be downloaded from https://www.arduino.cc/en/Main/Software

Two additional steps are required to add esp8266 support to the Arduino IDE

  1. Open the preferences menu in the Arduino IDE and add http://arduino.esp8266.com/stable/package_esp8266com_index.json into "Additional Board Manager URLs" field
  2. Open Boards Manager from "Tools > Board: ______ > Boards Manager..." menu, scroll down to esp8266, click to select it and then click the install button.

Details about esp8266 support can be found at https://github.com/esp8266/Arduino

Once it downloads you'll see "ESP8266 Modules" section added to the list of target boards under "Tools > Board: ______>". You can use the "Generic ESP8266 Module" option for programming ESP-## modules using a 3.3v USB-Serial connector.


LUA

There are a wide variety of firmware builds available for the chip. Of interest is the software NodeMCU, which turns the serial port in to a Lua REPL. Yesac is working on an environment within NodeMCU for doing TFTP and some other junk.

Uploading firmware is easy with esptool

Group order 01/2015

Prices are from the same store, and are competitive within a few cents.

  • ESP-12, Without breakout (Option A): $2.60 aliex
  • ESP-12, with breakout board, battery socket, resistors, and power regulator (2.54mm pitch): $4.50 aliex


Order Participants

Put your name, email, and quantity of With and Without breakout desired.

Name Email No Breakout Breakout
Casey c1@caseyc.net 0 3
Adrian adrian@freebsd 0 5
Naomi naomi at nthmost 0 4
Dana dsniezko at sonic net 0 10
Patrick p@trickod.com 0 4
Les Jones 0 2
Brad brad.schwagler at gmail 0 2
Torrie tdfischer at hackerbots 10 0
Jake jake at spaz odt org 0 2
Henner h.zeller at acm.org 10 0
John E. neurofog@gmail.com 2 0
devin <- that at doormouse org 0 2
Scotty <- that at scottyallen com 4 1
Tom <- that at tomdee.co.uk 0 2
mct mct at toren dot net 2 4
adi adi@hexapodia.org 4 4
ondine okilker at gmail 0 2