This repository contains the complete implementation and documentation for the minor project assignment, assigned by EdiGlobe as a part of my summer intership, demonstrating serial communication over USB/UART using a microcontroller and a terminal emulator.
- Connected the Raspberry Pi Pico development board directly to the host computer using a high-quality USB cable.
- Configured and deployed MiniCom 2.9 inside the Ubuntu WSL2 environment to monitor the active serial port client.
- Developed an embedded C++ program (
led_blink.ino) that initializes serial communication on boot and handles asynchronous data packets.
- Successfully uploaded the executable binary to the microcontroller flash memory.
- Configured MiniCom to listen to the active system port (
/dev/ttyACM0) at a baud rate of115200. - Verified that the system transmits the initialization string "Hello World" immediately upon device startup/power-on.
- Bidirectional Data Streams: Expanded the core program to actively listen for, capture, and process incoming serial command data transmitted directly from the host computer's keyboard via MiniCom.
- Robust Buffer Clearing: Integrated a dedicated clearing loop (
while(Serial.available() > 0)) to flush trailing carriage returns (\r) and hidden whitespace lines from the hardware UART stack, preventing command prompt loop duplication.
- Microcontroller: Raspberry Pi Pico (RP2040)
- Host Link: Windows 11
usbipdnetwork bridging layer attached to Ubuntu 22.04 LTS (WSL2) - Terminal Settings: 115200 Baud, 8N1 Frame configuration