Categories
ESP32 ESP8266 (ESP-01/01S) Microcontrollers Security

MAC Address Randomization

Resources

https://source.android.com/devices/tech/connect/wifi-mac-randomization#:~:text=MAC%20randomization%20prevents%20listeners%20from,and%20Wi%2DFi%20RTT%20operations.

Categories
ESP8266 (ESP-01/01S) Microcontrollers

ESP8266 WiFi Sniffing

Resources

https://github.com/SpacehuhnTech/esp8266_deauther

https://www.varonis.com/blog/hacking-wi-fi-with-the-esp8266/

https://github.com/spacehuhn/ArduinoPcap

https://github.com/spacehuhn/DeauthDetector

https://cifertech.net/detect-deauth-attacks-on-wi-fi-network-using-esp8266/

https://maker.pro/arduino/projects/visitor-flow-rate-counting-with-esp32

https://github.com/RicardoOliveira/FriendDetector

Categories
ESP8266 (ESP-01/01S) Microcontrollers

FreeRTOS and ESP8266 (E-12)

https://www.freecodecamp.org/news/how-to-get-started-with-freertos-and-esp8266-7a16035ddd71/

Categories
ESP8266 (ESP-01/01S) Microcontrollers

Espresso Lite V2.0 (Discontinue)

ESPresso Lite V2.0
Jual Perangkat Elektronik Lainnya Espresso Lite V2.0 -ESP8266  Arduino-compatible Wi-Fi board- di Lapak Erica Aimee | Bukalapak

Espresso Lite V2.0 Specs and Features:

  • Features Espressif System’s ESP8266 WROOM-02 Wi-Fi module (with 4MB flash)
  • Design for IoT with free espert.io cloud and app service
  • Support the Arduino IDE (boards manager) and libraries
  • Auto program loading from Arduino IDE, using UC00A (or other compatible USB to Serial)
  • Vin: 5 to 12VDC
  • Operating Voltage: 3.3VDC
  • On board 3.3V Voltage Regulator with maximum current of 800mA continuous, 1A peak
  • One Reset button, two User Programmable buttons
  • WROOM-02 module is FCC, CE & TELEC certified
  • Breadboard friendly breakout pins
  • Ready pads for I2C Oled panel

WROOM-02 Specs and Features:

  • Operating Voltage: 3.0 to 3.6VDC
  • Operating Current: Average = 80mA
  • IEEE 802.11b/g/n at 2.4 GHz
  • WiFi mode: SoftAP/Station/SoftAP + Station
  • Security: WPA/WPA2
  • Encrytion: WEP/TKIP/AES
  • Integrated low power 32-bit MCU
  • Integrated 10-bit ADC
  • Integrated TCP/IP protocol stack
  • Integrated TR switch, balun, LNA, power amplifier and matching network
  • Integrated PLL, regulators, and power management units
  • Various interfaces available, including SDIO, HSPI, UART, I2C, I2S, IR, PWM, GPIO, etc.
  • Supports antenna diversity
  • Deep sleep power <10uA, Power down leakage current < 5uA
  • Wake up and transmit packets in < 2ms
  • Standby power consumption of < 1.0mW (DTIM3)
  • +20dBm output power in 802.11b mode
  • Operating temperature range -40C ~ 125C
  • FCC, CE and TELEC certified

ESP-WROOM-02 Pins

Uploading Arduino IDE Binary Code / Firmware Using USB-UART

ESPresso Lite V2 with AT Firmware | Tutorials of Cytron Technologies

Categories
ESP8266 (ESP-01/01S) Microcontrollers

ESP8266EX

External Flash


ESP8266EX uses external SPI flash to store user programs and supports up to 16 MB memory capacity theoretically.

The minimum flash memory of ESP8266EX is shown below:

  • OTA disabled: 512 kB at least
  • OTA enabled: 1 MB at least

Programming Mode

Categories
ESP8266 (ESP-01/01S) Microcontrollers

ESP8266/8265 Series Chart

Categories
ESP8266 (ESP-01/01S) Microcontrollers

Blinking LED (external)

Components

  • 1 x A-i Thinker Technology ESP-01 microcontroller based on ESP8266EX
    • 4Mbit (512 Kb) external flash memory
    • Espressif firmware
  • 1 x Red LED
  • 1 x 10K resistor
  • Jumper wires
    • Male to Female
    • Female to Female
  • 1 x Breadboard (830 or 400 holes)
  • 1 x Breadboard Power Module MB102 (USB Input: 5V and Output: 3.3V)
    • AMS1117 LDO circuit included
  • 1 x ESP01/01S USB Programmer Adapter (CP2104 USB-UART Chip)
    • Programming Mode (Enable)
    • Reset button

Programming Utility, ESP8266 Library and USB-UART driver (MacOS Catalina)

Circuit

EasyEda

Power Up the Circuit and Enable the ESP8266 chip

MB102 Breadboard Power Module provides 3.3V for the circuit. CH_PD pin connected to the 3.3v source to enable the ESP8266EX chip

Code (Output to GPIO 2)

On the Arduino IDE’s Tool Menu, setup the Builtin Led = 2 and the sketch will take the value 2 for LED_BUILTIN

/*
  ESP8266 Blink by Simon Peter
  Blink the blue LED on the ESP-01 module
  This example code is in the public domain

  The blue LED on the ESP-01 module is connected to GPIO1
  (which is also the TXD pin; so we cannot use Serial.print() at the same time)

  Note that this sketch uses LED_BUILTIN to find the pin with the internal LED
*/

void setup() {
  pinMode(LED_BUILTIN, OUTPUT);     // Initialize the LED_BUILTIN pin as an output
}

// the loop function runs over and over again forever
void loop() {
  digitalWrite(LED_BUILTIN, LOW);   // Turn the LED on (Note that LOW is the voltage level
  // but actually the LED is on; this is because
  // it is active low on the ESP-01)
  delay(1000);                      // Wait for a second
  digitalWrite(LED_BUILTIN, HIGH);  // Turn the LED off by making the voltage HIGH
  delay(2000);                      // Wait for two seconds (to demonstrate the active low LED)
}

Upload (binary code) to external flash memory (512 kb) via ESP01 USB Programmer Adapter

Resources

Arduino IDE software

https://www.arduino.cc/en/software

A-i Thinker

https://docs.ai-thinker.com/en/esp8266

ESP8266EX Datasheet

https://www.espressif.com/sites/default/files/documentation/0a-esp8266ex_datasheet_en.pdf

ESP8266 Library (Arduino IDE)

https://github.com/esp8266/Arduino

USB-UART CP2401 Drivers

https://www.silabs.com/developers/usb-to-uart-bridge-vcp-drivers

Espressif firmware

https://www.espressif.com/en/support/download/at

8266 Community

https://www.esp8266.com/

Categories
ESP8266 (ESP-01/01S) Microcontrollers

ESP01/01S

Difference ESP01/01s and ESP8266 NodeMCU/D1 Wemos

ESP01/01s does not have the CH340C USB to UART component that uploads the Arduino IDE sketch compiled in binary from PC’s local storage to ESP01/01s external flash memory (512Kb or 1MB via PC’s USB port.

External Flash Memory (ESP01/ESP01s)

512 kb / 4Mbit (ESP-01)

1 Mb / 8Mbit (EPS-01s)

Note: New ESP01 maybe shipped with 1 Mb / 8Mbit

ESP01/ESP01S Pin Out

Blue LED (built-in aka Comm LED)

The blue LED is on TX line (GPIO 01). Serial.println() in your sketch will NOT work at same time.

Resources

ESP8266EX Datasheet

https://www.espressif.com/sites/default/files/documentation/0a-esp8266ex_datasheet_en.pdf

ESP8266 Wifi Community

https://www.esp8266.com/wiki/doku.php

Categories
ESP8266 (ESP-01/01S) Microcontrollers

D1 Mini V3.0(Wemos)

D1_MINI_IMG
Source: www.wemos.cc

A mini WiFi board with 4MB flash based on ESP-8266EX.

Technical Spec and Features

  • Clock Speed: 80/160Mhz
  • Operating Voltage: 3.3V
  • Flash: 4M Bytes
  • Digital I/O Pins: 11
  • interrupt/pwm/I2C/
  • Analog Input Pins: 1(Max input: 3.2V)
  • One-wire supported(except D0)
  • Micro USB Connector: 1
  • Compatible with MicroPython, Arduino, nodemcu
  • Size (W * H): 32.2 * 25.6mm
  • Weight: 3g

UART Chip Driver (CH340) for D1 Mini board

MacOSX 10.15 >

For Mac OSX 10.14 and greater, do not install any supplementary drivers. The drivers are now included with OSX. Installing the CH340 will cause a conflict and you will not be able to connect.

Windows Drivers

https://github.com/wemos/ch340_driver

Configure the Arduino IDE for D1 Mini board

  • Start the Arduino IDE
  • From the main menu select Arduino > Preferences…
  • For Additional Board Manager URLs enter in the field on its own line:
https://arduino.esp8266.com/stable/package_esp8266com_index.json

Select your board

  • Select Tools > Board: *
  • Select your board (I selected LOLIN(WEMOS) D1 R2 & Mini)

Pin (all IO pins @3.3v)

PinFunctionESP-8266 Pin
TXTXDTXD
RXRXDRXD
A0Analog input, max 3.2VA0
D0IOGPIO16
D1IO, SCLGPIO5
D2IO, SDAGPIO4
D3IO, 10k Pull-upGPIO0
D4IO, 10k Pull-up, BUILTIN_LEDGPIO2
D5IO, SCKGPIO14
D6IO, MISOGPIO12
D7IO, MOSIGPIO13
D8IO, 10k Pull-down, SSGPIO15
GGroundGND
5V5V
3V33.3V3.3V
RSTResetRST
Wemos D1 mini pinout | Electronics projects diy, Development board, Tutorial
Source: RandomNerdTutorials

Schematic

Source: www.wemos.cc

Resources

https://github.com/wemos

https://www.wemos.cc/en/latest/

Categories
ESP8266 (ESP-01/01S) Microcontrollers

Flash ESP8266 firmware using USB ESP01 Programmer Adapter (Windows 10)

USB ESP01 Programmer Adapter (Hardware) and CP201x drivers installed on PC/Laptop.

  • USB Type A interface
  • One 2x4P 2.54mm female header
  • One 2x4P 2.54mm male header
  • On board Reset button for ESP01
  • CP201x Chip

Mount the EPS01 module (Blue board, Flash 4MBit) on the header of USB ESP01 Programmer Adapter

Connect the USB ESP01 Programmer adapter to the USB port of the Windows installed PC/Laptop

Download the ESP8266’s Flash Download Tool (Espressif)

https://www.espressif.com/en/support/download/other-tools

Use the extract tool to extract the compressed file from your download folder

Download the ESP8266 Firmware (ESP8266 Forum)

https://bbs.espressif.com/index.php

Join the ESP8266 forum, On the Download section, choose SDK and choose “ESP8266_NONOS_SDK_V2.0.0 download link to download the firmware. Then use the extract tool to extract the compressed file in your download folder.

Setup the Flash Tool

SPI SPEED26.7MHz
SPI MODEQIO
FLASH SIZE4Mbit
blank.bin0x78000
esp_init_data_default.bin0x7C000
blank.bin 0x7A000
blank.bin 0x7E000
eagle.flash.bin0x00000
eagle.irom0text.bin0x10000
COMCOM3 (a Port value from Device Manager)
BAUD115200

Putty (Serial Terminal Software)

AT+GMR command to check the SDK version installed.

Type AT+GMR then follow by CTRL+M CTRL+J