mirror of
https://github.com/alexandrebobkov/ESP-Nodes.git
synced 2025-08-09 14:35:27 +00:00
RC Robot Tutorial
This commit is contained in:
Binary file not shown.
Binary file not shown.
@@ -1,8 +1,16 @@
|
|||||||
HOW DOES IT WORK?
|
HOW DOES IT WORK?
|
||||||
=================
|
=================
|
||||||
|
|
||||||
The BitByteRider RC car is powered by ESP32-C3 Breadboard & Power adapter developmemt board.
|
The bitByteRider RC car is powered by ESP32-C3 bitBoard. The Schematic and KiCAd PCB board files are available
|
||||||
The Schematic and KiCAd PCB board are available on GitHub_: https://github.com/alexandrebobkov/ESP32-C3_Breadboard-Adapter
|
on GitHub_: https://github.com/alexandrebobkov/ESP32-C3_Breadboard-Adapter
|
||||||
|
|
||||||
|
The bitByteRider RC car operates using two main units: the *transmitter*, which reads and sends the joystick's X and Y values, and
|
||||||
|
the *receiver*, which interprets these values and converts them into PWM signals to control the DC motors. Both units communicate
|
||||||
|
via **ESP-NOW**, a low-latency, connectionless wireless protocol that requires no Wi-Fi network or pairing.
|
||||||
|
|
||||||
|
In addition to enabling real-time control, using ESP-NOW introduces to key networking concepts such as **data encapsulation** and
|
||||||
|
structured communication. By using data structures to group control variables, you gain hands-on experience with how information
|
||||||
|
is packaged and transmitted — laying the groundwork for understanding the fundamentals of network communication in embedded systems.
|
||||||
|
|
||||||
.. _GitHub: https://github.com/alexandrebobkov/ESP32-C3_Breadboard-Adapter
|
.. _GitHub: https://github.com/alexandrebobkov/ESP32-C3_Breadboard-Adapter
|
||||||
|
|
||||||
@@ -16,7 +24,7 @@ The GPIO numbers correspond to those on the ESP32-C3 WROOM microcontroller. The
|
|||||||
Reading the Joystick x- and y- axis
|
Reading the Joystick x- and y- axis
|
||||||
~~~~~~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
To determine the position of the Joystick, the BitRider RC car uses ADC to measure voltage on two GPIOs connected to the joystic
|
To determine the position of the Joystick, the BitRider RC car uses ADC to measure voltage on two GPIOs connected to the joystick
|
||||||
x- and y- axis potentionometers (**GPIO0** and **GPIO1**).
|
x- and y- axis potentionometers (**GPIO0** and **GPIO1**).
|
||||||
|
|
||||||
Controlling the Direction and Speed
|
Controlling the Direction and Speed
|
||||||
|
@@ -35,15 +35,21 @@
|
|||||||
|
|
||||||
<section id="how-does-it-work">
|
<section id="how-does-it-work">
|
||||||
<h1><span class="section-number">2. </span>HOW DOES IT WORK?<a class="headerlink" href="#how-does-it-work" title="Link to this heading">¶</a></h1>
|
<h1><span class="section-number">2. </span>HOW DOES IT WORK?<a class="headerlink" href="#how-does-it-work" title="Link to this heading">¶</a></h1>
|
||||||
<p>The BitByteRider RC car is powered by ESP32-C3 Breadboard & Power adapter developmemt board.
|
<p>The bitByteRider RC car is powered by ESP32-C3 bitBoard. The Schematic and KiCAd PCB board files are available
|
||||||
The Schematic and KiCAd PCB board are available on <a class="reference external" href="https://github.com/alexandrebobkov/ESP32-C3_Breadboard-Adapter">GitHub</a>: <a class="reference external" href="https://github.com/alexandrebobkov/ESP32-C3_Breadboard-Adapter">https://github.com/alexandrebobkov/ESP32-C3_Breadboard-Adapter</a></p>
|
on <a class="reference external" href="https://github.com/alexandrebobkov/ESP32-C3_Breadboard-Adapter">GitHub</a>: <a class="reference external" href="https://github.com/alexandrebobkov/ESP32-C3_Breadboard-Adapter">https://github.com/alexandrebobkov/ESP32-C3_Breadboard-Adapter</a></p>
|
||||||
|
<p>The bitByteRider RC car operates using two main units: the <em>transmitter</em>, which reads and sends the joystick’s X and Y values, and
|
||||||
|
the <em>receiver</em>, which interprets these values and converts them into PWM signals to control the DC motors. Both units communicate
|
||||||
|
via <strong>ESP-NOW</strong>, a low-latency, connectionless wireless protocol that requires no Wi-Fi network or pairing.</p>
|
||||||
|
<p>In addition to enabling real-time control, using ESP-NOW introduces to key networking concepts such as <strong>data encapsulation</strong> and
|
||||||
|
structured communication. By using data structures to group control variables, you gain hands-on experience with how information
|
||||||
|
is packaged and transmitted — laying the groundwork for understanding the fundamentals of network communication in embedded systems.</p>
|
||||||
<section id="reserved-pins-gpios">
|
<section id="reserved-pins-gpios">
|
||||||
<h2><span class="section-number">2.1. </span>Reserved Pins & GPIOs<a class="headerlink" href="#reserved-pins-gpios" title="Link to this heading">¶</a></h2>
|
<h2><span class="section-number">2.1. </span>Reserved Pins & GPIOs<a class="headerlink" href="#reserved-pins-gpios" title="Link to this heading">¶</a></h2>
|
||||||
<p>The following table summarizes GPIOs and pins reserved for operations purposes.</p>
|
<p>The following table summarizes GPIOs and pins reserved for operations purposes.</p>
|
||||||
<p>The GPIO numbers correspond to those on the ESP32-C3 WROOM microcontroller. The Pin number corresponds to the pin on the Breadboard and Power adapter development board.</p>
|
<p>The GPIO numbers correspond to those on the ESP32-C3 WROOM microcontroller. The Pin number corresponds to the pin on the Breadboard and Power adapter development board.</p>
|
||||||
<section id="reading-the-joystick-x-and-y-axis">
|
<section id="reading-the-joystick-x-and-y-axis">
|
||||||
<h3><span class="section-number">2.1.1. </span>Reading the Joystick x- and y- axis<a class="headerlink" href="#reading-the-joystick-x-and-y-axis" title="Link to this heading">¶</a></h3>
|
<h3><span class="section-number">2.1.1. </span>Reading the Joystick x- and y- axis<a class="headerlink" href="#reading-the-joystick-x-and-y-axis" title="Link to this heading">¶</a></h3>
|
||||||
<p>To determine the position of the Joystick, the BitRider RC car uses ADC to measure voltage on two GPIOs connected to the joystic
|
<p>To determine the position of the Joystick, the BitRider RC car uses ADC to measure voltage on two GPIOs connected to the joystick
|
||||||
x- and y- axis potentionometers (<strong>GPIO0</strong> and <strong>GPIO1</strong>).</p>
|
x- and y- axis potentionometers (<strong>GPIO0</strong> and <strong>GPIO1</strong>).</p>
|
||||||
</section>
|
</section>
|
||||||
<section id="controlling-the-direction-and-speed">
|
<section id="controlling-the-direction-and-speed">
|
||||||
|
File diff suppressed because one or more lines are too long
@@ -1,4 +1,4 @@
|
|||||||
# Sphinx build info version 1
|
# Sphinx build info version 1
|
||||||
# This file records the configuration used when building these files. When it is not found, a full rebuild will be done.
|
# This file records the configuration used when building these files. When it is not found, a full rebuild will be done.
|
||||||
config: 0ae31f3b963539f9887a19e6d57e57b6
|
config: 41eae0734681e13ff682277401a9e296
|
||||||
tags: 62a1e7829a13fc7881b6498c52484ec0
|
tags: 62a1e7829a13fc7881b6498c52484ec0
|
||||||
|
@@ -286,8 +286,8 @@ allows the RC car to respond instantly to user input, managing speed and directi
|
|||||||
</a>
|
</a>
|
||||||
</h2>
|
</h2>
|
||||||
<p>
|
<p>
|
||||||
The BitByteRider RC car is powered by ESP32-C3 Breadboard & Power adapter developmemt board.
|
The bitByteRider RC car is powered by ESP32-C3 bitBoard. The Schematic and KiCAd PCB board files are available
|
||||||
The Schematic and KiCAd PCB board are available on
|
on
|
||||||
<a class="reference external" href="https://github.com/alexandrebobkov/ESP32-C3_Breadboard-Adapter">
|
<a class="reference external" href="https://github.com/alexandrebobkov/ESP32-C3_Breadboard-Adapter">
|
||||||
GitHub
|
GitHub
|
||||||
</a>
|
</a>
|
||||||
@@ -296,6 +296,32 @@ The Schematic and KiCAd PCB board are available on
|
|||||||
https://github.com/alexandrebobkov/ESP32-C3_Breadboard-Adapter
|
https://github.com/alexandrebobkov/ESP32-C3_Breadboard-Adapter
|
||||||
</a>
|
</a>
|
||||||
</p>
|
</p>
|
||||||
|
<p>
|
||||||
|
The bitByteRider RC car operates using two main units: the
|
||||||
|
<em>
|
||||||
|
transmitter
|
||||||
|
</em>
|
||||||
|
, which reads and sends the joystick’s X and Y values, and
|
||||||
|
the
|
||||||
|
<em>
|
||||||
|
receiver
|
||||||
|
</em>
|
||||||
|
, which interprets these values and converts them into PWM signals to control the DC motors. Both units communicate
|
||||||
|
via
|
||||||
|
<strong>
|
||||||
|
ESP-NOW
|
||||||
|
</strong>
|
||||||
|
, a low-latency, connectionless wireless protocol that requires no Wi-Fi network or pairing.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
In addition to enabling real-time control, using ESP-NOW introduces to key networking concepts such as
|
||||||
|
<strong>
|
||||||
|
data encapsulation
|
||||||
|
</strong>
|
||||||
|
and
|
||||||
|
structured communication. By using data structures to group control variables, you gain hands-on experience with how information
|
||||||
|
is packaged and transmitted — laying the groundwork for understanding the fundamentals of network communication in embedded systems.
|
||||||
|
</p>
|
||||||
<section id="reserved-pins-gpios">
|
<section id="reserved-pins-gpios">
|
||||||
<h3>
|
<h3>
|
||||||
Reserved Pins & GPIOs
|
Reserved Pins & GPIOs
|
||||||
@@ -317,7 +343,7 @@ The Schematic and KiCAd PCB board are available on
|
|||||||
</a>
|
</a>
|
||||||
</h4>
|
</h4>
|
||||||
<p>
|
<p>
|
||||||
To determine the position of the Joystick, the BitRider RC car uses ADC to measure voltage on two GPIOs connected to the joystic
|
To determine the position of the Joystick, the BitRider RC car uses ADC to measure voltage on two GPIOs connected to the joystick
|
||||||
x- and y- axis potentionometers (
|
x- and y- axis potentionometers (
|
||||||
<strong>
|
<strong>
|
||||||
GPIO0
|
GPIO0
|
||||||
|
Reference in New Issue
Block a user