A collection of Arduino and ESP32 sketches for touch sensors, OLEDs, motors, cameras and browser controls. Each folder is a separate experiment; there is no single application to upload or shared dependency lockfile.
flowchart LR
Input[Touch / sensor / phone / browser] --> Sketch[Choose one sketch]
Sketch --> Output[LED / OLED / motor / servo / camera stream]
The descriptions below follow the committed source. Board wiring, library compatibility and physical behavior still need checking for your own build.
| Sketch | Exercise | Main requirements / notes |
|---|---|---|
| Touch sensor interface | Digital touch input and LED feedback | Built-in Arduino APIs; touch D2, LED D13 |
| GALIJ_OLED | OLED animation and touch interaction | Wire, Adafruit GFX / SSD1306 |
| OLED_TOUCH | Touch-selected OLED animation | Wire, Adafruit GFX / SSD1306 |
| SdCard_demo | SD text-file read/write exercise | SD, SPI; source credits educ8s.tv |
| Meme_voice_playback | Sensor-triggered ISD1820 playback | Flame input D11, playback trigger D12 |
| L298N_MODULE_CAR_TEST | L298N motor direction / speed test | Check enable and motor pin definitions |
| 2DC_L293D | Two-motor L293D direction test | D2–D5 motor control |
| 4DC_L293D | Four-motor direction test | D2–D9 motor control |
| BT_CAR | HC-05 Bluetooth car commands | SoftwareSerial; includes a commented diagonal-control variant |
| AIOR_APK_TEST | App byte-command and motor test | SoftwareSerial; 9600 baud |
| drone_motor_test | Potentiometer-to-ESC throttle exercise | Servo library; A0 potentiometer, D6 signal |
| ESP32_OLED_TOUCH | ESP32 touch-triggered OLED animation | Wire, Adafruit GFX / SSD1306 |
| SERVO_WEB | Single-servo web control | WiFi, ESP32Servo; signal GPIO13 |
| Pan_tilt_control | Two-servo web control | WiFi, ESP32Servo; GPIO13 / GPIO12 |
| CameraWebServer | Camera web-server example | Keep companion .cpp/.h files; check selected camera model |
| Rhyx-m21-cam | RHYX M21 camera streaming | esp_camera, WiFi, WebServer; companion camera_pins.h |
| ESP32CAM_CAR | Camera car with browser controls | AsyncTCP / ESPAsyncWebServer; schematic included |
| Pan_Tilt_Camera | Camera stream plus pan/tilt experiment | AsyncTCP, ESPAsyncWebServer, ESP32Servo; integration caveat below |
The face-detection folder contains separate Python camera/Arduino experiments. Its README lists cvzone and pyfirmata; it is not an Arduino sketch.
- Clone this repository and open one
.inoin Arduino IDE. Keep that sketch's companion headers/source files with it. If the IDE asks to create a matching sketch folder, keep the companion files together there too. - Select the actual board and port. For ESP32, install the matching board support and check the camera model, GPIO map and partition settings in the chosen folder.
- Install only the libraries imported by that sketch. OLED examples use Adafruit GFX and SSD1306 with I²C address
0x3C; camera and async-network examples have additional dependencies listed above. Their API versions are not pinned. - Compare every pin definition with your wiring. Configure your own Wi-Fi details locally for network examples; do not commit real credentials. Station-mode examples join a router, while AP examples create their own network.
- Compile first, then upload and use the sketch's configured serial baud rate for diagnostics. Start with Touch sensor interface if you want the smallest wiring exercise.
- The sketches are learning snapshots, not a set of newly validated hardware builds. An included ZIP of a library is not a versioned compatibility guarantee.
Pan_Tilt_Cameracurrently starts synchronous and asynchronous servers on port 80. Resolve that shared-port conflict and its client URLs before treating the combined stream/control experiment as working.- Motor and ESC tests can actuate hardware immediately. Disconnect propellers for ESC checks, lift car wheels for motor checks, use a suitable external actuator supply and share grounds. GPIO pins are control signals, not motor power supplies.
- The SD demo creates/writes files; use a card whose contents you can replace. Sensor polarity and servo travel limits depend on the actual modules.
For the separate combined robot build, see All-in-One Arduino Robot, which includes its app source, schematic and command table.
See LICENSE for the repository's MIT license. Retain upstream notices in copied examples, including the SD tutorial attribution and Espressif camera-source headers. Authorship of every upstream example is not implied by this collection.