๐Ÿ“Ÿ UART: Universal Asynchronous Receiver-Transmitter

UART serves as the primary "Serial Pipe" for the Digital Nervous System. It establishes a point-to-point bridge linking the Intel N100 (The Brain) to the ESP32 (Main Controller).

Core Role: Handling the primary telemetry stream and AI-generated movement vectors between the main computer and the robot hardware.
Experimental Design View Source Code
COMMON GROUND REFERENCE N100 BRAIN TX RX ESP32 TX RX LEVEL SHIFTER

N100 to ESP32 Point-to-Point Topology

๐Ÿ”Œ Protocol Logic: Timing Without a Clock

UART is a hardware protocol that exchanges data serially without a shared clock signal. Instead, it relies on Internal Timing Synchronization. Both devices must be manually configured to the same Baud Rate to ensure the receiver samples bits at correct intervals.

โœ… Strengths

โš ๏ธ Weaknesses

๐Ÿ“ฆ The Bit-Stream Sequence

Unlike I2C, UART sits Logic High (1) when idle. Timing is calculated from the leading edge of the start bit.

IDLE (1)
START (0)
DATA (LSB)
...
DATA (MSB)
PARITY
STOP (1)
IDLE (1)

๐Ÿ› ๏ธ System Implementation

In the Digital Nervous System, UART serves as the primary command channel:

๐Ÿงช Experimental Design

Our setup focuses on high-speed data integrity across mismatched voltage levels:

  1. Voltage Translation: A bidirectional logic level shifter bridges the N100 (5V) and ESP32 (3.3V).
  2. Packet Structure: AI-processed vectors are sent in 10-byte structured packets.
  3. Interrupt Handling: ESP32 uses interrupt-driven RX buffers to maintain responsiveness during complex loops.

๐Ÿ’ป Source Code & Setup

Physical Wiring:

Non-Blocking Mandate: Always use `Serial.available()` check. If the code "waits" for data, physical movement will freeze.