🚗 TechieTalksAI Robotic Car

ESP32 · L298N · HC-SR04 · Servo · OLED · NeoPixel · 18650 Pack

18650 Pack 2S · 7.4V nom / 8.4V full BAT+ · BAT− L298N Motor Driver ENA IN1 IN2 IN3 IN4 ENB OUT1/2 · OUT3/4 ESP32 BRAIN GPIO25=ENA GPIO26=IN1 GPIO27=IN2 GPIO14=IN3 GPIO12=IN4 GPIO13=ENB GPIO5=TRIG GPIO18=ECHO GPIO19=SERVO GPIO4=BUZZ GPIO21=SDA GPIO22=SCL GPIO23=NEO GPIO15=BTN 3.3V · 5V(Vin) · GND HC-SR04 Ultrasonic Sensor VCC · TRIG · ECHO · GND OLED 128×64 I²C Display VCC · SDA · SCL · GND Servo Motor Signal · VCC · GND 5V external power NeoPixel WS2812B LED Strip DIN · VCC · GND Buzzer Active · + · − Push Button GPIO15 → BTN → GND Left BO Motor OUT1 · OUT2 Right BO Motor OUT3 · OUT4 Voltage Divider 330 Ω BAT+ 7.4V→VIN 5V→ESP32 Vin 5V→HC-SR04 VCC 3.3V 5V ext→Servo 5V→NeoPixel COMMON GND RAIL ENA·GPIO25 ENB·GPIO13 TRIG·GPIO5 ECHO÷VD·GPIO18 SDA·GPIO21 SCL·GPIO22 SIG·GPIO19 GPIO23→330Ω→DIN GPIO4→Buzzer+ GPIO15
BAT+ Power (7.4V)
5V Rail
Common GND
PWM Motor Control
I²C Bus (SDA/SCL)
Signal (TRIG / GPIO)
ECHO (via Voltage Divider)
Servo Signal (PWM)
NeoPixel Data (330Ω)

⚡ Common GND Rail — All modules share this

ESP32 GND
L298N GND
HC-SR04 GND
OLED GND
Servo GND
NeoPixel GND
Buzzer GND (−)
Push Button GND
Left BO Motor GND (via L298N)
Right BO Motor GND (via L298N)
⚡ ESP32 — GPIO Map
GPIO 25L298N ENAPWM speed A
GPIO 26L298N IN1Dir A
GPIO 27L298N IN2Dir A
GPIO 14L298N IN3Dir B
GPIO 12L298N IN4Dir B
GPIO 13L298N ENBPWM speed B
GPIO 5HC-SR04 TRIG10µs pulse
GPIO 18HC-SR04 ECHO ÷VD3.3V safe
GPIO 19Servo Signal50Hz PWM
GPIO 21OLED SDAI²C
GPIO 22OLED SCLI²C
GPIO 23330Ω → NeoPixel DINWS2812B
GPIO 4Buzzer +Active buzzer
GPIO 15Push Button → GNDINPUT_PULLUP
🔧 L298N — Connections
VIN / +12VBAT+ (7.4V)Motor power
GNDCommon GND
5V OUTESP32 Vin, HC-SR04 VCCOnboard reg
ENAGPIO 25 PWMSpeed ctrl A
IN1/IN2GPIO 26 / GPIO 27Direction A
IN3/IN4GPIO 14 / GPIO 12Direction B
ENBGPIO 13 PWMSpeed ctrl B
OUT1/OUT2Left BO MotorH-bridge A
OUT3/OUT4Right BO MotorH-bridge B
🔋 Power & Peripherals
18650 BAT+L298N VIN7.4–8.4V
18650 BAT−Common GND Rail
L298N 5VESP32 Vin + HC-SR04 VCCRegulated
ESP32 3.3VOLED VCC3.3V out
5V extServo VCC, NeoPixel VCCDirect 5V
ECHO ÷VD1kΩ + 2kΩ divider5V→3.3V
NeoPixel330Ω series on DINProtects data
OLED addr0x3C (default)I²C
BTN pullINPUT_PULLUP on GPIO15LOW=pressed
⚠ Important Notes:
HC-SR04 ECHO outputs 5V — ESP32 GPIO is 3.3V tolerant only. Use a voltage divider (1kΩ + 2kΩ) or logic level shifter to protect the ESP32.
Servo & NeoPixel draw significant current at 5V — power them directly from the 5V supply, not from the ESP32's 3.3V pin.
GPIO 12 on ESP32 is a strapping pin — boot may fail if pulled HIGH during startup. Verify your motor driver state at power-on.
NeoPixel DIN — always add a 300–500Ω series resistor to suppress ringing and protect the first LED.
• All GND connections must share a common reference — float GND between modules causes erratic behaviour.