mirror of
https://github.com/alexandrebobkov/ESP-Nodes.git
synced 2025-08-08 13:40:52 +00:00
RC Robot Tutorial
This commit is contained in:
Binary file not shown.
Binary file not shown.
@@ -12,15 +12,15 @@ In addition to enabling real-time control, using ESP-NOW introduces key networki
|
||||
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.
|
||||
|
||||
The joystick used in the bitByteRider RC car remote unit outputs analog voltages ranging from 0V to 3.3V on both the x- and y- axes,
|
||||
The joystick used in the bitByteRider RC car remote unit outputs analog voltages ranging from 0V to 3.3V on both the x- and y-axes,
|
||||
depending on the position of the joystick. These voltage levels are read by the ESP32-C3's ADC (Analog-to-Digital Converter) inputs.
|
||||
|
||||
When the joystick is in its neutral (centered) position, the ADC inputs on the ESP32-C3 receive approximately 1.65V on both axes.
|
||||
When the joystick is in its neutral (centred) position, the ADC inputs on the ESP32-C3 receive approximately 1.65V on both axes.
|
||||
This midpoint voltage is interpreted and interpolated into a PWM (Pulse Width Modulation) value of 0, indicating no movement or
|
||||
motor activity.
|
||||
|
||||
As the joystick is pushed to its maximum positions along the x- and y- axis, the voltage increases up to 3.3V. This maximum voltage
|
||||
is interpolated to a PWM value of 1024, which corresponds to a 100% duty cycle on the receiver side—resulting in full-speed
|
||||
As the joystick is pushed to its maximum positions along the x- and y-axis, the voltage increases up to 3.3V. This maximum voltage
|
||||
is interpolated to a PWM value of 1024, which corresponds to a 100% duty cycle on the receiver side, resulting in full-speed
|
||||
operation of the DC motors.
|
||||
|
||||
To transmit control data, the X and Y axis values are encapsulated in a C struct, along with the receiver's **MAC** address, and sent
|
||||
@@ -33,6 +33,11 @@ signals. These signals are then used to control the rotation speeds of the DC mo
|
||||
This process not only facilitates real-time control but also introduces you to key networking concepts such as data
|
||||
encapsulation, data structs, and the fundamentals of wireless data transmission in embedded systems.
|
||||
|
||||
.. admonition:: What is encapsulation?
|
||||
|
||||
Encapsulation refers to the process of organizing and packaging data into a structured format before it is transmitted between
|
||||
devices. This is a fundamental concept in networking and communication protocols, including those used in IoT systems.
|
||||
|
||||
.. _GitHub: https://github.com/alexandrebobkov/ESP32-C3_Breadboard-Adapter
|
||||
|
||||
Reserved Pins & GPIOs
|
||||
|
@@ -43,13 +43,13 @@ via <strong>ESP-NOW</strong>, a low-latency, connectionless wireless protocol th
|
||||
<p>In addition to enabling real-time control, using ESP-NOW introduces 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>
|
||||
<p>The joystick used in the bitByteRider RC car remote unit outputs analog voltages ranging from 0V to 3.3V on both the x- and y- axes,
|
||||
<p>The joystick used in the bitByteRider RC car remote unit outputs analog voltages ranging from 0V to 3.3V on both the x- and y-axes,
|
||||
depending on the position of the joystick. These voltage levels are read by the ESP32-C3’s ADC (Analog-to-Digital Converter) inputs.</p>
|
||||
<p>When the joystick is in its neutral (centered) position, the ADC inputs on the ESP32-C3 receive approximately 1.65V on both axes.
|
||||
<p>When the joystick is in its neutral (centred) position, the ADC inputs on the ESP32-C3 receive approximately 1.65V on both axes.
|
||||
This midpoint voltage is interpreted and interpolated into a PWM (Pulse Width Modulation) value of 0, indicating no movement or
|
||||
motor activity.</p>
|
||||
<p>As the joystick is pushed to its maximum positions along the x- and y- axis, the voltage increases up to 3.3V. This maximum voltage
|
||||
is interpolated to a PWM value of 1024, which corresponds to a 100% duty cycle on the receiver side—resulting in full-speed
|
||||
<p>As the joystick is pushed to its maximum positions along the x- and y-axis, the voltage increases up to 3.3V. This maximum voltage
|
||||
is interpolated to a PWM value of 1024, which corresponds to a 100% duty cycle on the receiver side, resulting in full-speed
|
||||
operation of the DC motors.</p>
|
||||
<p>To transmit control data, the X and Y axis values are encapsulated in a C struct, along with the receiver’s <strong>MAC</strong> address, and sent
|
||||
wirelessly using ESP-NOW. This protocol enables low-latency, connectionless communication between the transmitter and receiver
|
||||
@@ -58,6 +58,11 @@ without requiring a Wi-Fi network or pairing.</p>
|
||||
signals. These signals are then used to control the rotation speeds of the DC motors, enabling smooth and responsive remote control.</p>
|
||||
<p>This process not only facilitates real-time control but also introduces you to key networking concepts such as data
|
||||
encapsulation, data structs, and the fundamentals of wireless data transmission in embedded systems.</p>
|
||||
<div class="admonition-what-is-encapsulation admonition">
|
||||
<p class="admonition-title">What is encapsulation?</p>
|
||||
<p>Encapsulation refers to the process of organizing and packaging data into a structured format before it is transmitted between
|
||||
devices. This is a fundamental concept in networking and communication protocols, including those used in IoT systems.</p>
|
||||
</div>
|
||||
<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>
|
||||
<p>The following table summarizes GPIOs and pins reserved for operations purposes.</p>
|
||||
|
File diff suppressed because one or more lines are too long
@@ -1,4 +1,4 @@
|
||||
# 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.
|
||||
config: fb69cb3f5f9ce624b614209819cd5fd5
|
||||
config: 564111c68e4938e1ff35159ef0a02532
|
||||
tags: 62a1e7829a13fc7881b6498c52484ec0
|
||||
|
@@ -325,17 +325,17 @@ structured communication. By using data structures to group control variables, y
|
||||
is packaged and transmitted, laying the groundwork for understanding the fundamentals of network communication in embedded systems.
|
||||
</p>
|
||||
<p>
|
||||
The joystick used in the bitByteRider RC car remote unit outputs analog voltages ranging from 0V to 3.3V on both the x- and y- axes,
|
||||
The joystick used in the bitByteRider RC car remote unit outputs analog voltages ranging from 0V to 3.3V on both the x- and y-axes,
|
||||
depending on the position of the joystick. These voltage levels are read by the ESP32-C3’s ADC (Analog-to-Digital Converter) inputs.
|
||||
</p>
|
||||
<p>
|
||||
When the joystick is in its neutral (centered) position, the ADC inputs on the ESP32-C3 receive approximately 1.65V on both axes.
|
||||
When the joystick is in its neutral (centred) position, the ADC inputs on the ESP32-C3 receive approximately 1.65V on both axes.
|
||||
This midpoint voltage is interpreted and interpolated into a PWM (Pulse Width Modulation) value of 0, indicating no movement or
|
||||
motor activity.
|
||||
</p>
|
||||
<p>
|
||||
As the joystick is pushed to its maximum positions along the x- and y- axis, the voltage increases up to 3.3V. This maximum voltage
|
||||
is interpolated to a PWM value of 1024, which corresponds to a 100% duty cycle on the receiver side—resulting in full-speed
|
||||
As the joystick is pushed to its maximum positions along the x- and y-axis, the voltage increases up to 3.3V. This maximum voltage
|
||||
is interpolated to a PWM value of 1024, which corresponds to a 100% duty cycle on the receiver side, resulting in full-speed
|
||||
operation of the DC motors.
|
||||
</p>
|
||||
<p>
|
||||
@@ -355,6 +355,15 @@ signals. These signals are then used to control the rotation speeds of the DC mo
|
||||
This process not only facilitates real-time control but also introduces you to key networking concepts such as data
|
||||
encapsulation, data structs, and the fundamentals of wireless data transmission in embedded systems.
|
||||
</p>
|
||||
<div class="admonition-what-is-encapsulation admonition">
|
||||
<p class="admonition-title">
|
||||
What is encapsulation?
|
||||
</p>
|
||||
<p>
|
||||
Encapsulation refers to the process of organizing and packaging data into a structured format before it is transmitted between
|
||||
devices. This is a fundamental concept in networking and communication protocols, including those used in IoT systems.
|
||||
</p>
|
||||
</div>
|
||||
<section id="reserved-pins-gpios">
|
||||
<h3>
|
||||
Reserved Pins & GPIOs
|
||||
|
Reference in New Issue
Block a user