OpenELAB Wiki
  • 🚀Welcome to Our Wiki!
  • 1️⃣M5Stack
    • M5Stack Cardputer Kit w /M5StampS3
    • M5Stack Dial - ESP32-S3 Smart Rotary Knob
    • M5StickC PLUS2 ESP32 Mini IoT Development Kit
    • M5StickC PLUS ESP32-PICO Mini IoT Development Kit
    • M5Stack Core2 ESP32 IoT Development Kit for AWS IoT Kit
    • M5Stack Core2 ESP32 IoT Development Kit
    • M5Stack AtomS3 Lite ESP32S3 Dev Kit
    • M5Stack ATOMS3 Dev Kit w/ 0.85-inch Screen
    • M5Stack ATOM TailBat - Battery Accessory for ATOM
    • M5Stack ATOM Matrix ESP32 Development Kit
    • M5Stack ATOM Lite ESP32 IoT Development Kit
    • M5Stack ATOM Echo Smart Speaker Development Ki
    • M5Stack ENV III Unit with Temperature Humidity Air Pressure Sensor
    • M5Stack COMMU Module Extend RS485/TTL CAN/I2C Port
    • M5Stack ATOMIC PoE Base W5500
    • M5Stack Time-of-Flight Distance Unit (VL53L1X)
    • M5Stack LoRa Unit with Antenna(E220)
    • M5Stack Glass 2 Unit w/ 1.51inch Transparent OLED
    • M5Stack Temperature, Humidity, Pressure and Gas Sensor (BME688)
    • M5Stack Temperature Humidity Air Pressure Sensor (SHT40+BMP280)
    • M5Stack H-bridge Unit v1.1 (STM32F030)
    • M5Stack 8-Channel Servo Driver Unit (STM32F030)
    • M5Stack ATOMIC TTL-RS485 Base
    • M5Stack ATOMIC PortABC Extension Base
    • M5Stack Ext Encoder Unita (STM32F030)
    • M5Stack Single-phase DC SSR Unit (CDG1. 1DD-10A)
    • M5Stack Speaker 2 Hat (MAX98357)
    • M5Stack Glass Unit w/ 1.51inch Transparent OLED
    • M5StickC Vibration HAT
    • M5Stack RCA Audio/Video Composite Unit
    • M5Stack Barometric Pressure 2 Unit (QMP6988)
    • M5Stack 8-Angle Unit with Potentiometer
    • M5Stack 8-Encoder Unit (STM32F030)
    • M5Stack Flashlight Unit
    • M5Stack NCIR 2 Thermometer Unit (MLX90614)
    • M5Stack M5StickV K210 AI Camera (Without Wifi)
    • M5Stack Thermal Camera 2 Unit (MLX90640) -110 Degree FoV
    • M5Stack USB TypeC2Grove Unit
    • M5Stack Scales Unit with 20kgs Range (HX711)
    • M5Stack I/O Hub 1 to 6 Expansion Unit (STM32F0)
    • M5Stack Keyboard Programmable Unit V1.1 (MEGA8A)
    • M5Stack Red 7-Segment Digit Clock Unit
    • M5Stack Mechanical Key Button Unit
    • M5Stack ESP32 Ethernet Unit with PoE
    • M5Stack Encoder Unit
    • M5Stack MQTT PoE Unit with PoE Port
    • M5Stack Unit CamS3 Wi-Fi Camera 5MP
    • M5Stack Ultrasonic Distance Unit I2C
    • M5Stack Ultrasonic Distance Unit I/O
    • M5Stack Passive Buzzer Unit
    • M5Stack 2-Channel SPST Relay Unit
    • M5Stack Tube/Air Pressure Unit
    • M5Stack MQTT Unit with RJ45 Port
    • M5Stack Gesture recognition sensor
    • M5Stack Fader Unit with B10K Potentiometer
    • M5Stack I2C Hub 1 to 6 Expansion Unit
    • M5Stack Real Time Clock (RTC) Unit
    • M5Stack OLED Unit 1.3"Display
    • M5Stack RF UNIT 433MHz Transmitter
    • M5Stack ATOM Socket Kit
    • M5Stack Watering Unit with Mositure Sensor and Pump
    • M5Stack Digital RGB LED Strip
    • M5Stack M5StickC 18650C
    • M5Stack M5StickC SERVO HAT
    • M5Stack M5StickC Fingerprint HAT
    • M5Stack M5StickC ToF HAT
    • M5Stack Mini GPS/BDS Unit
    • M5Stack Finger Print Sensor Unit
    • M5Stack DAC Converter Digital
    • M5Stack RGB LED Unit
    • M5Stack Mini 3A Relay Unit
    • M5Stack Earth Moisture Sensor Unit
    • M5Stack Color Sensor RGB Unit
    • M5Stack Mini Angle Unit Rotary Switch
    • M5Stack PIR Motion Sensor
    • HEX RGB LED Board
    • M5Stack LoRa Module (433MHz) v1.1
    • M5Stack ATOMS3R Camera Kit
    • M5Stack ATOMS3R Development Kit
    • M5Stack Roller485 Lite Unit
    • M5Stack ATOMS3R Proto Kit
    • M5Stack M5Stamp Fly with M5StampS3
    • M5Stack M5Atom Joystick with M5AtomS3
    • M5Stack ATOMS3R Camera (OV3660)
    • M5Stack Battery Module
    • M5Stack Unit Cam Wi-Fi Camera
    • M5Stack PIR Motion Sensor
    • M5Stack RFID 2 Unit
    • M5Stack Mini Dual
    • M5StickV K210 AI Camera
    • M5Stack Glass 2 Unit
    • Hall Effect Unit
    • Voltage and Amperage Meter
    • M5Stack ENV Pro Unit
    • NCIR 2 Thermometer Unit
    • M5GO Battery Bottom2
    • M5Stack USB Module
    • M5Stack LoRa Module
    • M5Stack LLM Module
    • M5Stack Timer Power Unit
    • M5Stack 8-Encoder Unit
    • M5Stack LoRa Module
    • M5Stack 8-Angle Unit
    • Gesture recognition sensor
    • M5StickC ENV III HAT
    • M5StickC DAC 2 Hat
    • M5Stack Color Sensor
    • Time-of-Flight Distance
    • M5StickC ToF HAT
    • Neo HEX 37 RGB LED
    • M5Stamp ESP32S3
    • Tube/Air Pressure
    • 8-Channel Servo Driver
    • M5Stack Mini Angle Unit
    • M5Stack Mini Infrared Emitter
    • M5Stack NanoC6 Dev Kit
    • M5Stack ENV III Unit
    • Temperature Humidity Air Pressure
    • M5Stack 2-Channel SPST
    • M5Stack BLDC Motor
    • M5Stack Ultrasonic
    • M5Stack M5Stamp
    • M5Stack DAC
    • M5Stack Mini CAN Unit
    • M5Stack Ambient Light Sensor
    • M5Stack PIR Hat
    • M5Stack Speaker
    • M5Stack Weight
    • M5Stack Core2
    • M5StickC PLUS
    • M5Stack Barometric Pressure
    • M5Stack Ambient Light Sensor
    • M5Stack Passive Buzzer
    • M5Stack Mechanical Key Button
    • M5Stack Limit Switch
    • M5StickC Vibration HAT
    • PM5Stack RCA Audio/Video
    • M5Stack Flashlight
    • M5Stack COMMU Module Extend
    • M5Stack M5StampS3 with 1.27 Header Pin
    • M5Stack M5StampS3 with 2.54 Header Pin
    • ATOMIC Barcode/QR-Code Scanner
    • M5Stack Station ESP32 IoT
    • M5Stack ESP32 Core Ink
    • M5Paper ESP32 Development Kit
    • ATOMIC CANBus Base
    • M5Stack M5StickC ADC Hat
    • M5Stack LoRa
    • M5Stack H-bridge
    • ATOMIC GPS Base
    • M5Stack Ext Encoder
    • M5Stack Single-phase DC SSR
    • M5Stack Glass Transparent OLED
    • M5Stack Thermal Camera
    • M5Stack USB TypeC2Grove
    • M5Stack I/O Hub
    • M5Stack CardKB Mini Keyboard
    • M5Stack Red 7-Segment Digit Clock
    • M5Stack Extend I/O
    • M5Stack I2C Joystick
    • M5Stack ESP32 Ethernet
    • M5Stack 8-Channel Servo Driver
    • M5Stack Encoder
    • M5Stack MQTT PoE
    • M5Stack Ultrasonic
    • M5Stack I2C Hub
    • M5Stack MQTT
    • M5Stack Fader
    • M5Stack Real Time Clock
    • M5Stack OLED
    • M5Stack RF Unit
    • M5Stack Watering Unit
    • M5Stack Digital RGB LED
    • M5Stack JoyC Omni-directional Controller
    • M5Stack SERVO HAT
    • M5Stack Fingerprint HAT
    • M5Stack Finger Print Sensor
    • M5Stack RGB LED
    • M5Stack Mini 3A Relay
    • M5Stack Earth Moisture Sensor
    • M5Stack 1 to 3 HUB Expansion
    • M5Stack RS485 to TTL Converter
    • HEX RGB LED Board
    • M5Stack LoRa 433MHz with Antenna
    • M5Stack NB-IoT with Antenna
    • M5Stack Battery Bottom 110mAh
    • M5Stack Programmable Power Supply Module
    • M5Stack LAN Module
    • M5Stack RCA Audio/Video Module
    • M5Stack LAN Module W5500
    • M5Stack IoT Base
    • M5Stack AC Power Base
    • M5Stack GRBL Module Stepmotor Driver
    • M5Stack COM.LTE Module
    • M5Stack Proto Pegboard Module
    • M5Stack BaseX EV3 motor
    • M5Stack Proto Module
    • M5Stack M5GO/FIRE Battery
    • M5Stack PoE Camera with Wi-Fi
    • M5Stack UnitV K210 AI Camera
    • M5Stack UnitV2 M12 with Cameras
    • M5Stack ESP32 PSRAM Timer Camera Fisheye
    • M5Stack ESP32 PSRAM Timer Camera
    • M5Stack Universal IOT Experiment Kit
    • M5Stack Scale Kit
    • M5Stack AGV Mini Carkit Mecanum Wheels
    • M5Stack 6060-PUSH Linear Motion Control
    • M5Stack BugC2 w/ M5StickC PLUS2
    • M5Stack RoverC Pro
    • M5Stack BALA2 Fire Self-balancing Robot Kit
    • M5Stack 16 PCS M3 Screw
    • M5Stack Unbuckled Grove Cable
    • M5Stack RS485T T-Shaped Connector
    • M5Stack CM4Stack Development
    • M5Stack CoreS3 ESP32S3 loT Development
    • M5Stack M5StickC PLUS2 with Watch Accessories
    • M5Stack Mini GPS/BDS
    • M5Stack M5Stick T-Lite Thermal Camera
    • M5Stack UnitV2 - The standalone AI Camera
    • M5Stack ESP32 Fisheye Camera
    • M5Stack Voltage and Amperage Meter
    • M5Stack CardKB Mini Keyboard
    • M5Stack M5Stamp C3 (5pcs)
  • 2️⃣ESP
    • ESP8266EX
    • ESP8266 ESP-01S WiFi module
    • ESP32-WROOM-32E
    • ESP32-WROOM-32 Wifi Bluetooth Type-C Dev Kit
    • ESP32-S3-WROOM-1U
    • ESP32-S3-Nano - Development Board
    • ESP32-S3 Rotary Switch LCD 2.1 inch Round LCD Screen
    • ESP32-PICO-D4
    • ESP32-H2
    • ESP32-CAM Camera Module
    • ESP32-C6
    • ESP32 NODEMCU Module WiFi Development Board with CP2102
    • ESP32 D1 Mini Nodemcu Development Board
    • D1 Mini Nodemcu with ESP8266-12F WLAN module
    • D1 Mini V3 Nodemcu with ESP8266-12F WLAN module
    • Seeed Studio XIAO ESP32S3 WIFI Dev Board
    • XIAO SAMD21 Arduino Microcontroller
    • XIAO RP2040
    • XIAO ESP32-C3 WIFI
    • XIAO ESP32-C6 WIFI
    • 6x10 RGB MATRIX
    • XIAO nRF52840 Sense
  • 3️⃣DRONE / FPV
    • ZD850 850mm Compact Folding Hexacopter Drone Frame Kit Full Carbon Fiber
    • DXW 4114 400KV High Power Brushless Motors
    • DXW D4250 800KV 3-7S Brushless Motor
    • DXW D3536 1200KV 2-4S Brushless Motor
    • DXW A2212/C2826 3.17mm Outrunner Brushless Motor
    • Hobbywing Skywalker V2 Brushless ESC Speed Controller
    • Pixhawk PX4 Flight Controller
    • Holybro Pixhawk 6C
    • GPS Stand
    • Holybro GPS M8N
    • Holybro GPS M9N
    • Holybro GPS M10N
    • Radiolink M8N SE100 GPS Module
    • Radiolink M10N SE100 GPS for PX4/Pixhawk 2.4.8
    • Mateksys GNSS M9N-5883
    • MFD Crosshair Color OSD
    • 2 Pair Carbon Fiber CW CCW Propellers
    • 3-Axis Brushless Gimbal Frame With Motors & Storm32 Controller
    • 2-Axis Brushless Gimbal Frame With Motors & Storm32 Controller
    • RadioLink AT10 II 2.4Ghz 10CH RC Transmitter
    • Radiolink Mini PIX V1.2 Flight Controller M10N GPS TS100 SE100 (Pixhawk Alternative)
    • 2Pcs OVONIC 3S 4S 6S Lipo Battery For RC FPV
    • Gens ACE Lipo Battery with T/XT60 Plug
    • LiPo Battery 3S 11.1V for RC Drone
    • Holybro PM02 V3 Power Module 12S
    • Holybro PM06 V2 Power Module 14S
    • Holybro PM07 V2 Power Module 14S
    • Holybro Power Distribution Board (PDB)
    • Mateksys Power Distribution Board (PDB) XT60 W/ BEC 5V & 12V
    • Hawk eye FPV Monitor 5.8G 48CH 4.3 inch FPV HD Monito
    • RUSH TANK MAX SOLO 5.8GHz 2.5W High Power 48CH VTX Video Transmitter
    • RUSH TANK SOLO 5.8G VTX Video Transmitter CNC shell 1.6W
    • Happymodel EP1 Dual Receiver 2.4Ghz ExpressLRS RX
    • Mateksys BEC12S-PRO, 9-55V TO 5V/8V/12V-5A
    • ZD850 850mm 6-axis Drone with 6kg Payload
    • ZD550 550mm 4-axis Drone with 6kg Payload
    • YRRC 5.8G 2.5W 40CH VTX Drone FPV Analog Image Transmission
    • Hawkeye Firefly 8SE/8S 4K Screen WiFi FPV Action Camera
  • 4️⃣RASPBEERY PI
    • Raspberry Pi Pico W Wireless RP2040 MCU Board
    • Raspberry Pi 5
    • Raspberry Pi 4B
    • ELAB Raspberry Pi Card Reader
    • ELAB Raspberry Pi 5 Active Cooler
    • ELAB Raspberry Pi 4/5 Case (Acrylic case)
    • ELAB Raspberry Pi 4 Heat Sink (Copper)
    • Camera for Raspberry Pi
    • XIAO RP2350 Onboard RGB LED, Arm Cortex-M33 and Hazard3 RISC-V(Pre-Order)
    • Raspberry Pi Pico 2 RP2350
    • Seeed Studio Grove Starter Kit for LinkIt ONE
    • Seeed Studio ReSpeaker USB Mic Array
    • Raspberry Pi Zero 2W with Bluetooth 4.2 Onboard Antenna
    • Raspberry Pi Zero WH WiFi/Bluetooth 4.1 Bluetooth Low Energy
    • Seeed Studio XIAO RP2040 Supports Arduino
    • M.2 HAT for Raspberry Pi 5
    • EdgeBox Raspberry Pi IoT Edge Device 4GB RAM 32GB eMMC WiFi
    • Raspberry Pi Compute Module 4 with WiFi
    • Raspberry Pi 4 ReSpeaker Intelligent Speech Recognition 2 Microphone
    • Raspberry Pi 5 Vision Car AI Development Board Camera Recognition WIFI Kit
    • Waveshare RM500U-CNV Raspberry PI 5G/4G/3G Hat
    • Hailo-8 M.2 AI Accelerator Module Suitable for Raspberry Pi 5
    • Waveshare ESP8266 for Raspberry Pi Pico Wifi Module TCP UDP
    • Waveshare MAX-M8Q GNSS HAT for Raspberry Pi
    • Waveshare SX1262 LoRa HAT for Raspberry UART
    • Waveshare SX1268 LoRa HAT for Raspberry UART
    • Waveshare SIM7070G NB-IoT / Cat-M / GPRS / GNSS HAT for Raspberry Pi
    • Waveshare SIM7600G-H M.2 4G HAT for Raspberry Pi 4G/3G/2G GNSS
    • Waveshare SIM7600CE-CNSE 4G HAT for Raspberry Pi 4G 3G 2G GNSS
  • 5️⃣ARDUINO
    • ATmega328DIP Board Microcontroller Board
    • OpenELAB EASY PLUG RGB TCS34725 Color Sensor Module I2C
    • OpenELAB EASY PLUG Micro SD TFT card Read and Write Module
    • OpenELAB EASY PLUG CCS811 CO2 Air Quality Sensor
    • OpenELAB EASY PLUG SR01 Ultrasonic Sensor
    • OpenELAB EASY PLUG Education Robot Car Kit
    • OpenELAB EASY PLUG Sensor Learning Kit for Arduino
    • OpenELAB EASY PLUG Ultimate Starter Kit for Arduino
    • OpenELAB KEYBOT Programmable Education Robot Control Board
    • OpenELAB RJ11 EASY Plug Main Control Upgrade Board V2.0
    • OpenELAB Desktop Mini Bluetooth Smart Robot Car Kit V3.0
    • OpenELAB 4WD Mechanical Arm Robot Smart Car for Arduino
    • OpenELAB 4DOF Mechanical Arm Robot Car Learning Starter Kit
    • OpenELAB 4WD Mechanical Arm Robot Smart Car for Arduino
    • OpenELAB Desktop Mini Bluetooth Smart Robot Car Kit V3.0
    • OpenELAB RJ11 EASY Plug Main Control Upgrade Board V2.0
    • OpenELAB KEYBOT Programmable Education Robot Control Board
    • OpenELAB EASY PLUG Ultimate Starter Kit for Arduino
  • 6️⃣DISPLAYS
    • 1.3 inch OLED I2C 128 x 64 Pixel Display
    • 0.91 inch OLED I2C Display 128 x 32 pixels
    • WT32S3-86S touch display screen with temp and humidity sensor
    • LCD Display 1602 I2C
    • HW-140 DC-DC Buck Boost Converter Step Up/Down, LCD display
    • HD44780 2004 LCD Display Bundle 4x20 characters
    • ESP32-S3 Rotary Switch LCD 2.1 inch Round LCD Screen
    • 8*8 Matrix LED Display Module
    • 4 digit 7-segment LED Display
    • 3.5-inch 320x480 resistive touch display
    • 3.5-inch 320x480 capacitive touch display
    • 1.77 inch Spi TFT Display and 128x160 Pixels
    • 1.8 inch Spi TFT Display 128 x 160 pixels
    • 1 Digit 7-Segment LED Display 1 inch 25.4 mm
    • 0.96 inch OLED SSD1306 Display I2C 128 x 64 pixels
    • Waveshare 10.1 inch IPS Capacitive Touch Display
    • Waveshare 10.1 inch QLED Touch Display
    • Waveshare 9.7 inch IPS Capacitive Touch Display
    • Waveshare 10.1 inch IPS Capacitive Touch LCD
    • Waveshare 9.3 inch LCD Capacitive Touch Display High Brightness
    • Waveshare 9 inch QLED Quantum Dot Display
    • Waveshare 8 inch 2K IPS Capacitive Touch Display
    • Waveshare 8DP-CAPLCD 8 inch Capacitive Touch Display
    • Waveshare 7.9 inch IPS LCD Touch Screen, 400×1280 HDMI
    • Waveshare 8 inch DSI LCD Display Touch Screen I2C
    • Waveshare 7 inch IPS Integrated Display, With Touch Function
    • Waveshare 7HP-CAPQLED 7 inch QLED Quantum Dot Display
    • Waveshare 7 inch Capacitive Touch Screen HDMI
    • Waveshare 7 inch Capacitive Touch Screen with Case HDMI
    • 2.8inch USB Monitor,Water Cooler Screen/ PC Case Secondary Screen
    • Waveshare 5inch Desktop RGB Ambient Screen
    • Waveshare 5inch IPS Round Touch DisplayHDMI
    • Waveshare 5.5inch 2K Touch LCD Display HDMI
    • 2.1 inch USB Monitor, Water Cooler Screen/ PC Case Secondary Screen
    • Waveshare 8.8inch Desktop RGB Ambient Screen Type-C
    • Waveshare 8inch Desktop RGB Ambient Screen Type-C
    • Waveshare 7 inch Desktop RGB Ambient Screen
    • Waveshare 5inch HDMI Touch Screen LCD with Bicolor Case
    • Waveshare 65K RGB General 1.28inch Round LCD Display Module
    • 0.96 inch OLED Display Module, SPI / I2C Communication
    • 1.5 inch LCD Display Module, IPS Panel SPI 262K colors
    • Waveshare 1.8inch colorful display module for micro:bit
    • Waveshare 3.5inch RPi LCD (A)
    • Waveshare 5 inch LCD Touch Screen Display for Raspberry Pi
    • Waveshare 1.47inch LCD Display Module SPI
    • 7.3 inch 7 Color E-Paper
    • Waveshare 15.6 inch QLED Touch
    • Waveshare 7.5 inch NFC-Powered
  • 7️⃣CAMERAS
    • OV5640 Camera Board (A), 5 Megapixel (2592x1944)
    • OV2640 Camera Board (1622x1200)
    • Hawkeye Firefly 8SE/8S 4K Screen WiFi FPV Action Camera
    • ESP32-CAM Camera Module
    • DFRobot Gravity Huskylens AI Camera
    • IMX335 5MP USB Camera (B)
  • 8️⃣SENSORS
    • Rotation Sensor
    • WT32S3-86S touch display screen with temp and humidity sensor
    • Vibration Sensor
    • Ultrasonic Sensor
    • Thermistor Module
    • Soil Temperature and Humidity Module
    • Soil Moisture Sensor Hygrometer Module V1.2 capacitive
    • Shock Sensor Module
    • MQ-135 Gas Sensor
    • Motion Sensor Motion Detection Module HC-SR501 PIR
    • DHT11 Temperature-Humidity Sensor
    • DHT22 AM2302 Temperature sensor and humidity sensor
    • Current Sensor ACS712ELC-20A
    • VL53L0X Time-of-Flight (TOF) Laser distance sensor
    • GY-521 MPU-6050 3-axis gyroscope and acceleration sensor
    • DS18B20 digital temperature sensor
    • BME280 Humidity Pressure Temperature Sensors
  • 9️⃣IOT / COMMUNICATION
    • NodeMCU Lua Amica Module V2 ESP8266 ESP-12F WIFI
    • SIM7028 NB-IoT HAT
    • NRF24L01 with 2.4 GHz
    • Ai-Thinker AiPi-Eyes-S1 WifFi Camera
    • Ai-Thinker AiPi-Eyes-S2 WifFi Camera
  • 🔟MOTORS
    • CyberGear micromotor instruction manual
    • Servo Motor (SG90)
    • 5V DC Stepper Motor & ULN2003 Driver Board
    • 130 DC Motor
    • Xiaomi CyberGear Micromotor
  • 🇰🇳KITS
    • mBot Mega
  • ⚡POWER
    • HW-140 DC-DC Buck Boost Converter Step Up/Down, LCD display
    • MT3608 DC-DC power supply adapter step up module
    • LM2596S Step-down DC-DC Buck Converter
    • LM2596S DC-DC power supply adapter step down module
    • Hi-Link DC-DC 5V to xxV 1W Mini Converter Isolated Power Supply
    • Hi-Link AC-DC 5W Converter Power Supply
    • Hi-Link AC-DC 220V to xxV 3W Converter Power Supply
    • SunLit Austa Solar Module
  • 🔌ACCESSORIES
    • 4 digit 7-segment LED Display
    • 5V LED Traffic Signal Module
    • LED Ring 5V RGB WS2812B 12-Bit 50mm
    • 3D MKS Gen V1.4 Printer
    • USB 3.2 To 5GbE Adapter (WP-UT5) Realtek RTL8157
  • Heygears Reflex User Guide
Powered by GitBook
On this page
  • ESP32-CAM Camera Module
  • Product Link
  • Overview
  • ESP32-CAM Power Consumption
  • ESP32-CAM Pinout
  • Programming the ESP32-CAM
  • Setting Up the Arduino IDE
  • ESP32-CAM Example 1 : Blink
  • More ESP32-CAM Examples
  • ESP32-CAM Example 2 : Live Video Streaming Server
  • Connecting an External Antenna to ESP32-CAM

Was this helpful?

Previous ESP32-H2NextESP32-C6

Last updated 10 months ago

Was this helpful?

ESP32-CAM Camera Module


Product Link

Overview

The heart of the ESP32-CAM is an ESP32-S System-on-Chip (SoC) from Ai-Thinker. Being an SoC, the ESP32-S chip contains an entire computer—the microprocessor, RAM, storage, and peripherals—on a single chip. While the chip’s capabilities are quite impressive, the ESP32-CAM development board adds even more features to the mix. Let’s take a look at each component one by one.

Processor

The ESP32-CAM equips the ESP32-S surface-mount printed circuit board module from Ai-Thinker. It is equivalent to Espressif’s ESP-WROOM-32 module (same form factor and general specifications).

The ESP32-S contains a Tensilica Xtensa® LX6 microprocessor with two 32-bit cores operating at a staggering 240 MHz! This is what makes the ESP32-S suitable for intensive tasks like video processing, facial recognition, and even artificial intelligence.

The Memory

Memory is paramount for complex tasks, so the ESP32-S has a full 520 kilobytes of internal RAM, which resides on the same die as the rest of the chip’s components.

It may be inadequate for RAM-intensive tasks, so ESP32-CAM includes 4 MB of external PSRAM (Pseudo-Static RAM) to expand the memory capacity. This is plenty of RAM, especially for intensive audio or graphics processing.

All these features amount to nothing if you don’t have enough storage for your programs and data. The ESP32-S chip shines here as well, as it contains 4 MB of on-chip flash memory.

The Camera

The OV2640 camera sensor on the ESP32-CAM is what sets it apart from other ESP32 development boards and makes it ideal for use in video projects like a video doorbell or nanny cam.

The OV2640 camera has a resolution of 2 megapixels, which translates to a maximum of 1600×1200 pixels, which is sufficient for many surveillance applications.

The Storage

The addition of a microSD card slot on the ESP32-CAM is a nice bonus. This allows for limitless expansion, making it a great little board for data loggers or image capture.

The Antenna

The ESP32-CAM comes with an on-board PCB trace antenna as well as a u.FL connector for connecting an external antenna. An Antenna Selection jumper (zero-ohm resistor) allows you to choose between the two options.

LEDs

The ESP32-CAM has a white square LED. It is intended to be used as a camera flash, but it can also be used for general illumination.

There is a small red LED on the back that can be used as a status indicator. It is user-programmable and connected to GPIO33.

Technical Specifications

To summarize, the ESP32-CAM has the following specifications.

  • Processors:

    • CPU: Xtensa dual-core 32-bit LX6 microprocessor, operating at 240 MHz and performing at up to 600 DMIPS

    • Ultra low power (ULP) co-processor

  • Memory:

    • 520 KB SRAM

    • 4MB External PSRAM

    • 4MB internal flash memory

  • Wireless connectivity:

    • Wi-Fi: 802.11 b/g/n

    • Bluetooth: v4.2 BR/EDR and BLE (shares the radio with Wi-Fi)

  • Camera:

    • 2 Megapixel OV2640 sensor

    • Array size UXGA 1622×1200

    • Output formats include YUV422, YUV420, RGB565, RGB555 and 8-bit compressed data

    • Image transfer rate of 15 to 60 fps

    • Built-in flash LED

    • Support many camera sensors

  • Supports microSD card

  • Security:

    • IEEE 802.11 standard security features all supported, including WFA, WPA/WPA2 and WAPI

    • Secure boot

    • Flash encryption

    • 1024-bit OTP, up to 768-bit for customers

    • Cryptographic hardware acceleration: AES, SHA-2, RSA, elliptic curve cryptography (ECC), random number generator (RNG)

  • Power management:

    • Internal low-dropout regulator

    • Individual power domain for RTC

    • 5μA deep sleep current

    • Wake up from GPIO interrupt, timer, ADC measurements, capacitive touch sensor interrupt

Schematic and Datasheets

For more information on ESP32-CAM, please refer to:

ESP32-CAM Power Consumption

The power consumption of the ESP32-CAM varies depending on what you’re using it for.

It ranges from 80 mAh when not streaming video to around 100~160 mAh when streaming video; with the flash on, it can reach 270 mAh.

Operation mode
Power Consumption

Stand by

80 mAh

In streaming

100~160 mAh

In streaming with flash

270 mAh

ESP32-CAM Pinout

The ESP32-CAM has 16 pins in total. For convenience, pins with similar functionality are grouped together. The pinout is as follows:

Power Pins There are two power pins: 5V and 3V3. The ESP32-CAM can be powered via the 3.3V or 5V pins. Since many users have reported problems when powering the device with 3.3V, it is advised that the ESP32-CAM always be powered via the 5V pin. The VCC pin normally outputs 3.3V from the on-board voltage regulator. It can, however, be configured to output 5V by using the Zero-ohm link near the VCC pin.

GND is the ground pin.

GPIO Pins The ESP32-S chip has 32 GPIO pins in total, but because many of them are used internally for the camera and the PSRAM, the ESP32-CAM only has 10 GPIO pins available. These pins can be assigned a variety of peripheral duties, such as UART, SPI, ADC, and Touch.

UART Pins The ESP32-S chip actually has two UART interfaces, UART0 and UART2. However, only the RX pin (GPIO 16) of UART2 is broken out, making UART0 the only usable UART on the ESP32-CAM (GPIO 1 and GPIO 3). Also, because the ESP32-CAM lacks a USB port, these pins must be used for flashing as well as connecting to UART-devices such as GPS, fingerprint sensors, distance sensors, and so on.

MicroSD Card Pins are used for interfacing the microSD card. If you aren’t using a microSD card, you can use these pins as regular inputs and outputs.

ADC Pins On the ESP32-CAM, only ADC2 pins are broken out. However, because ADC2 pins are used internally by the WiFi driver, they cannot be used when Wi-Fi is enabled.

Touch Pins The ESP32-CAM has 7 capacitive touch-sensing GPIOs. When a capacitive load (such as a human finger) is in close proximity to the GPIO, the ESP32 detects the change in capacitance.

SPI Pins The ESP32-CAM features only one SPI (VSPI) in slave and master modes.

PWM Pins The ESP32-CAM has 10 channels (all GPIO pins) of PWM pins controlled by a PWM controller. The PWM output can be used for driving digital motors and LEDs.

For more information, refer to our comprehensive ESP32-CAM pinout reference guide. This guide also explains which ESP32-CAM GPIO pins are safe to use and which pins should be used with caution.

Programming the ESP32-CAM

Programming the ESP32-CAM can be a bit of a pain as it lacks a built-in USB port. Because of that design decision, users require additional hardware in order to upload programs from the Arduino IDE. None of that is terribly complex, but it is inconvenient.

To program this device, you’ll need either a USB-to-serial adapter (an FTDI adapter) or an ESP32-CAM-MB programmer adapter.

Using the FTDI Adapter

If you’ve decided to use the FTDI adapter, here’s how you connect it to the ESP32-CAM module.

Many FTDI programmers have a jumper that lets you choose between 3.3V and 5V. As we are powering the ESP32-CAM with 5V, make sure the jumper is set to 5V.

Please note that the GPIO 0 pin is connected to Ground. This connection is only necessary while programming the ESP32-CAM. Once you have finished programming the module, you must disconnect this connection.

Remember! You’ll have to make this connection every time you want to upload a new sketch.

Using the ESP32-CAM-MB Adapter (Recommended)

Using the FTDI Adapter to program the ESP32-CAM is a bit of a hassle. This is why many vendors now sell the ESP32-CAM board along with a small add-on daughterboard called the ESP32-CAM-MB.

You stack the ESP32-CAM on the daughterboard, attach a micro USB cable, and click the Upload button to program your board. It’s that simple.

The highlight of this board is the CH340G USB-to-Serial converter. That’s what translates data between your computer and the ESP32-CAM. There’s also a RESET button, a BOOT button, a power indicator LED, and a voltage regulator to supply the ESP32-CAM with plenty of power.

Setting Up the Arduino IDE

Installing the ESP32 Board

To use the ESP32-CAM, or any ESP32, with the Arduino IDE, you must first install the ESP32 board (also known as the ESP32 Arduino Core) via the Arduino Board Manager.

If you haven’t already, follow this tutorial to install the ESP32 board:

Selecting the Board and Port

After installing the ESP32 Arduino Core, restart your Arduino IDE and navigate to Tools > Board > ESP32 Arduino and select AI-Thinker ESP32-CAM.

Now connect the ESP32-CAM to your computer using a USB cable. Then, navigate to Tools > Port and choose the COM port to which the ESP32-CAM is connected.

That’s it; the Arduino IDE is now set up for the ESP32-CAM!

ESP32-CAM Example 1 : Blink

Once you’ve finished the preceding steps, you are ready to test your first program with your ESP32-CAM! Launch the Arduino IDE. If you disconnected your board, plug it back in.

Let’s upload the most basic sketch of all – Blink!

This sketch uses the on-board Camera Flash LED. This LED is connected to GPIO 4.

int flashPin = 4;

void setup() {
    pinMode(flashPin, OUTPUT);
}

void loop() {
    digitalWrite(flashPin, HIGH);
    delay(1000);
    digitalWrite(flashPin, LOW);
    delay(1000);
}

Now, press the upload button. If you are using the FTDI adapter, disconnect GPIO 0 from GND after uploading the code. To execute the sketch, you may need to press the Reset button on your ESP32-CAM.

If everything worked, the on-board Flash LED on your ESP32-CAM should now be blinking!

Congratulations! You have just programmed your first ESP32-CAM!

More ESP32-CAM Examples

The ESP32 Arduino core includes several examples that demonstrate everything from scanning for nearby networks to building a web server. To access the example sketches, navigate to File > Examples > ESP32.

You will see a selection of example sketches. You can choose any of them to load the sketch into your IDE and start experimenting with it.

ESP32-CAM Example 2 : Live Video Streaming Server

Let’s try running the CameraWebServer sketch. This sketch transforms the ESP32-CAM into a full-featured webcam, complete with features like face detection and a ton of customization options. This is a very impressive example of what the ESP32-CAM can do!

You can find this example under File > Examples > ESP32 > Camera > CameraWebServer.

We’ll need to make a few changes to get this to work with your ESP32-CAM.

You must choose the appropriate camera model. Because we’re using the AI-THINKER model here, uncomment it and comment all the other models.

// ===================
// Select camera model
// ===================
//#define CAMERA_MODEL_WROVER_KIT // Has PSRAM
//#define CAMERA_MODEL_ESP_EYE // Has PSRAM
//#define CAMERA_MODEL_ESP32S3_EYE // Has PSRAM
//#define CAMERA_MODEL_M5STACK_PSRAM // Has PSRAM
//#define CAMERA_MODEL_M5STACK_V2_PSRAM // M5Camera version B Has PSRAM
//#define CAMERA_MODEL_M5STACK_WIDE // Has PSRAM
//#define CAMERA_MODEL_M5STACK_ESP32CAM // No PSRAM
//#define CAMERA_MODEL_M5STACK_UNITCAM // No PSRAM
#define CAMERA_MODEL_AI_THINKER // Has PSRAM
//#define CAMERA_MODEL_TTGO_T_JOURNAL // No PSRAM
// ** Espressif Internal Boards **
//#define CAMERA_MODEL_ESP32_CAM_BOARD
//#define CAMERA_MODEL_ESP32S2_CAM_BOARD
//#define CAMERA_MODEL_ESP32S3_CAM_LCD

Next, you need to tell the ESP32-CAM about your wireless network. Fill in the following variables with your network credentials:

const char* ssid = "REPLACE_WITH_YOUR_SSID";
const char* password = "REPLACE_WITH_YOUR_PASSWORD";

The code that needs to be modified is highlighted in yellow.

The code is now ready to be uploaded to the ESP32-CAM.

Accessing the Video Streaming Server

Once you have uploaded the sketch, open the serial monitor at baud rate 115200 and press the Reset button on the ESP32-CAM. You should see the IP address in the Serial Monitor.

Launch a browser and enter the IP address shown on the serial monitor. Ensure that the web browser is on the same network that the ESP32-CAM is connected to.

The ESP32-CAM should display a web page. To begin video streaming, press the Start Stream button.

You can play around with various camera settings in the left pane. For instance, you can alter the video’s resolution and frame rate, as well as its brightness, contrast, saturation, and the like.

Simply hit the Get Still button to take a picture. Note that images are downloaded to the computer rather than being saved to the microSD card.

Connecting an External Antenna to ESP32-CAM

The ESP32-CAM comes with an on-board PCB trace antenna as well as a u.FL connector for connecting an external antenna. An Antenna Selection jumper (zero-ohm resistor) allows you to choose between the two options.

The PCB antenna is an excellent way to begin experimenting with the ESP32-CAM. It works well if you are close to your router (AI-Thinker claims the PCB antenna has a gain of 2.1dBi).

If you are too far away from your router, you may experience slow video streaming and other connectivity issues, in which case you should use a 2.4GHz external antenna with an IPX connector. For this, you need to change the antenna jumpers around to enable the u.FL connector.

A trio of solder pads are located next to the u.FL connector and between the on-board antenna and the ESP32-S’s metal case. A zero-ohm resistor connects the top two pads. Simply remove this resistor and place it between the bottom pads.

The ESP32-CAM is compatible with a wide variety of camera sensors, as listed on .

If you want to switch from the onboard antenna, refer to .

github
connecting an external antenna to ESP32-CAM
ESP32-CAM schematic diagram
OV2640 Camera Datasheet
Installing ESP32 Board in the Arduino IDEThere are several development platforms available for programming the ESP32. You can go with: Arduino IDE – intended for those who are familiar with ArduinoEspruino...
esp32 cam microsd card slot
esp32 cam leds and gpio pin numbers
esp32 cam pcb antenna ufl connector selection jumper
esp32 cam ov2640 camera sensor
esp32 cam esp32s module
esp32 cam ram flash memory psram
LogoESP32-CAM Camera ModuleOpenELAB
arduino ide esp32 cam examples
esp32 cam mb programmer hardware overview
esp32 cam port selection
selecting esp32cam board arduino ide boards manager
esp32 cam camerawebserver example
esp32 camerawebserver controls
esp32 cam camerawebserver changes highlighted
esp32 cam ip address
esp32 cam live video streaming
esp32 cam antenna selection setting