Difference between revisions of "Protocol decoder:Esp8266"

From sigrok
Jump to navigation Jump to search
 
(19 intermediate revisions by 2 users not shown)
Line 3: Line 3:
| name            = ESP8266
| name            = ESP8266
| description    = WiFi Serial Transceiver.
| description    = WiFi Serial Transceiver.
| status          = planned
| status          = stalled
| license        = GPLv2+
| license        = GPLv2+
| source_code_dir =  
| source_code_dir =  
Line 13: Line 13:
}}
}}


The '''esp8266''' protocol decoder supports the UART command protocol spoken by modules equipped with an [https://espressif.com/en/products/esp8266/ ESP8266] WiFi transceiver chip.
<div style="background-color: lightgrey; border: solid thin grey;">
Because of various problems with the UART commands
(random lockups, no escaping of special characters, responses of multiple commands mixing up, ...),
the work on this decoder has stopped.
If you own such a chip, you are probably better off by directly reprogramming it's CPU,
[http://hackaday.com/2015/03/18/how-to-directly-program-an-inexpensive-esp8266-wifi-module/ this article]
provides a good starting point.
</div>
== Hardware ==
The ESP8266 chip contains an [http://ip.cadence.com/ipportfolio/tensilica-ip/xtensa-customizable Xtensa] LX106 CPU and a radio for IEEE 802.11b/g/n.
=== Modules ===
Various online marketplaces sell modules containing the ESP8266 (and a few assisting components) that comes preprogrammed with a TCP/IP stack that can be controlled with commands send via RS232. There seem to be eleven different types of modules around, called "ESP-01" to "ESP-11" (see [http://www.esp8266.com/viewtopic.php?f=5&t=28&start=20#p1761 this post]).
* ESP-01
<blockquote>
Connector: 2x4pin male 2.54mm header
{|style="border-width: 0px"
| style="width: 300px" |
  {| border="0" style="margin-top: 0px; font-size: smaller; text-align: center" class="alternategrey sigroktable"
  |+ Connector pinout
  |-
    ! Function
    ! Pin
    ! style="border-left:2px solid gray" | Pin
    ! Function
  |-
    | <div>{{ESP8266EXpin|26}}</div>
    | 1
    | style="border-left:2px solid gray" | 2
    | GND
  |-
    | <div>{{ESP8266EXpin|7}}</div>
    | 3
    | style="border-left:2px solid gray" | 4
    | <div>{{ESP8266EXpin|14}}</div>
  |-
    | <div>{{ESP8266EXpin|32}}</div>
    | 5
    | style="border-left:2px solid gray" | 6
    | <div>{{ESP8266EXpin|15}}</div>
  |-
    | VCC
    | 7
    | style="border-left:2px solid gray" | 8
    | <div>{{ESP8266EXpin|25}}</div>
  |}
  <small>(Note: The PCB has two square pads at the pin header, so it's not clear which one should be pin number 1. The table above assumes that the module is oriented as shown in the picture from the top, with the antenna on the right side, pin 1 is then in the top left corner and pin 8 next to the SPI flash chip.)</small>
| style="vertical-align: top; padding-left: 30px" |
  <gallery>
  File:ESP-01.jpg|<small>ESP-01, top</small>
  File:ESP-01_flash.jpg|<small>[http://www.gigadevice.com/product/detail/5/119.html GigaDevice GD25Q40B] 4Mbit SPI flash</small>
  </gallery>
|}
</blockquote>
* ESP-02
<blockquote>
Connectors: 4 pin castellated holes on both sides (2.54 distance)
{|style="border-width: 0px"
|
  {| border="0" style="margin-top: 0px; font-size: smaller; text-align: center" class="alternategrey sigroktable"
  |+ Pinout of left connector
  |-
    ! Pin
    ! Function
  |-
    | 1
    | GND
  |-
    | 2
    | <div>{{ESP8266EXpin|25}}</div>
  |-
    | 3
    | <div>{{ESP8266EXpin|26}}</div>
  |-
    | 4
    | VCC
  |}
|
  {| border="0" style="margin-top: 0px; font-size: smaller; text-align: center" class="alternategrey sigroktable"
  |+ Pinout of right connector
  |-
    ! Pin
    ! Function
  |-
    | 1
    | <div>{{ESP8266EXpin|32}}</div>
  |-
    | 2
    | <div>{{ESP8266EXpin|14}}</div>
  |-
    | 3
    | <div>{{ESP8266EXpin|15}}</div>
  |-
    | 4
    | <div>{{ESP8266EXpin|7}}</div>
  |}
| style="vertical-align: top; padding-left: 30px" |
  <gallery>
  File:ESP-02.jpg|<small>ESP-02, top</small>
  </gallery>
|}
</blockquote>
* ESP-03
<blockquote>
Connectors: 7 pin castellated holes on both sides (2mm distance)
{|style="border-width: 0px"
|
  {| border="0" style="margin-top: 0px; font-size: smaller; text-align: center" class="alternategrey sigroktable"
  |+ Pinout of left connector
  |-
    ! Pin
    ! Function
  |-
    | 1
    | VCC
  |-
    | 2
    | <div>{{ESP8266EXpin|9}}</div>
  |-
    | 3
    | <div>{{ESP8266EXpin|10}}</div>
  |-
    | 4
    | <div>{{ESP8266EXpin|12}}</div>
  |-
    | 5
    | <div>{{ESP8266EXpin|13}}</div>
  |-
    | 6
    | <div>{{ESP8266EXpin|14}}</div>
  |-
    | 7
    | <div>{{ESP8266EXpin|15}}</div>
  |}
|
  {| border="0" style="margin-top: 0px; font-size: smaller; text-align: center" class="alternategrey sigroktable"
  |+ Pinout of right connector
  |-
    ! Pin
    ! Function
  |-
    | 1
    | <div>{{ESP8266EXpin|2}}</div>
  |-
    | 2
    | <div>{{ESP8266EXpin|7}}</div>
  |-
    | 3
    | <div>{{ESP8266EXpin|8}}</div>
  |-
    | 4
    | <div>{{ESP8266EXpin|25}}</div>
  |-
    | 5
    | <div>{{ESP8266EXpin|26}}</div>
  |-
    | 6
    | n.c.
  |-
    | 7
    | GND
  |}
| style="vertical-align: top; padding-left: 30px" |
  <gallery>
  File:ESP-03.jpg|<small>ESP-03, top</small>
  </gallery>
|}
</blockquote>
* ESP-04
<blockquote>
Connectors: 7 pin castellated holes on both sides (2mm distance), same pinout as ESP-03
  <gallery>
  File:ESP-04.jpg|<small>ESP-04, top</small>
  </gallery>
</blockquote>
* ESP-05
<blockquote>
Connectors: 1x5pin pads (2.54mm distance), U.FL antenna connector
{|style="border-width: 0px"
|
  {| border="0" style="margin-top: 0px; font-size: smaller; text-align: center" class="alternategrey sigroktable"
  |+ Connector pinout
  |-
    ! Pin
    ! Function
  |-
    | 1
    | <div>{{ESP8266EXpin|32}}</div>
  |-
    | 2
    | GND
  |-
    | 3
    | <div>{{ESP8266EXpin|25}}</div>
  |-
    | 4
    | <div>{{ESP8266EXpin|26}}</div>
  |-
    | 5
    | VCC
  |}
| style="vertical-align: top; padding-left: 30px" |
  <gallery>
  File:ESP-05.jpg|<small>ESP-05, top</small>
  </gallery>
|}
</blockquote>


== Resources ==
== Resources ==
Line 21: Line 239:
* [https://github.com/esp8266/esp8266-wiki/wiki/Pin-definition ESP8266 pinout]
* [https://github.com/esp8266/esp8266-wiki/wiki/Pin-definition ESP8266 pinout]
* [http://zeptobars.ru/en/read/Espressif-ESP8266-wifi-serial-rs232-ESP8089-IoT Die shots of the chip]
* [http://zeptobars.ru/en/read/Espressif-ESP8266-wifi-serial-rs232-ESP8089-IoT Die shots of the chip]
[[Category:Protocol decoder]]
[[Category:UART]]

Latest revision as of 23:42, 20 March 2015

esp8266
ESP8266 closeup.jpg
Name ESP8266
Description WiFi Serial Transceiver.
Status stalled
License GPLv2+
Source code decoders/
Input uart
Output esp8266
Probes
Optional probes

The esp8266 protocol decoder supports the UART command protocol spoken by modules equipped with an ESP8266 WiFi transceiver chip.

Because of various problems with the UART commands (random lockups, no escaping of special characters, responses of multiple commands mixing up, ...), the work on this decoder has stopped. If you own such a chip, you are probably better off by directly reprogramming it's CPU, this article provides a good starting point.

Hardware

The ESP8266 chip contains an Xtensa LX106 CPU and a radio for IEEE 802.11b/g/n.

Modules

Various online marketplaces sell modules containing the ESP8266 (and a few assisting components) that comes preprogrammed with a TCP/IP stack that can be controlled with commands send via RS232. There seem to be eleven different types of modules around, called "ESP-01" to "ESP-11" (see this post).

  • ESP-01

Connector: 2x4pin male 2.54mm header

Connector pinout
Function Pin Pin Function
U0TXD
1 2 GND
CHIP_EN
3 4
GPIO2
EXT_RSTB
5 6
GPIO0
VCC 7 8
U0RXD

(Note: The PCB has two square pads at the pin header, so it's not clear which one should be pin number 1. The table above assumes that the module is oriented as shown in the picture from the top, with the antenna on the right side, pin 1 is then in the top left corner and pin 8 next to the SPI flash chip.)

  • ESP-02

Connectors: 4 pin castellated holes on both sides (2.54 distance)

Pinout of left connector
Pin Function
1 GND
2
U0RXD
3
U0TXD
4 VCC
Pinout of right connector
Pin Function
1
EXT_RSTB
2
GPIO2
3
GPIO0
4
CHIP_EN
  • ESP-03

Connectors: 7 pin castellated holes on both sides (2mm distance)

Pinout of left connector
Pin Function
1 VCC
2
MTMS
3
MTDI
4
MTCK
5
MTDO
6
GPIO2
7
GPIO0
Pinout of right connector
Pin Function
1
LNA
2
CHIP_EN
3
XPD_DCDC
4
U0RXD
5
U0TXD
6 n.c.
7 GND
  • ESP-04

Connectors: 7 pin castellated holes on both sides (2mm distance), same pinout as ESP-03

  • ESP-05

Connectors: 1x5pin pads (2.54mm distance), U.FL antenna connector

Connector pinout
Pin Function
1
EXT_RSTB
2 GND
3
U0RXD
4
U0TXD
5 VCC

Resources