Group Assignment
Send a message between two projects
This week, Dr. Shantanu Kadam and I worked on an assignment to learn how the RP2040 and ESP32C3 communicate. It was an exciting and challenging experience.We faced some difficulties at first, but every problem taught us something new. When we finally got the devices to talk to each other, it felt really rewarding and gave us confidence to keep learning.
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)
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
Problem faced in mobile video insertion in website with prompt size
used the website https://clideo.com/ to rotate the video in portable size
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