What is ESP32 and how to start with it?
A Little Background
Espressif made a significant move in 2014 when they introduced the ESP8266 module. ESP8266 was a low cost and low power IoT module, which combines a microcontroller and Wi-Fi connectivity. Those days it was expensive and not so easy to connect devices to the Internet. Thus, the ESP8266 opened new doors to the IoT world with its $1.50 price tag. However its superior price/performance ratio, there was some drawbacks of the module, which can be tolerated considering its cost efficiency.
In September 2016, Espressif announced ESP32, the successor of ESP8266. The new ESP32 introduced Bluetooth, BLE and Wi-Fi connectivity. Plus, Espressif added a dual-core CPU, larger RAM, more internal memory, and a bunch of hardware functions. The resulting system was powerful to answer the needs of modern IoT devices when we think of security, performance, energy efficiency and physical dimensions. However the specifications are subject to change, an average ESP32 SoC (System on Chip) has one 240Mhz CPU for applications, another 80Mhz CPU for wireless communications, 4MB of internal flash memory, 150 Mbits Wi-Fi, Bluetooth 4.2 and Bluetooth Low Energy (BLE) functions. It also features common microcontroller functionalities like PWM, ADC, DAC, I2C, SPI, and UART. So, with an ESP32 device, you'll have the power to make any IoT device with minimum budget and effort.
Programming an ESP32 device is as easy as programming an Arduino device. You may choose the Arduino IDE or ESP-IDF to program your device. Using the Arduino IDE is easier. On the other hand, using ESP-IDF gives you more power. Accordingly, if you're a beginner or hobbyist, starting with Arduino IDE will make you more comfortable. However, if you need more control over the hardware, like power management, wireless power configuration or CPU core management, you'll need the ESP-IDF.
There are many forms of ESP32 devices, which are prototyping hardware, modules and IC's. The prototyping hardware includes everything to program and run your projects. It's generally for learning and hobby projects. On the other hand, modules and IC's are made for production purposes, so you'll need to design your circuit and add supporting components. Most ESP32 Modules include an onboard antenna, filter capacitors and metal shield for EMI protection. They're already FCC certified, so using ESP32 module will speed up the time to market. However, if your product has a custom shape or requirements, like a smartwatch, ESP32 IC will be suitable for you. In this case, you'll be responsible for filtering, antenna design, and the certifications from the authorities. Whatever your need is, you'll find a suitable ESP32 form easily.
ESP32 is a powerful yet affordable device for cool IoT projects. Even if you're a beginner or professional, it makes your projects smarter.
Turta makes ESP32 based IoT development hardware featuring a modular, plug and play sensor system. To explore our unique solution, visit the IoT Node page.