Hi Mateus,
Thank you for the photos.
It is clear that data is getting from the ZED UART2 to the ESP32. The issue may be that data is not being transmitted by the ESP32, or not arriving at the ZED. It could be a GPIO pin or UART (Serial) conflict.
Looking at the pins_arduino.h
file for the heltec wifi lora 32 V2, I see that pin 16 is labelled RST_OLED
. Link. So long as you are not attempting to use the OLED, you should be OK. And we know that the ESP32 is able to receive data.
Do you have a logic analyzer or oscilloscope which you could use to monitor Pin 17 and UART2 RXD?
There are different ways of defining the ESP32 HardwareSerial
UARTs:
// In globals
HardwareSerial mySerial(1); // Use ESP32 UART1
int8_t myTxPin = 17; // GPIO pin for UART TX
int8_t myRxPin = 16; // GPIO pin for UART RX
// In setup
mySerial.begin(115200, SERIAL_8N1, myRxPin, myTxPin);
while (myGNSS.begin(mySerial) == false) //Connect to the u-blox module using mySerial
{
Serial.println(F("u-blox GNSS not detected"));
}
Maybe try different GPIO pins? It looks like pins 12 and 13 are not used for anything else.
I am going to be away for a few days. Hopefully someone else can help you in the meantime.
Best wishes,
Paul