Learn ESP32 with Arduino IDE

This is a practical course where you’ll learn how to take the most out of the ESP32 using the Arduino IDE. This is our complete guide to program the ESP32 with Arduino IDE, including projects, tips, and tricks!

GET THE COURSE

What’s inside the course?

The course contains 8 Modules to take the most out of the ESP32. We’ll start by introducing the ESP32 main features and explore its GPIOs. We’ll also cover a variety of subjects related with IoT like Web Servers, Bluetooth Low Energy (BLE), Bluetooth Classic, and LoRa. Each subject contains practical examples with schematics and code.

Here’s what you’ll have access with this course:

  • Course dashboard with video, code, schematics, and transcripts
  • All 8 Modules (downloadable eBook in PDF format with 620 pages)
  • Module #8 includes 4 advanced ESP32 Projects
  • Watch and Download the Video Course
  • Source Code + Full Schematics
  • Unlimited Updates
  • Exclusive access to a private Forum to ask questions
  • Exclusive access to our Facebook group community

Table of Contents

The first 7 Modules cover the main ESP32 concepts like analog inputs, PWM, digital outputs, timers, touch pins, interrupts, and much more; You’ll also learn about deep sleep, building web servers (with Wi-Fi), experiment with Bluetooth Low Energy (BLE), Bluetooth Classic, and use LoRa technology.

Module #1: Getting Started with ESP32

This first Module is an introduction to the ESP32 board. We’ll explore its features, and show you how to use your board with this course. You’ll also prepare your Arduino IDE to upload code to the ESP32.

  • Unit 1: Introducing ESP32
  • Unit 2: Installing the ESP32 Board in Arduino IDE in less than 1 minute (Windows, Mac OS X, and Linux)
  • Unit 3: How To Use Your ESP32 Board with this Course
  • Unit 4: Make the ESP32 Breadboard Friendly
  • Unit 5: ESP32 Troubleshooting Guide
  • Unit 6: Programming ESP32 with Atom Text Editor and PlatformIO IDE

Module #2: Exploring the ESP32 GPIO Pins

In this second Module we’ll explore the ESP32 GPIO functions. We’ll show you how to control digital outputs, create PWM signals, and read digital and analog inputs. We’ll also take a look at the ESP32 touch capacitive pins, built-in hall effect sensor, interrupts, timers, and flash memory.

  • Unit 1: ESP32 Digital Inputs and Outputs
  • Unit 2: ESP32 Touch Sensor
  • Unit 3: ESP32 Pulse-Width Modulation (PWM)
  • Unit 4: ESP32 Reading Analog Inputs
  • Unit 5: ESP32 Hall Effect Sensor
  • Unit 6: ESP32 with PIR Motion Sensor – Interrupts and Timers
  • Unit 7: ESP32 Flash Memory – Store Permanent Data (Write and Read)
  • Unit 8: Other ESP32 Sketch Examples

Module #3: ESP32 Deep Sleep Mode

Using deep sleep in your ESP32 is a great way to save power in battery-powered applications. In this Module we’ll show you how to put your ESP32 into deep sleep mode and the different ways to wake it up.

  • Unit 1: ESP32 Deep Sleep Mode
  • Unit 2: Deep Sleep – Timer Wake Up
  • Unit 3: Deep Sleep – Touch Wake Up
  • Unit 4: Deep Sleep – External Wake Up

Module #4: Building Web Servers with the ESP32

This Module explains how to build several web servers with the ESP32. After explaining some theoretical concepts, you’ll learn how to build a web server to display sensor readings, to control outputs, and much more. You’ll also learn how you can edit your web servers interface using HTML and CSS.

  • Unit 1: ESP32 Web Server – Introduction
  • Unit 2: ESP32 Web Server – Control Outputs
  • Unit 3: ESP32 Web Server – HTML and CSS Basics (Part 1/2)
  • Unit 4: ESP32 Web Server – HTML in Arduino IDE (Part 2/2)
  • Unit 5: ESP32 Web Server – Control Outputs (Relay)
  • Unit 6: Making Your ESP32 Web Server Password Protected
  • Unit 7: Accessing the ESP32 Web Server From Anywhere
  • Unit 8: ESP32 Web Server – Display Sensor Readings
  • Unit 9: ESP32 Control Servo Motor Remotely (Web Server)
  • Unit 10: ESP32 Color Picker Web Server for RGB LED Strip
  • Unit 11: Asynchronous Temperature and Humidity Web Server with Auto Update

Module #5: ESP32 Bluetooth Low Energy and Bluetooth Classic

The ESP32 comes not only with Wi-Fi, but it also has Bluetooth Classic and Bluetooth Low Energy (BLE) built-in. Learn how to use the ESP32 Bluetooth functionalities to scan nearby devices and exchange information (BLE client and server).

  • Unit 1: ESP32 Bluetooth Low Energy (BLE) – Introduction
  • Unit 2: Bluetooth Low Energy – Notify and Scan
  • Unit 3: ESP32 BLE Server (Part 1/2)
  • Unit 4: ESP32 BLE Client (Part 2/2)
  • Unit 5: ESP32 with Bluetooth Classic and Android Smartphone

Module #6: LoRa Technology with the ESP32

LoRa is a long range wireless technology. In this Module you’ll explore what’s LoRa and how you can use it with the ESP32 to extend the communication range between IoT devices.

  • Unit 1: ESP32 with LoRa – Introduction
  • Unit 2: ESP32 LoRa Sender and Receiver
  • Unit 3: Further Reading about LoRa Gateways
  • Unit 4: LoRa – Where to Go Next?

Module #7: ESP32 with MQTT

MQTT stands for Message Queuing Telemetry Transport. It is a lightweight publish and subscribe system perfect for Internet of Things applications. In this module you’ll learn how to use MQTT to establish a communication between two ESP32 boards, and how you can control the ESP32 using Node-RED.

  • Unit 1: ESP32 with MQTT – Introduction
  • Unit 2: Installing Mosquitto MQTT Broker on a Raspberry Pi
  • Unit 3: MQTT Project – MQTT Client ESP32 #1
  • Unit 4: MQTT Project – MQTT Client ESP32 #2
  • Unit 5: Installing Node-RED and Node-RED Dashboard on a Raspberry Pi
  • Unit 6: Connect ESP32 to Node-RED using MQTT

Module #8: ESP32 Projects

Module 8 is about creating more advanced projects with the ESP32 and applying the concepts learned throughout the course in real world applications.

Project #1: ESP32 Wi-Fi Multisensor – Temperature, Humidity, Motion, Luminosity, and Relay

In this project you’ll build an ESP32 Wi-Fi Multisensor. This device consists of a PIR motion sensor, a light dependent resistor (LDR), a DHT22 temperature and humidity sensor, a relay, and a status RGB LED. You’ll also build a web server that allows you to control the ESP32 multisensor using different modes.

  • Unit 1: ESP32 Wi-Fi Multisensor – Temperature, Humidity, Motion, Luminosity, and Relay Control
  • Unit 2: ESP32 Wi-Fi Multisensor – How the Code Works?

Project #2: Remote Controlled Wi-Fi Car Robot

In this project we’ll show you step by step how to create an ESP32 Wi-Fi remote controlled car robot.

  • Unit 1: Remote Controlled Wi-Fi Car Robot – Part 1/2
  • Unit 2: Remote Controlled Wi-Fi Car Robot – Part 2/2
  • Unit 3: Assembling the Smart Robot Car Chassis Kit
  • Unit 4: Extra – Access Point (AP) For Wi-Fi Car Robot

Project #3: Bluetooth Low Energy (BLE) Android Application with MIT App Inventor – Control Outputs and Display Sensor Readings

In this project you’re going to create an Android application to interact with the ESP32 using BLE.

  • Unit 1: ESP32 BLE Android Application – Control Outputs and Display Sensor Readings
  • Unit 2: Bluetooth Low Energy (BLE) Android Application with MIT App Inventor 2

Project #4: LoRa Long Range Sensor Monitoring – Reporting Sensor Readings from Outside: Soil Moisture and Temperature

In this project you’re going to build an off-the-grid monitoring system that sends soil moisture and temperature readings to and indoor receiver. To establish a communication between the sender and the receiver we’ll be using LoRa communication protocol.

  • Unit 1: LoRa Long Range Sensor Monitoring and Data Logging
  • Unit 2: ESP32 LoRa Sender
  • Unit 3: ESP32 LoRa Receiver
  • Unit 4: ESP32 LoRa Sender Solar Powered
  • Unit 5: Final Tests, Demonstration, and Data Analysis

Extra Units

The course also comes with a special module with some extra Units:

  • ESP32 Static/Fixed IP Address
  • ESP32 Dual Core – Create Tasks
  • ESP32 SPIFFS (SPI Flash File System)
  • Build an ESP32 Web Server using Files from Filesystem (SPIFFS)
  • ESP32 Over-the-air (OTA) Programming – Web Updater
  • ESP32 Pinout Reference: Which GPIO pins should you use?

Installing the ESP32 Board in Arduino IDE (Windows, Mac OS X, and Linux)

Now, it’s easier than ever! You can install the ESP32 board add-on in the Arduino IDE in less than 1 minute with this 3 step procedure (watch the video below).


Boards URL: https://dl.espressif.com/dl/package_esp32_index.json

Recommended ESP32 Board

For this course, we’ll be using the ESP32 DEVKIT V1 DOIT board.

However, any other ESP32 with the ESP-WROOM-32 chip should work just fine.

Here’s just a few examples of boards that are compatible with this course.

Invitation to Join our Private Forum!

This course comes with an opportunity to join our private Forum of like-minded people where you can ask questions about the course or other related subject. You’ll get direct help from Rui and Sara or from other active members of the community.

COURSE PACKAGE – How to Access

  • Course dashboard with video, code, schematics, and transcripts
  • UPDATED – June 17, 2019
  • All 8 Modules (downloadable eBook in PDF format with 620 pages)
  • Watch and Download the Video Course
  • 4 Advanced ESP32 Projects
  • Source Code + Full Schematics
  • Unlimited Updates
  • Exclusive access to a Private Forum

GET THE COURSE $29

Click here to get the video course + eBook

Note: After your purchase, you get an email with a registration link that you can use to access the course, download/watch videos and read the companion PDF eBook.

Have questions? Email me at https://randomnerdtutorials.com/support anytime for any reason.

You won’t regret it. My 60 day money back guarantee backs up every word in this message. Proceed with confidence. See you inside,

-Rui Santos

Backed by a 60 day 100% money-back guarantee

If you don’t like the course, I don’t want your money. Seriously, that’s why I offer a 60 days money back guarantee. Email me here and I will promptly refund all your money. No questions, no hassles – it’s that simple.

Frequently Asked Questions

Yes, I often update all my courses, so everyone who purchases gets free lifetime updates. You’ll also have access to future content that we’ll be adding to the course.

Well, if you don’t like it, I don’t want your money. Seriously, that’s why I offer a 60 days money back guarantee. Email me here and I will promptly refund all your money. No questions, no hassles – it’s that simple!

If you still have questions after reading this page please email me here. I’ll do my best to answer your questions.

This course is perfect if for:

  • Beginners – If you’re just starting using this module this course is perfect for you, because I’ll start from the very beginning and you’ll learn everything you need to know
  • Makers/DIYers – If you love making things, this course is perfect for you. You’ll design several circuits and projects
  • Hobbyists – If this is your hobby and you like to make projects in the weekends or late at night, this course is perfect for you. It has everything you need to know, so you don’t spend a ton of time looking for the right information in the wrong places

See what others are saying

This is one of the best sites on the net, period. I recently purchased your course (Learn ESP32 with Arduino IDE) and I can’t say enough about it. It simply let me bypass hours of aggravation. Clear instruction and great example code. Thanks again.

Jay W.

Hi Rui, purchased your ebook (Learn ESP32 with Arduino IDE) this weekend and it is helping me, big time. I have been struggling with many ‘easy’ wifi methods. Your walk through are understandable and simple to follow. I put together the DHT22 web server and it’s working well. I am now adding a voltage monitor.

Thanks again

Doug Little

Hey Rui,

Wanted to say that this course (Learn ESP32 with Arduino IDE) is one of the best purchases I made. Really happy with the content and structure of the material, so thank you.

Thanks again!

Regan The Blob

Your course on the ESP32, especially the LoRa sections are beautifully done!

Excellent tutorials and sample code.

Thanks so much. All the best to you.

Stewart Lindenberger

Get the Learn ESP32 with Arduino IDE Course

GET THE COURSE $29

AS SEEN ON…

FEATURED LOGOS