![ESP32 projects](https://cdn.pcbonline.com/blog/esp32-projects.jpg)
ESP32 is an amazing MCU that has found its way into many advanced projects. This blog post examines some features of ESP32 and projects that utilize ESP32.
What is ESP32
The ESP32 is a low-cost System-on-chip (SoC) microcontroller with integrated Wi-Fi 802.11 b/g/n, Bluetooth v4.2, and BLE capabilities.
Depending on the version, it features a Single or Dual-Core Tensilica Xtensa LX6 processor with clock frequency up to 240 MHz, 4 MB of Flash Memory, 520 KB of SRAM, Cryptographic Hardware Acceleration for AES, SHA-2, RSA, ECC, RNG, 34 Programmable GPIOs, 3 UARTs, and 4 SPI busses, 2 of which are available for use, secure boot, flash encryption, and other handy features.
Advanced Features of ESP32
The ESP32 comes with lots of handy features, such as secure boot, Flash encryption, one-time programmable (OTP) memory, and Cryptographic hardware acceleration for AES, SHA-2, RSA, elliptic curve cryptography (ECC), and random number generator (RNG).
If enabled, the secure boot feature ensures that the ESP32 only executes the authenticated firmware. When the ESP32 boots up, the BootROM checks the bootloader image using the 256-bit Secure Boot Key (SBK). If the bootloader is verified, it is allowed to execute. The bootloader then verifies the application firmware using the ECDSA public key. Firmware images signed with the private ECDSA key will be accepted and executed.
The above prevents unauthorized modifications to the firmware, protecting against malware and other attacks that try to replace the original firmware.
The Flash encryption feature encrypts the contents of the ESP32's Flash memory, protecting sensitive data from being accessed even if the physical device is compromised.
The OTP memory provides a secure storage area for cryptographic keys and other sensitive information.
Also, the ESP32 is capable of performing computationally intensive cryptographic operations, making it well-suited for secure IoT and embedded applications that require strong encryption, hashing, and random number generation. The cryptographic hardware acceleration is available for the following cryptographic primitives:
- AES (Advanced Encryption Standard): A symmetric encryption algorithm (block cipher) with key sizes of 128, 192, and 256 bits. AES is a widely used encryption algorithm that provides strong data confidentiality.
- SHA-2 (Secure Hash Algorithm): SHA-2 is a family of hash functions widely used for data integrity and authentication. This includes support for the SHA-256 and SHA-512, which are commonly used hashing algorithms.
- RSA (Rivest-Shamir-Adleman): RSA is an asymmetric encryption algorithm that requires a key set comprising the public and the private key in order to function. RSA is used for encryption, decryption, digital signatures, and key exchange. The ESP32 supports RSA key sizes of 1024 and 2048 bits.
- Elliptic Curve Cryptography (ECC): ECC is an alternative to RSA that can provide equivalent security with smaller key sizes. ECC is used for digital signatures, key exchange, and other public-key operations.
- Random Number Generator (RNG): The ESP32 includes a hardware-based random number generator to provide high-quality random numbers for cryptographic applications.
Overall, the cryptographic hardware acceleration on the ESP32 provides significant performance benefits compared to the software implementation of the cryptographic primitives.
DIY ESP32 Projects
ESP32 is widely used in both DIY and business projects due to its affordability, powerful functions, and compatibility. Below, you can see some DIY ESP32 projects.
Ping Pong LED Wall v3
Ping Pong LED Wall v3 is an ESP32-controlled 1920 ping pong balls matrix with the RGBW SK6812 LED behind each ball. The parallel data enable that matrix to have a refresh rate of over 74 fps. The panels are easy to replace in case of failure.
DIY Advanced IoT Password Vault Synced With Desktop App Via Google Firebase
DIY Advanced IoT Password Vault Synced With Desktop App Via Google Firebase is an ESP32-based hardware password vault that's synced with the desktop app with the help of Google Firebase. It harnesses the power of the ESP32 to perform complex cryptographic operations, such as data encryption/decryption using the AES-256 block cipher and integrity verification of the user data using the HMAC-SHA256. This device stores the encrypted data in the cloud and keeps the cryptographic keys on the device.
ESP32 Small TV
The ESP32 Small TV is an ESP32-powered project that repurposes an old CRT TV board. It involves making connections at the back of the CRT TV board to control the vertical and horizontal sync signals (VSY and HSY) and enable I2C communication. The project utilizes ESP32 to generate composite video output. An I2C-controlled IC (IX3253CE) is employed for adjusting color settings and managing the VSY and HSY signals.
KhadashPay V3.5
The KhadashPay V3.5 is an ESP32-based offline payment system. Though it's not connected to any financial institutions, this payment system is fully functional and can be used to issue replenishable gift cards to customers easily.
Alarma ESP32
This project involves building an ESP32-powered home alarm system. Aside from the ESP32, it utilizes a display, an RFID reader, a buzzer, and other external components, such as a siren with a relay, a PIR motion sensor, and a magnetic door sensor.
ESP32 Video Surveillance
The "ESP32 Video Surveillance" project is a simple ESP32-based CCTV camera.
PCB Projects Based-on ESP32
Below, you can see some advanced projects based on ESP32. The ESP32 is used as a component mounted on the PCB. These projects are made from design into reality through PCB assembly.
ESP32-Based Dual Phase Interleaved MPPT
ESP32-Based Dual Phase Interleaved MPPT is an MPPT (Maximum Power Point Tracking) solar charge controller. The custom-designed PCB integrates the ESP32-S3 microcontroller. It benefits from the ESP32-S3's powerful dual-core processor and various peripherals to implement the MPPT algorithm and control the buck converters.
It's capable of monitoring and analyzing the current and voltage from the solar panels to determine the maximum power point. The controller uses a dual-phase interleaved buck converter topology, which provides higher efficiency and better thermal performance compared to traditional buck converters.
The design incorporates protection mechanisms against overcurrent, overvoltage, and reverse polarity conditions to ensure safe operation. The project aims to provide an open-source and cost-effective solution for efficient solar energy harvesting and storage. The custom PCB 3D image is shown below.
OMOTE - DIY Universal Remote
The OMOTE PCBA is an ESP32-based open-source universal remote. Its capacitive 320x240 2.8” touchscreen provides an intuitive and snappy user interface for switching devices and settings. No hub or docking station is required as the remote features infrared, Wi-Fi, and Bluetooth connectivity. The pictures of the ESP32-PICO-D4 chip placed on the OMOTE PCB is shown below.
pxlDigit_24 - retro style character display
pxlDigit_24 is a 24-segment display. Its main PCB accommodates the ESP32 Wrover-B, DS3232M RTC, USB-C connector, BME280, Micro SD card slot, TSL2591 brightness sensor, MPR121 touch sensor, and MAX98357 3W I2S DAC.
The PCBs with soldered components utilized by this device are shown below.
XIAO ESP32 Home Automation Shield
XIAO ESP32 Home Automation Shield is a PCBA designed to control electrical loads wirelessly. It employs an ESP32 microcontroller, relays, and other components that are soldered to a custom PCB. The PCB used in this project is shown below.
Pixo | Dazzling Desk Display
Pixo is a stunning ESP32-powered RGB LED desk matrix that utilizes 163 WS2812B LEDs to display mesmerizing rainbow patterns. This project benefits from a custom-designed PCB shown below.
One-Stop PCBA and Box-Build Assembly Manufacturer for ESP32 Projects
If you are an original equipment manufacturer, business maker, or research institute, you will need a professional PCBA and box-build assembly manufacturer to turn your ESP32 project into real products.
For business ESP32 projects, you can work with PCBONLINE. Founded in 1999, PCBONLINE has two large advanced PCB manufacturing bases, one PCB assembly factory, stable supply chains, and one R&D team. Besides, it is a strategic partner of Espressif, and it keeps long-term cooperation with a Top 3 enclosure manufacturing factory in China.
PCBONLINE provides PCB fabrication, PCB assembly, component sourcing, PCBA value-added, and box-build assembly for ESP32 projects from prototypes to bulk production.
Besides one-stop PCBA manufacturing for ESP32 projects, PCBONLINE provides hardware and software R&D according to your initial idea.
PCBONLINE has powerful capabilities in hardware and software R&D and electronics manufacturing for ESP32 projects.
Affordable PCBA manufacturing because PCBONLINE is a source factory manufacturer. Relying on its EMS PCB assembly factory, PCBONLINE sources components, including ESP32, at lower prices.
High-quality PCBA manufacturing for ESP32 projects certified with ISO 9001:2015, IATF 16949, RoHS, REACH, UL, and IPC-A-610 Class 2/3.
For bulk production orders, PCBONLINE offers free R&D, PCBA samples, functional testing, and product samples.
PCBONLINE provides one-on-one engineering support to every ESP32 project. If you are interested in working with PCBONLINE, please email at info@pcbonline.com.
Conclusion
ESP32 is a cost-effective development board with lots of advanced features that can benefit various embedded systems and IoT devices. By using a PCBA to integrate the ESP32, you can create wireless communication products, IoT home appliances, and many more devices with powerful functions. To turn your ESP32 project into reality, work with the one-stop PCBA manufacturer PCBONLINE to serve until the final product delivery.
PCB assembly at PCBONLINE.pdf