hello friends! new(ish)!

ESP32

From InstallGentoo Wiki v2
Jump to navigation Jump to search

ESP32 is a family of relatively cheap, power-effective and often wireless-capable microcontrollers. Primarily used in IoT devices, embedded systems and also by hobbyists as a universal platform for development.

Overview

ESP32 series are developed and manufactured by Espressif Systems. Official release date: 6th of September 2016. This family of low-power, low-cost and Wi-Fi/Blutetooth-capable development platform offers many possibilities for implementing IoT devices on it's basis. While Espressif have developed their own framework for programming those microcontrollers, it is also fully compatible with Arduino framework, from libraries to hardware GPIO modules. In it's core, either Tensilica Xtensa LX6(single- and dual-core, 160-240MHz) or Xtensa LX7(dual-core, up to 240MHz) 32-bit processors are employed, while single-core RISC-V processors also remain an option. It usually features 34 GPIO pins, around 520KiB SRAM, 300KB-8MB of flash ROM that can be written via serial interface, and a Wi-Fi/Bluetooth-capable wireless communications module with a printed antenna. It is powered via micro-USB 3.3v interface, that also acts as an SPI when connected to a computer. It's worth noting that specs range widely from board to board, so make sure you read the spec sheet for the exact board you are going to get/already have.

Common applications

  • IoT devices: ESP32 boards are an extremely good platform to work with in the context of creating your own devices, no matter your skill level. They can be paired with virtually all Arduino modules and even ICS/SCADA stuff, if you are smart enough. Examples feature home security systems, climate and light control devices, programmable timers and more. Basically, as long as you are willing to spend hours and hours on end to build different projects - there is almost nothing that can stop you.
  • Specialized tools: As these boards are capable of wireless communications, they can be easily turned into many embedded systems that have a wide range of applications. For example, a Wi-Fi packet sniffer, Bluetooth action switch, drone flight controller - hell, you can even make it run an HTTP(S) server! Talking about expendables, they can also be used as radio beacons if paired with an onboard/external LoRa transceiver, or even be turned into a fully capable walkie-talkie. Not to talk about that they can be used as ordnance triggers.
  • Educational projects: Just like Arduino family of microcontrollers, ESP32s see frequent use in educational setting. If you wanna get your sibling/cousin/child into robotics and programming - it is a great place to start.

Buying guide

This guide will outline most widely available ESP32 boards out on the market as of 2024. It will be expanded and improved over time, eventually. The general price range varies from region to region, but to get you started with just a microcontroller and assuming you already have a micro-USB cord - expect spending about 10-20 USD.

ESP32 DEVKIT ESP32-WROOM-32 series - one of the most popular boards out there by a large margin. General purpose usage, such as IoT devices.

ESP32 LoRa v3 - just like the name implies, this board has a LoRa module. Suitable for specific applications that involve RF comms outside the 2.4GHz band. Also, often comes with a TFT screen and an antenna. Frequency range for LoRa is usually between 860-930MHz. Fun fact - many Ukrainian/Russian homemade drones, both observers and combat ones, use ESP32-based LoRa transceivers extensively as their communication method.

ESP32-CAM - this family of ESP32 boards' main feature is having a camera unit. Makes it good for home surveillance system usage - just strap it on your front door, connect some kind of sensor to detect movement, and get a picture of anyone who's there via web interface/Telegram bot/etc.

LILYGO ESP32 boards - now this is an extremely wide topic, but basically those boards feature already soldered onboard modules like TFT screens and 18650 battery sockets. Think of them as of more convenient and specialized versions. Select one for your usecase accordingly.