It didn't display any data on Arduino D1 WiFi esp8266, I also used the same pins RX 4 and TX 3, 3.3V, GND on Arduino UNO and it worked. Why not on Arduino D1 WiFi esp8266.
#include <SoftwareSerial.h>
#include <TinyGPS++.h>
SoftwareSerial mySerial(3,4); // tx rx
//#define GPS_UART_RX_PIN 4
//#define GPS_UART_TX_PIN 3
TinyGPSPlus gps; // create gps object
void setup(){
Serial.begin(9600); // connect serial
Serial.println("The GPS Received Signal:");
mySerial.begin(9600); // connect gps sensor
}
void loop(){
while(mySerial.available()){ // check for gps data
if(gps.encode(mySerial.read()))// encode gps data
{
//Latitude
Serial.print("Latitude: ");
Serial.println(gps.location.lat(),6);
//Longitude
Serial.print("Longitude: ");
Serial.println(gps.location.lng(),6);
//Altitude
Serial.print("Altitude: ");
Serial.println(gps.altitude.feet());
//Speed
Serial.print("Speed: ");
Serial.println(gps.speed.mph());
// Number of satellites connected
Serial.print("Number of Sats connected: ");
Serial.println(gps.satellites.value());
delay(2000);
}
}
}