I designed this course to guide you through Arduino development, focusing on the ESP32 microprocessor family and using the Arduino IDE version 2.2.1 or newer. This course is ideal for learners eager to build real applications with kit hardware, regardless of their prior experience with the Arduino IDE or standard Arduino hardware.
ESP32 Microprocessors in Focus
In this course, I centre our learning on the ESP32 microprocessor, selecting at least 5 varieties that are compatible with our examples and mini-projects. If you already own an ESP32 development board, I'll show you how to make it work with our course content, although some customization might be necessary due to differences in pin numbering.
Learning Methodology and Content
I adopt an examples-based learning approach, starting with simple Arduino code and advancing to more complex examples. I cover breadboard construction and provide lessons on using LEDs, push-button switches, mini OLED displays, and an MPU with a gyroscope and accelerometer. We'll conclude the first part of the course with a project that integrates ESP32 WiFi and Bluetooth capabilities with a video game system controller.
Kit Options
I offer the option to purchase an all-inclusive, affordable hardware kit for this course, but it's not mandatory if you already have the necessary components. The kit options range from a basic version with a less-capable ESP32 to a more advanced kit featuring the Adafruit ESP32 Feather Huzzah and a LiPo battery, allowing your projects to operate wirelessly. I also provide PCB versions for a more stable assembly experience for those with soldering skills.
Who is this course for?
This course is for anyone who wants to explore the world of cyber-physical systems where the worlds of software and physical system control meet.
If you have seen a drone in flight and are curious about how the drone receives and executes commands, this course is for you. In part 2 of the course, the hardware of part 1 is used to control a drone and/or a drone simulator.
If the world of Arduino programming is one you want to learn but don't want to start at an over-simplified beginning, this course is for you.
If hands-on exploration of simple electronic circuits using LEDs, switches, and displays is something you want to try, this course is for you.
If you have used video game controllers (gamepads) and would like to explore how they work and how you can make them interact with your own hardware, this course is also for you.