ESP8266 Evil Twin Wi-Fi Project

Wiring Schematic

View full-size circuit ↗
LT

YOUR PROJECT LEARNING PATH

Build it with confidence.

Progress saves on this device
01

Project overview

Know what you’re building before you start wiring.

Study the ESP8266 Evil Twin WiFi project as a wireless-security research demonstration involving Wi-Fi scanning, access-point simulation, and captive-portal concepts. It uses an ESP8266 board and browser interface to examine how users judge network trust.

The supplied sketch includes a captive-portal password form and deauthentication functionality. These features create security risks, so review and modify the code before testing or publishing this project.

Before you power up

Use only authorized lab networks and devices. Never collect real credentials, impersonate third-party networks, or disrupt other users.

PROJECT ROADMAP3 project stages
✓
Prepare your kitConfirm the components and tools
⌁
Assemble the circuitFollow the build steps in order
⌘
Upload and testCheck the output and resolve issues
Start the build
02

Components required

Gather these parts before you begin.

ESP8266 Development BoardRuns Wi-Fi scanning and hosts the local project interface.× 1
Micro USB CableConnects the board to your computer for power and firmware transfer.× 1
Computer with Arduino IDEUsed to inspect, edit, compile, and upload project firmware.× 1
Wi-Fi Enabled Test DeviceOpens the browser interface during authorized laboratory observations.× 1
Authorized Test NetworkProvides a controlled environment for permission-based Wi-Fi security studies.× 1
03

Build the project

Work through one focused step at a time. You can revisit any step whenever you need.

STEP 010 / 5 complete
BUILD STAGE 0120% of guide

Prepare the ESP8266 Development Board

Place the ESP8266 board on a nonconductive surface and connect it to your computer using a data-capable Micro USB cable. Plan testing around networks and devices you own or have explicit permission to examine.

No external sensors or resistors are listed in the README. The project uses the ESP8266's built-in Wi-Fi hardware and browser-served interface.

1 of 5
04

Software & tools

Install these before uploading the firmware.

Arduino IDEEdits, compiles, and uploads firmware to the ESP8266 development board.
ESP8266 Arduino CoreProvides board support and built-in Wi-Fi networking APIs.
ESP8266WiFi LibrarySupports wireless network management and network scanning functions.
DNSServer LibraryProvides DNS handling for controlled captive-portal demonstrations.
ESP8266WebServer LibraryServes local web pages and processes browser HTTP requests.
05

Expected output

Compare your build with the result described here.

FINAL CHECKPOINT

After a reviewed, safe version is uploaded, Serial Monitor can show startup messages and network scan results. The browser dashboard should present wireless metadata for authorized observation without requesting real Wi-Fi passwords.

The supplied ZIP is not in that safe state: its source includes a password submission form and deauthentication transmission code. Remove those functions before testing, demonstrating, or publishing the project.

06

Troubleshooting & fixes

Choose the issue that best matches what you’re seeing.

01Compilation fails in Arduino IDE
Try these checks

Confirm the ESP8266 Arduino Core is installed and select the correct board and serial port. Review compiler output and required headers; do not upload the original sketch unchanged.

02Wi-Fi scanning returns no networks
Try these checks

Test where wireless broadcasts are available, restart the board, and inspect serial diagnostics. Scan results provide observable network information only and do not establish authorization to interact with a network.

03Local dashboard cannot be accessed
Try these checks

Verify the reviewed build starts its HTTP server and use the address printed by Serial Monitor. Check the intended lab connection and ensure the demonstration does not imitate a third-party login page.

Let’s get your project working.

When you contact us, include the project name and the step where you got stuck.

Get project support