Skip to content

Instantly share code, notes, and snippets.

@jonathanbarton
Last active March 28, 2024 19:50
Show Gist options
  • Star 2 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jonathanbarton/cad49b9935ca7571461d to your computer and use it in GitHub Desktop.
Save jonathanbarton/cad49b9935ca7571461d to your computer and use it in GitHub Desktop.
ESP8266 Introduction

#Overview

The ESP8266 is a versatile chipset that provides client and access point wifi capabilities, on-chip SRAM and flash storage, a RISC processor, GPIO pins, and pin outs for memory and CPU extensability. Bundled as a series of modules with varying features focused around acting as either a wifi extension module to an existing microcontroller or as an self-contained solution for integrating wifi and internet functionality with GPIO control. From an application standpoint, the ESP weighs in as an inexpensive and compact alternative to AVR (arduino) based, wifi-driven IoT solutions.

Chip Layout

AT Command Set

AT+RST restart the module, received some strange data, and "ready"

AT+CWMODE=3 change the working mode to 3, AP+STA, only use the most versatile mode 3 (AT+RST may be necessary when this is done.) Join Router

AT+CWLAP search available wifi spot

AT+CWJAP=“you ssid”, “password” join my mercury router spot

AT+CWJAP=? check if connected successfully, or use AT+CWJAP?

Devices

ESP-01

  • Design:
  • Wifi Features:
    • 802.11 b/g/n
    • 19.5dBm output in b mode
    • WPA/WPA2 security
    • Client Mode / Access Point Mode
  • Pin Layout:
    • UTXD: Serial Transmit
    • GND: Ground
    • CH_PD: CH Pull Down
    • GPIO2: GPIO register
    • RST: Reset
    • GPIO0: GPIO register
    • VCC: 3.3v Power IN
    • URXD: Serial Receive

ESP-12e

  • Design
  • Wifi Features
    • 802.11 b/g/n
    • 19.5dBm output in b mode
    • WPA/WPA2 security
    • Client Mode / Access Point Mode
  • Pin Layout

ESP-13wroom

  • Pin Layout
  • Notes

ESP-14

  • Pin Layout

  • Notes

Development Boards

####Nodemcu devkit v1.0

Write latest firmware. Use integer release, pre-dev version, include '-fm dio -fs 32m' for valid flash. Default baud rate should be 9600 or 115200. Writing firmware using esptool:

./esptool.py -p /dev/tty.SLAB_USBtoUART write_flash -fm dio -fs 32m -ff 40m 0x00000 nodemcu_integer_0.9.5_20150318.bin

Electrodragon's Nodemcu devkit tutorial: TUTORIAL

Platforms:

NodeMCU

  • Flashing Firmware
  • Example Code

Arduino for ESP8266

  • Flashing Firmware
  • Example Code

AT firmware

ESP8266 Espressif SDK (C++)

Micropython

Frankenstein

References:

Talking with the Web

GPIO

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment