I'm trying to send serial data from my esper32-s3 camera to my Arduino uno to control the motors of the elegoo V4.0 robot. I connected both to my laptop while keeping them connected to the shield that comes with the bot.
I then tried this on my esp32 to confirm if any bytes from the :
#define RXD2 33
#define TXD2 4
void setup() {
Serial.begin(115200);
Serial2.begin(9600, SERIAL_8N1, RXD2, TXD2);
delay(2000);
Serial.println("ESP32 ready");
}
void loop() {
Serial2.print("Hello");
Serial.println("Sent: Hello");
delay(1000);
}
and this on the uno:
String recvLine() {
String receivedString = "";
if (Serial.available() > 0) {
receivedString = Serial.readStringUntil('\n');
receivedString.trim();
}
return receivedString;
}
void setup() {
Serial.begin(9600);
Serial.setTimeout(100);
}
void loop() {
String received = recvLine();
if (received.length() > 0) {
Serial.print("UNO RECEIVED: ");
Serial.println(received);
}
}
But when I check the serial monitor for the uno I get nothing. I saw this post where this guy got it to work, but for some reason mine's not and I'm not sure what's going on.


