Treat Flux like your intern. Tell it what you'd like to build and it'll get to work. You can also ask it questions, brainstorm ideas, and teach it your preferences. Learn More
This project involves designing an ESP32-based control board for autonomous or radio-controlled robots. The board integrates various components, including sensors, encoders, an RC receiver, and an I2C display for configuration. Here is a detailed breakdown:
Project Overview
Controller: ESP32-DEVKIT-V1, a microcontroller with Wi-Fi and Bluetooth capabilities, used for main processing and control.
Motor Drivers: TB6612FNG, which is a dual H-Bridge motor driver that can control two DC motors.
Power Regulation: 7805 voltage regulator, which converts higher voltages down to +5V needed for some components.
Sensors and Encoders: Various sensors and encoders for feedback from the robot's environment and motors.
RC Receiver: Flysky RC receiver for remote control inputs.
Display: I2C display for configuring and monitoring the robot's operation.
Key Components and Connections
Power Supply Nets:
+3.3V: Power supply for ESP32 and other 3.3V components.
+5V: Power supply for motor drivers and other 5V components.
+VBAT: Battery voltage.
Signals for Motor Control:
MotorA_IN1, MotorA_IN2, MotorB_IN1, MotorB_IN2: Control signals for the motor driver.
Connections for U2 (TB6612FNG) to MotorA and MotorB.
Sensor Inputs:
Encoders: Encoder1_ChA, Encoder1_ChB, Encoder2_ChA, Encoder2_ChB: Encoder signals for tracking motor rotation.
Buttons: Button1, Button2, etc., for user inputs.
QTR Sensors: QTR1, QTR2: Typically used for line sensing.
Communication:
I2C Bus: I2C_SCL, I2C_SDA: I2C communication lines for connecting the display and other I2C devices.
IBUS_RX and \text{IBUS_TX}: Signals for communication with the Flysky RC receiver.
Mistakes to Spot
Duplicate designators: For example, multiple entries for MotorA_IN1 and MotorB_IN1.
Undefined properties: Some components like C2 and C4 have missing capacitance values.
Incorrect net assignments: Ensure each component is properly connected to its corresponding nets.
General Flow of Power and Signals
Power Regulation:
Battery voltage (+VBAT) is regulated to +5V using the 7805 voltage regulator (U3).
ESP32 and other 3.3V components are powered directly by a +5V to +3.3V converter onboard the ESP32.
Motor Control:
ESP32 sends PWM signals and directional control signals to U2 (TB6612FNG motor driver).
The motor driver then controls the motors connected to $\text{AO1}$, $\text{AO2}$, $\text{BO1}$, $\text{BO2}$.
Sensor and Encoder Inputs:
Encoders connected to ESP32 for motor feedback.
Buttons for manual inputs.
Communication:
I2C for display configuration.
RC receiver for remote control inputs through $\text{IBUS_RX}$ and $\text{IBUS_TX}$.
Let me know if you want more specific details or if there are particular areas you would like to focus on.
1y
1
MotorA_IN1
MotorA_IN1
MotorB_IN1
Encoder2_ChA
Encoder2_ChA
I2C_SCL
Encoder2_ChB
MotorA_IN2
Button3
QTR1
S4
QTR1
I2C_SDA
I2C_SCL
MotorB_IN1
S1
Button2
MotorB_IN2
Encoder1_ChA
QTR2
S4
Button3
S5
MotorB_IN2
Button2
IBUS_TX
Button1
IBUS_RX
S3
IBUS_RX
S5
MotorA_IN2
Button1
QTR2
S2
S3
Encoder2_ChB
Encoder1_ChA
IBUS_TX
Encoder1_ChB
S1
Encoder1_ChB
S2
I2C_SCL
J5
J11
+3.3V
R6
Resistance
10KΩ
R19
Resistance
10KΩ
J4
+VBAT
+3.3V
J9
R17
Resistance
20KΩ
R11
Resistance
20KΩ
R14
Resistance
10KΩ
R2
Resistance
10KΩ
R7
Resistance
20KΩ
R16
Resistance
10KΩ
+5V
R10
Resistance
10KΩ
R5
Resistance
20KΩ
+3.3V
R13
Resistance
20KΩ
J6
+5V
+5V
+5V
J7
+5V
+3.3V
+VBAT
R18
Resistance
20KΩ
+3.3V
R3
Resistance
10KΩ
+3.3V
R9
Resistance
2 Ω
J12
+5V
+5V
R8
Resistance
10KΩ
+VBAT
+5V
+3.3V
R15
Resistance
20KΩ
R1
Resistance
10KΩ
R4
Resistance
10KΩ
+3.3V
+5V
+5V
J8
J10
R12
Resistance
10KΩ
+3.3V
J14
C2
Capacitance
Capacitance
Capacitance
100uF
C4
Capacitance
Capacitance
U2
C1
Capacitance
Capacitance
Capacitance
100uF
J3
C3
Capacitance
Capacitance
U3
Manufacturer Part Number
7805
U1
Manufacturer Part Number
ESP32-DEVKIT-V1
J1
SW3
SW1
J2
D1
SW8
SW2
J13
No files yet
Reviews
Documents
Documents are markdown text files which describe project goals, capture details, or even simulation outputs.
Assets
Thumbnail ESP32.png
Thumbnail ESP32Thumbnail
ESP32 Robot Controller
Spot the mistake! Learn how to use AI to conduct a design review on an ESP32-based control board. This project is ideal for autonomous or radio-controller robots featuring inputs for sensors, encoders, and a Flysky RC receiver, plus an I2C display for configuration.
Properties
Properties describe core aspects of the project.
Pricing & Availability
Distributor
Qty 1
Arrow
$0.98–$2.75
Digi-Key
$3.97–$5.79
LCSC
$2.46–$3.22
Mouser
$5.68–$5.89
Verical
$31.76–$32.14
Controls
Welcome 👋
Flux helps you build PCBs faster with an AI teammate!
Create your account to collaborate, stay updated, fork your own version, and get instant answers from our AI agent.
nico
copilot
- Controller: ESP32-DEVKIT-V1, a microcontroller with Wi-Fi and Bluetooth capabilities, used for main processing and control.
- Motor Drivers: TB6612FNG, which is a dual H-Bridge motor driver that can control two DC motors.
- Power Regulation: 7805 voltage regulator, which converts higher voltages down to +5V needed for some components.
- Sensors and Encoders: Various sensors and encoders for feedback from the robot's environment and motors.
- RC Receiver: Flysky RC receiver for remote control inputs.
- Display: I2C display for configuring and monitoring the robot's operation.
Key Components and Connections-
Power Supply Nets:
- +3.3V: Power supply for ESP32 and other 3.3V components.
- +5V: Power supply for motor drivers and other 5V components.
- +VBAT: Battery voltage.
-
Signals for Motor Control:
- MotorA_IN1, MotorA_IN2, MotorB_IN1, MotorB_IN2: Control signals for the motor driver.
- Connections for U2 (TB6612FNG) to MotorA and MotorB.
-
Sensor Inputs:
- Encoders: Encoder1_ChA, Encoder1_ChB, Encoder2_ChA, Encoder2_ChB: Encoder signals for tracking motor rotation.
- Buttons: Button1, Button2, etc., for user inputs.
- QTR Sensors: QTR1, QTR2: Typically used for line sensing.
-
Communication:
- I2C Bus: I2C_SCL, I2C_SDA: I2C communication lines for connecting the display and other I2C devices.
- IBUS_RX and \text{IBUS_TX}: Signals for communication with the Flysky RC receiver.
Mistakes to Spot- Duplicate designators: For example, multiple entries for
- Undefined properties: Some components like
- Incorrect net assignments: Ensure each component is properly connected to its corresponding nets.
General Flow of Power and SignalsMotorA_IN1andMotorB_IN1.C2andC4have missing capacitance values.-
Power Regulation:
- Battery voltage (+VBAT) is regulated to +5V using the 7805 voltage regulator (U3).
- ESP32 and other 3.3V components are powered directly by a +5V to +3.3V converter onboard the ESP32.
-
Motor Control:
- ESP32 sends PWM signals and directional control signals to U2 (TB6612FNG motor driver).
- The motor driver then controls the motors connected to $\text{AO1}$, $\text{AO2}$, $\text{BO1}$, $\text{BO2}$.
-
Sensor and Encoder Inputs:
- Encoders connected to ESP32 for motor feedback.
- Buttons for manual inputs.
-
Communication:
- I2C for display configuration.
- RC receiver for remote control inputs through $\text{IBUS_RX}$ and $\text{IBUS_TX}$.
Connections Example