This repository is a comprehensive collection of study materials, example codes, and notes for learning and experimenting with the ESP32 microcontroller. It is designed for students, hobbyists, and developers who want to explore various features of the ESP32, including GPIO, analog/digital I/O, interrupts, timers, PWM, touch sensors, flash memory, and more. Future updates will include Web Server, LoRa, BLE, and other advanced topics.
- Analog Read: Reading analog values from sensors.
- Flash Memory: Storing and retrieving data in ESP32's flash.
- Hall Effect Sensor: Using the built-in hall sensor.
- Interrupts & Timers: Handling hardware interrupts and timers.
- LED Control: Basic GPIO output for LEDs.
- PWM: Generating PWM signals for motors, LEDs, etc.
- Touch Sensor: Using ESP32's capacitive touch inputs.
- Troubleshooting: Common issues and solutions.
- Introduction: Overview and getting started notes.
Coming Soon:
- Web Server (HTTP/REST, WebSocket)
- LoRa Communication
- BLE (Bluetooth Low Energy)
- OTA Updates
- More peripherals and advanced examples
esp32Funcs/
β
βββ include/ # Header files (if any)
βββ lib/ # External libraries
βββ src/ # Source code examples
β βββ analogRead.cpp
β βββ flashMemory.cpp
β βββ hallEffectSensor.cpp
β βββ InterruptsTimers.cpp
β βββ introduction.cpp
β βββ led.cpp
β βββ pwm.cpp
β βββ touch.cpp
β βββ troubleshooting.cpp
βββ test/ # Test files
βββ platformio.ini # PlatformIO project configuration
βββ README.md # This file
- All code examples are written in C++ for PlatformIO.
- Each
.cppfile is self-contained and demonstrates a specific feature. - Use PlatformIO in VS Code for easy building and uploading.
- Check the
troubleshooting.cppand this README for common issues and tips.
- Install PlatformIO in VS Code.
- Clone this repository:
git clone https://github.com/yourusername/esp32Funcs.git - Open the project in VS Code.
- Connect your ESP32 board and select the correct COM port.
- Build and upload any example from the
src/folder.
- Start with the
introduction.cppand LED examples if you are new to ESP32. - Experiment by modifying the code and observing the results.
- Read the comments in each file for explanations.
- Use the PlatformIO Serial Monitor for debugging and output.
Feel free to contribute new examples, notes, or improvements via pull requests!
Happy