WiFi UNO ESP8266 WeMos D1 R1
Product information from Synacorp Technologies Sdn Bhd
Product Image Description
A photograph of the WiFi UNO ESP8266 WeMos D1 R1 development board. The board is rectangular with various electronic components soldered onto it. Key labels like 'RESET', '3.3V', 'GND', 'TX', 'RX', and GPIO pin numbers (e.g., D1, D2, D3, D4, D5, D6, D7, D8) are visible on the board. The microcontroller chip, ESP8266EX, is identifiable. The board is powered by WeMos.cc.
Description
The WiFi Uno, based on the ESP8266, offers a compact and user-friendly form factor. Its design is inspired by the classic Arduino Uno, making it familiar and easy to use for individuals with prior Arduino development experience. This familiarity translates to:
- Standard Dimensions: The WiFi Uno adheres to the standard dimensions of the Arduino Uno, measuring approximately 2.7 inches (68.6 mm) in length and 2.1 inches (53.3 mm) in width. This form factor is widely recognized and compatible with numerous Arduino accessories and shields.
- Arduino Compatibility: The board is designed for pin compatibility with the Arduino Uno, enabling seamless integration of Arduino shields and components. This compatibility streamlines the process of expanding projects with additional hardware.
- Familiar Layout: The arrangement of GPIO (General Purpose Input/Output) pins, power connectors, and other critical components closely mirrors that of the Arduino Uno. This layout facilitates easy connection and configuration of sensors, actuators, and other peripherals, similar to how one would work with an Arduino Uno.
Specifications
- Microcontroller: ESP-8266EX
- Operating Voltage: 3.3V
- Digital I/O Pins: 11
- Analog Input Pins: 1
- Clock Speed: 80MHz/160MHz
- Flash: 4M bytes
Coding Example: WiFi Scan
This section provides a code example for scanning WiFi networks using the ESP8266. The code is written in C++ for the Arduino IDE.
/*
* LOLIN (WeMos) D1 R1
* This sketch demonstrates how to scan WiFi networks.
* The API is almost the same as with the WiFi Shield library,
* the most obvious difference being the different file you need to include:
*/
#include <ESP8266WiFi.h>
void setup() {
Serial.begin(115200);
Serial.println(F("\nESP8266 WiFi scan example"));
// Set WiFi to station mode
WiFi.mode (WIFI_STA);
// Disconnect from an AP if it was previously connected
WiFi.disconnect();
delay(100);
}
void loop() {
String ssid;
int32_t rssi;
uint8_t encryptionType;
uint8_t *bssid;
int32_t channel;
bool hidden;
int scanResult;
Serial.println(F("Starting WiFi scan..."));
scanResult = WiFi.scanNetworks(/*async=*/false, /*hidden=*/true);
if (scanResult == 0) {
Serial.println(F("No networks found"));
} else if (scanResult > 0) {
// The loop to print results would typically go here, but is omitted for brevity in the original snippet.
// The 'Result' section below shows example output.
}
}
Example Output: WiFi Scan Results
The following output is an example of what would be displayed in the Arduino IDE's Serial Plotter when the WiFi scan code is executed. It lists detected WiFi networks with their channel, MAC address (BSSID), signal strength (RSSI), encryption type, and SSID.
12:19:18.417 -> 06: [CH 12] [D4:01:68:04:09:00] -78dBm V 802.11b/g/n WPS Legend Pets-2.4GHz@unifi
12:19:18.417 -> 07: [CH 14] [9E:A3:A9:90:6F:09] -72dBm * H 802.11b/g/n
12:19:18.435 -> 08: [CH 14] [9E:A3:A9:89:DB:DD] -67dBm * H 802.11b/g/n
12:19:18.435 -> 09: [CH 14] [08:3A:2F:14:38:1C] -70dBm * V 802.11b/g/n
12:19:18.435 -> 10: [CH 14] [9E:A3:A9:90:6F:06] -72dBm * H 802.11b/g/n
12:19:18.435 -> 11: [CH 14] [08:3A:2F:11:7C:39] -76dBm * V 802.11b/g/n NVR083a2f117c39
12:19:23.416 -> Starting WiFi scan...
12:19:25.605 -> 15 networks found:
12:19:25.605 -> 00: [CH 01] [40:86:CB:77:B4:52] -89dBmV 802.11b/g/n WPS Fusion1
12:19:25.605 -> 01: [CH 01] [D8:0D:17:89:4C:00] -91dBm * V 802.11b/g/n WPS leekeanseng-Maxis Fibre Internet
12:19:25.605 -> 02: [CH 01] [40:86:CB:77:B4:53] -89dBm * H 802.11b/g/n
12:19:25.605 -> 03: [CH 06] [46:D5:F2:27:C2:8A] -92dBm * V 802.11b/g/n WPS 4G-CPE_6687
12:19:25.605 -> 04: [CH 06] [30:F9:47:67:3D:4D] -69dBm * H 802.11b/g/n
12:19:25.605 -> 05: [CH 06] [32:F9:47:17:3D:4D] -69dBm * V 802.11b/g/n WPS MOHIDEEN@unifi
12:19:25.638 -> 06: [CH 10] [18:34:AF:03:F4:F7] -64dBm * V 802.11b/g/n WPS Synacorp-2.4G
12:19:25.638 -> 07: [CH 10) (FO:FE:6B:D3:04:C0] -81dBm V 802.11b/g/n GP-1324D
12:19:25.638 -> 08: [CH 10] [18:34:AF:04:20:BB] -70dBm * V 802.11b/g/n WPS Synacorp-2.4G
12:19:25.638 -> 09: [CH 12] [D4:01:68:04:09:D0] -79dBm * V 802.11b/g/n WPS Legend Pets-2.4GHz@unifi
12:19:25.671 -> 10: [CH 14] [9E:A3:A9:90:6F:06] -71dBm * H 802.11b/g/n
12:19:25.671 -> 11: [CH 14] [08:3A:2F:11:7C:39] -76dBm V 802.11b/g/n
12:19:25.671 -> 12: [CH 14] [9E:A3:A9:90:6F:09] -74dBm * H 802.11b/g/n
12:19:25.671 -> 13: [CH 14] [9E:A3:A9:89:DB:DD) -65dBm * H 802.11b/g/n
12:19:25.671 -> 14: [CH 14] [08:3A:2F:14:38:1C] -74dBm * V 802.11b/g/n NVR083a2f14381c