STEP 1 / 6ESP + IOT

ESP8266 WiFi Temperature Logger

This is a very simple demo that shows how the ESP8266 and Arduino can be used with a digital temperature sensor to update a remote server ( https://thingspeak.com/ ). The Internet of Thin…

ESP8266 WiFi Temperature Logger - source illustration from page 933
PROJECT#407
TRACKIoT
PARTS06
STAGES06
STEP 1 / 6 · Overview

Know the mission before touching a wire.

Understand what you are making, prepare the right tools, and make the workbench safe.

01

Project details

ESP8266 WiFi Temperature Logger is a iot project. This is a very simple demo that shows how the ESP8266 and Arduino can be used with a digital temperature sensor to update a remote server ( https://thingspeak.com/ ). The Internet of Thin…

Source pages
932-936
Named parts
6
Build goal
Working, tested prototype
02

Tools you need

  • Digital multimeter
  • Wire stripper and side cutters
  • Soldering iron with a fine tip
  • Current-limited bench supply
  • Computer with a data-capable USB cable

Use eye protection, good lighting, and a clean insulated surface throughout the build.

03

Safety precautions

  • Disconnect every power source before changing a connection.
  • Check component polarity, pinout, and supply voltage twice.
  • Use a current limit for the first power-up.
  • Keep liquids, loose metal, and uninsulated wires away from the bench.
Ready to continue?
STEP 2 / 6 · Parts library

Gather, identify, and understand every part.

Use the standardized inventory, then open What's this? to learn each part's role, advantages, limitations, handling, and specifications.

NAMED PROJECT INVENTORY6 PART LINES
PARTTYPEQTYREADY
Mx ESP8266MODULE1
What's this?Image, role, pros, cons, handling & specifications
ESP8266 WiFi Temperature Logger - source illustration from page 933MODULE LEARNING VIEW

x ESP8266

A programmable controller that reads inputs, makes decisions, and drives the project's outputs.

What it does here

It is the control centre and must use the documented board, pin map, supply, and logic level.

Buy / compare this part

Advantages

  • Reprogrammable and reusable
  • Large learning ecosystem
  • Complex behaviour remains changeable

Limitations

  • GPIO voltage and current are limited
  • Some pins affect boot or communication
  • Loads normally need a driver

Handling

  • Disconnect power before rewiring
  • Avoid static discharge
  • Never power motors, relays, or pumps directly from GPIO

Specifications to verify

  • Use the exact model, value, package, and rating listed for x ESP8266; similar-looking parts are not always interchangeable.
  • Confirm operating voltage, logic level, pinout, memory, USB interface, and maximum GPIO current.
Mx Arduino Pro Mini 328 - 3.3V/8MHzMODULE1
What's this?Image, role, pros, cons, handling & specifications
ESP8266 WiFi Temperature Logger - source illustration from page 933MODULE LEARNING VIEW

x Arduino Pro Mini 328 - 3.3V/8MHz

A programmable controller that reads inputs, makes decisions, and drives the project's outputs.

What it does here

It is the control centre and must use the documented board, pin map, supply, and logic level.

Buy / compare this part

Advantages

  • Reprogrammable and reusable
  • Large learning ecosystem
  • Complex behaviour remains changeable

Limitations

  • GPIO voltage and current are limited
  • Some pins affect boot or communication
  • Loads normally need a driver

Handling

  • Disconnect power before rewiring
  • Avoid static discharge
  • Never power motors, relays, or pumps directly from GPIO

Specifications to verify

  • Use the exact model, value, package, and rating listed for x Arduino Pro Mini 328 - 3.3V/8MHz; similar-looking parts are not always interchangeable.
  • Confirm operating voltage, logic level, pinout, memory, USB interface, and maximum GPIO current.
Mx DS18B20 Digital Temperature SensorMODULE1
What's this?Image, role, pros, cons, handling & specifications
ESP8266 WiFi Temperature Logger - source illustration from page 933MODULE LEARNING VIEW

x DS18B20 Digital Temperature Sensor

A sensor converts a physical condition into an electrical signal the circuit can measure.

What it does here

It provides project input as an analogue, digital, resistive, frequency, or calibrated signal.

Buy / compare this part

Advantages

  • Adds real-world awareness
  • Can usually be tested independently
  • Often supports calibration

Limitations

  • Readings can drift
  • Placement affects results
  • Some sensors need warm-up or calibration

Handling

  • Protect the sensing surface
  • Observe supply voltage and polarity
  • Keep signal leads away from noisy power wiring

Specifications to verify

  • Use the exact model, value, package, and rating listed for x DS18B20 Digital Temperature Sensor; similar-looking parts are not always interchangeable.
  • Confirm supply range, output type, measurement range, accuracy, response time, and pin order.
Px 4.7k resistorPASSIVE1
What's this?Image, role, pros, cons, handling & specifications
Axial through-hole resistorPASSIVE LEARNING VIEW

x 4.7k resistor

A passive component sets current, voltage, timing, filtering, or signal behaviour without adding gain.

What it does here

Its exact value and tolerance determine how the surrounding stage behaves.

Buy / compare this part

Advantages

  • Simple and dependable
  • Low cost
  • Easy to measure before installation

Limitations

  • A wrong value can stop or damage the circuit
  • Ratings must not be exceeded
  • Polarized parts require correct orientation

Handling

  • Measure unclear values
  • Observe capacitor polarity
  • Avoid overheating leads while soldering

Specifications to verify

  • Use the exact model, value, package, and rating listed for x 4.7k resistor; similar-looking parts are not always interchangeable.
  • Confirm value, tolerance, power or voltage rating, polarity, and package size.
Ppower source (3.3V up to 12V, I used a 9v)PART1
What's this?Image, role, pros, cons, handling & specifications
ESP8266 WiFi Temperature Logger - source illustration from page 933PART LEARNING VIEW

power source (3.3V up to 12V, I used a 9v)

A named project component whose exact role is defined by the source circuit and build guide.

What it does here

It performs a documented electrical, control, interface, or construction function in this project.

Buy / compare this part

Advantages

  • Selected for this project
  • Can be checked independently
  • Supports modular troubleshooting

Limitations

  • Substitutes may differ
  • Generic names can hide variants
  • Pinouts and ratings vary

Handling

  • Compare the received part with the source
  • Keep it labelled
  • Do not force connectors or adjusters

Specifications to verify

  • Use the exact model, value, package, and rating listed for power source (3.3V up to 12V, I used a 9v); similar-looking parts are not always interchangeable.
  • Confirm dimensions, ratings, connection method, polarity, and environmental limits.
Phttp://www.electrodragon.com/w/Wi07c#Firmware uploading tool Using aPART1
What's this?Image, role, pros, cons, handling & specifications
ESP8266 WiFi Temperature Logger - source illustration from page 933PART LEARNING VIEW

http://www.electrodragon.com/w/Wi07c#Firmware uploading tool Using a

A named project component whose exact role is defined by the source circuit and build guide.

What it does here

It performs a documented electrical, control, interface, or construction function in this project.

Buy / compare this part

Advantages

  • Selected for this project
  • Can be checked independently
  • Supports modular troubleshooting

Limitations

  • Substitutes may differ
  • Generic names can hide variants
  • Pinouts and ratings vary

Handling

  • Compare the received part with the source
  • Keep it labelled
  • Do not force connectors or adjusters

Specifications to verify

  • Use the exact model, value, package, and rating listed for http://www.electrodragon.com/w/Wi07c#Firmware uploading tool Using a; similar-looking parts are not always interchangeable.
  • Confirm dimensions, ratings, connection method, polarity, and environmental limits.
Ready to continue?
STEP 4 / 6 · Source code

Confirm the hardware-only control path.

This project does not include firmware in the source. The circuit itself provides the required behaviour.

01

How to connect

  1. Match every controller label to the circuit view and source pin map.
  2. Join grounds before signal wires when separate low-voltage supplies are used.
  3. Keep motors, relays, pumps, and other loads on a suitable driver and external supply.

Common mistakes

Reversed VCC/GND, board-label versus GPIO-number confusion, missing common ground, and charge-only USB cables.

Troubleshoot

Disconnect loads, continuity-test one path at a time, then test with a current limit.

02

Software preparation

No IDE, board package, library, or firmware upload is required for this project.

If you add a programmable controller as an extension, document its pin map separately.

03

How to upload code

The original design is implemented entirely in hardware, so proceed after verifying the circuit and supply.

Ready to continue?
STEP 5 / 6 · Build

Assemble, deploy, test, and troubleshoot.

Use the complete source notes in build order, then pass the final checks before calling the project finished.

ASSEMBLY

Build in functional stages

  • Power and regulation
  • Controller or processing stage
  • Inputs and sensors
  • Outputs and loads
  • Enclosure and strain relief
TEST

Power up safely

  • Inspect unpowered continuity first
  • Apply the lowest safe current limit
  • Measure supply rails before signals
  • Add one load at a time
  • Record expected and actual results
TROUBLESHOOT

Work from simple to complex

  • Confirm power, ground, polarity, and orientation
  • Compare each pin with the source
  • Test inputs separately from outputs
  • Replace only one variable at a time
  • Power off before every correction
PROJECT-SPECIFIC BUILD NOTES

Follow the documented instructions.

These notes come from this project's source and remain in their original order.

01

Project overview

Project build note

This is a very simple demo that shows how the ESP8266 and Arduino can be used with a digital temperature sensor to update a remote server ( https://thingspeak.com/ ). The Internet of Things (r)evolution is going through some very exciting times. Prices are going down, and people in the Maker community are excited to make the next generation of connected devices. The next set-up could be done for less than $20. This uses "expensive" components you can buy off the shelf, like Arduino, but you could programme your own MCU with UART support and make it cheaper.

02

Components Required

Project build note

1 x ESP8266 1 x Arduino Pro Mini 328 - 3.3V/8MHz 1 x DS18B20 Digital Temperature Sensor 1 x 4.7k resistor 1 power source (3.3V up to 12V, I used a 9v) This is when things started to get hard. I spent a lot of time trying out different ways of setting things up. Note that the ESP8266 comes in two different forms. The first one has the LEDs right next to the pins on the board. The LEDs are by the antenna on the newer second one. The second one is mine. When I loaded V0.922, which let me change the baud rate to 9600, I got the best results. To load this firmware, do these things.

http://www.electrodragon.com/w/Wi07c#Firmware uploading tool Using a USB-to-TTL cable and a terminal like CoolTerm is the best way to test a

03

connection. To change the baud rate, use this command

Project build note

AT+CIOBAUD=9600 These are the pin connections I used to connect ESP8266 to USB-to-TTL. I powered the ESP8266 with the Arduino's 3.3v vcc, which is regulated. I know that the maximum output of Arduino vcc 3.3v is 150 mA and that the maximum output of ESP8266 is 240 mA. But at the time, I didn't have any other 3.3v that was stable. The ESP8266 is usually used at 70 mA. When you are uploading new firmware, don't forget to connect GPIO0 to GND. After that, take it out to get back to normal.

————————————————- UTXD --> RX (USB-to-TTL)

04

CH PD <—> VCC

Project build note

RST VCC --> VCC (power source) ————————————————-

GND --> GND (power source) GPIO2 GPIO0 URXD to TX (USB-to-TTL) ————————————————- *Note that USB-to-TTL GND to Arduino GND also had to be done. ESP8266 to Arduino ————————————————- UTXD --> RX Arduino

05

CH PD <—> VCC

Project build note

RST VCC --> VCC Arduino ————————————————- GND --> GND Arduino GPIO2 GPIO0 URXD --> TX Arduino ————————————————- Digital Temperature Sensor to Arduino ————————————————- Arduino GND — > DS18B20 GND(1) — > DS18B20 VDD (3) DS18B20 DQ(2) — > 4.7K R —> VCC Arduino 3.3v

ThinkSpeak is really cool. To start your own feed, just do these simple

06

things

Project build note

1. Sign up at https://thingspeak.com/ for a FREE account. 2. Click on Channels -> Set up a new channel (you can leave all defaults) 3. Go to API Keys and get your KEY 4. Test by typing http://api.thingspeak.com/update?key= into your browser. [THINGSPEAK KEY]&field1=0 5. Check your results at http://api.thingspeak.com/channels/ [CHANNEL ID]/feed.json?key= [THINGSPEAK KEY] You are now ready to begin sending data.

Ready to continue?
PROJECT ACHIEVED

You built ESP8266 WiFi Temperature Logger.

You followed the full workflow from understanding the mission to testing the finished project. That is a real engineering achievement - well done.

Send Sensor Data (DHT11 & BMP180) to ThingSpeak with an Arduino, Using Cable or WiFi (ESP8266) or Use ESP8266 Alone project thumbnail featuring Arduino, WS5100 EthernetShield, Thingspeak Account
NEXT IOT ADVENTURE

Send Sensor Data (DHT11 & BMP180) to ThingSpeak with an Arduino, Using Cable or WiFi (ESP8266) or Use ESP8266 Alone

Ready to reuse what you learned in another project from the same track?

Start this project
Browse all 500 projects