SANJIVANI FAB LAB

Week 11- Networking and Communications

This assignment showed us the importance of teamwork and patience. It was a great reminder that learning by doing is one of the best ways to grow.

UART (Serial1) communication between XIAO ESP32C3 and XIAO RP2040, in Arduino framework.

This exercise show UART (Serial1) communication between XIAO ESP32C3 and XIAO RP2040, in Arduino framework.

Connection:

XIAORP2040 TX GP0 (D6) <-----> XIAO ESP32C3 RX GPIO20 (D7)

XIAORP2040 RX GP1 (D7) <-----> XIAO ESP32C3 TX GPIO21 (D6)

Description Description

Referred from the given website for executing the communication between the device: XIAO ESP32C3 Pin Multiplexing - Serial UART

Below UART serial program is uploaded in RP 2040 to communicate with XIAO ESP32C3

 
/*
UART/Serial1 exercise run on XIAO RP2040  
  Modified from Arduino Examples > Communication > SerialPassthrough
*/

void setup() {
  delay(500);
  Serial.begin(115200);
  while (!Serial) {};

  Serial.println("===========================================================================================");
  Serial.println("UART/Serial1 exercise run on XIAORP2040 ");
  Serial.println("===========================================================================================");
  Serial.println("SERIAL1_TX:\tPin 0");
  Serial.println("SERIAL1_RX:\tPin 1");
  Serial.println();

  Serial1.begin(115200);
}

void loop() {
  if (Serial.available()) {        // If anything comes in Serial (USB),
    Serial1.write(Serial.read());  // read it and send it out Serial1 (pins 0 & 1)
  }

  if (Serial1.available()) {       // If anything comes in Serial1 (pins 0 & 1),
    Serial.write(Serial1.read());  // read it and send it out Serial (USB)
  }
}

 

Below UART serial program is uploaded in XIAO ESP32C3 to communicate with RP 2040

 
/*
UART/Serial1 exercise run on XIAO RP2040  
  Modified from Arduino Examples > Communication > SerialPassthrough
*/

void setup() {
  delay(500);
  Serial.begin(115200);
  while (!Serial) {};

  Serial.println("===========================================================================================");
  Serial.println("UART/Serial1 exercise run on XIAORP2040 ");
  Serial.println("===========================================================================================");
  Serial.println("SERIAL1_TX:\tPin 0");
  Serial.println("SERIAL1_RX:\tPin 1");
  Serial.println();

  Serial1.begin(115200);
}

void loop() {
  if (Serial.available()) {        // If anything comes in Serial (USB),
    Serial1.write(Serial.read());  // read it and send it out Serial1 (pins 0 & 1)
  }

  if (Serial1.available()) {       // If anything comes in Serial1 (pins 0 & 1),
    Serial.write(Serial1.read());  // read it and send it out Serial (USB)
  }
}

 

After execution of program , its good to see the response of the both device communicated and monitored through serial monitor windeow of Arduino IDE

All Proramming File

Download source code

Problem faced in mobile video insertion in website with prompt size

used the website https://clideo.com/ to rotate the video in portable size

Learned in this week

This assignment was a great learning experience, as it allowed us to understand the fundamentals of UART communication between the RP2040 and ESP32C3. Debugging issues during the process taught us patience and problem-solving skills. Additionally, figuring out how to embed and resize media for the web using tools like Clideo helped enhance our understanding of integrating multimedia into web projects effectively. This reinforced the importance of both technical knowledge and presentation skills.

Happy group Learning