NanoESP32 with Ping Sonar Altimeter/ Echosounder

Hello. Was attempting to create a setup whereas 2 nano ESP32s communicate as clients to a centralized uno wifi server, sharing their sonar readings intermittenly. However, when testing with the ping1d simple example, the obvious error of SoftwareSerial was brought up (due to Nano hardware limitations). I replaced it with HardwareSerial, specifically using `Serial1’. I then adjusted the Pin layouts to match TX1 and RX0 for communications, but still receive
14:44:57.321 → Ping device failed to initialize!
the sonar is connected to an external 5V and gnd. Any assistance or working code anyone has working with the Nano?

#include "ping1d.h"

static HardwareSerial& pingSerial = Serial1;
static Ping1D ping { pingSerial };

static const uint8_t ledPin = 13;

void setup()
{
    pingSerial.begin(9600, SERIAL_8N1, 0, 1);  // D0 (RX), D1 (TX)
    Serial.begin(115200);  // USB serial for monitoring
    pinMode(ledPin, OUTPUT);
    Serial.println("Blue Robotics ping1d-simple.ino");

    while (!ping.initialize()) {
        Serial.println("\nPing device failed to initialize!");
        delay(2000);
    }
}

void loop()
{
    if (ping.update()) {
        Serial.print("Distance: ");
        Serial.print(ping.distance());
        Serial.print("\tConfidence: ");
        Serial.println(ping.confidence());
    } else {
        Serial.println("No update received!");
    }

    digitalWrite(ledPin, !digitalRead(ledPin));
}

Hi @RCAvictor -
Swapping your TX/RX connections can often fix things!
Other than that, you may want to make sure the USB connection is not present, as the hardware serial port may be shared with the port used to flash the microcontroller…