User Tools

Site Tools


devices:esp8266

This is an old revision of the document!


ESP8266 Node

Wi-Fi enabled endpoint device based on ESP8266 microcontroller. It has modular design capabla of connecting many different sensors or other electronics.

Specificatons:

Microcontroller ESP8266
Operating voltage 3.3 V
Input voltage 4.5 V - 12 V
Power consumption ???
Input voltage terminal 5.5 mm center positive jack
Board dimensions 45.72 mm x 45.72 mm
Sensor connection 1x RJ-11 socket
User interface Notification LED

List of compatible sensors

  • BMP180 Barometric pressure sensor.
  • DHT22 Humidity and temperature sensor.
  • DHT11 Humidity and temperature sensor.
  • BH1750FVI Ambient light sensor.
  • DS18B20 Temperature sensor.

RJ-11 pinout

Pin Connection
1 RXD
2 GND
3 GPIO2
4 GPIO14
5 VCC
6 TXD

RJ-11 socket is connected to two GPIO pins, 3.3 V and GND. Pins 1 and 6 are used for debugging purposes. Its recommended to use 6P4C plug to connect sensors.

Power supply

Node can be powered any power supply with output voltage between 4.5 - 12 V. There are few tested solutions:

  • 12V power supply for LED strips. Can be bought on eBay.
  • USB phone charger with modified cable.

Electronics

Note: This is picture of v0.1.0 PCB version. Current version looks differently.

Features

  • ISP header for convenient programming. See programmer below.
  • PWR jumper is used to break connection between DC-DC converter and rest of the components. It is useful to allow user to adjust correct output voltage on the module.
  • Tactile button is used to enter ESP8266 into programming mode without using DTR and RST pins on the ISP header.
  • ISPPWR jumper allows user to select connection of ISP VTG pin and power branch of the board. User can select between VIN branch, 3V3 branch or disable connection entirely.
  • Optional pull-up resistors for data lines can be soldered on the PCB (R5 and R6).

Buy PCB

You can buy PCB at Dirt Cheap PCB store.

Bill of materials

Part Pcs Value Package Comment
ESP-12 1 Or other ESP board with same pinout.
LM2596 DC-DC module 1 Power supply module.
5.5 mm power jack 1 Power supply connector.
RJ-11 socket 1 Sensor socket.
Tactile button 1 6 mm THT ESP8266 programming mode.
Electrolytic capacitor 1 220 uF E2,5-6
Ceramic capacitor 1 100 nF C0805
Resistor 3 12K R0805
Resistor 1 470R R0805
Resistor 1 82R R0805
Resistor 2 R0805 Optional pull-up resistors.
NPN Transistor 2 SOT23-BEC
2×3 Pin header 1 2.54 mm Programming header.
1×2 Pin header 1 2.54 mm Power supply enable jumper.
1×3 Pin header 1 2.54 mm Power supply select for programming header.
LED 1 Red 1206 Notification LED.
Jumper 2 2.54 mm

Eagle files

Schematics

Board design

Board design - top

Board design - bottom

You can download Eagle files at GitHub repository

3D printed case

FIXME Add case STL files.

Firmware

Download source code:

$ git clone https://github.com/mqopen/esp8266-node

Configure source code tree:

$ cd esp8266-node
esp8266-node$ make menuconfig

Menuconfig interface

In menuconfig, configure device name, location, MQTT setting and select which sensor you'r using. Also configure correct pins in Bus Settings submenu.

Finally upload firmware into your hardware:

esp8266-node$ make upload

Programmer

FIXME ESP8266 programmer is not tested yet.

For convenient programming of these devices you can build programmer. It has very similar header like AVR ISP, with proper modifications.

Pin AVR ISP ESP8266 ISP
1 MOSI TXD
2 VTG VTG
3 GND GND
4 GND GND
5 RESET RST
6 GND GND
7 SCK DTR
8 GND GND
9 MISO RXD
10 GND GND

Schematics

Buy PCB

You can buy PCB at Dirt Cheap PCB store

Bill of materials

Part Pcs Value Package Comment
FT232RL 1 SSOP28
USB Mini SMD 1 USB-MINIB
LED 1 Blue 0805 Power LED.
LED 1 Green 0805 RX LED.
LED 1 Red 0805 TX LED.
Resistor 2 1 K 0805
Resistor 2 330 R 0805
Ceramic capacitor 2 100 nF 0805
Tantalum capacitor 1 10 uF 3216-18
2×5 Pin header (box) 1 2.54 mm ISP header.
1×3 Pin header 1 2.54 mm PWR select jumper.
devices/esp8266.1463347791.txt.gz · Last modified: 2016/05/15 21:29 by buben