[SOLVED] GPS stop working if I add "Blynk.begin(Serial,auth);"

Im now currently working on the “Vehicle Monitoring System Using Blynk…” project. Im using Arduino Uno, GPS Shield and want to use the USB to connect the arduino with internet. The problem now is I cannot get the GPS data(its like not working) if i put “Blynk.begin(Serial, auth);” at void setup() section. Then, to make the GPS working as usual, the “Blynk.begin(Serial, auth);” was add comment to it…Then the Blynk is not working. How can I make both of them working and then I can read the gps data from GPS Shield to the Blynk App.?
This is the code… Whats wrong with this code?

> #include <TinyGPS++.h>
> #include <SoftwareSerial.h>
> #include <LiquidCrystal.h>
> #include <BlynkSimpleStream.h>

> // Choose two Arduino pins to use for software serial
> // The GPS Shield uses D2 and D3 by default when in DLINE mode
> int RXPin = 0;
> int TXPin = 1;

> LiquidCrystal lcd(12, 13,5, 4, 3,2);

> // The Skytaq EM-506 GPS module included in the GPS Shield Kit
> // uses 4800 baud by default
> int GPSBaud = 9600;

> // Create a TinyGPS++ object called "gps"
> TinyGPSPlus gps;

> // Create a software serial port called "gpsSerial"
> SoftwareSerial gpsSerial(RXPin, TXPin);
> char auth[] ="a2653c823e0e4834h"; //use your own auth token

> void setup()
> {  
>   // Start the Arduino hardware serial port at 9600 baud
>   Serial.begin(9600);

>   // Start the software serial port at the GPS's default baud
>   gpsSerial.begin(GPSBaud);


>  lcd.begin (16,2);
> greeting();
>  // Blynk.begin(Serial,auth); // if I comment this line the gps wouldnt work.. Why??

> }

> void loop()
> {
>   //Blynk.run();  // how can??
>   
>   // This sketch displays information every time a new sentence is correctly encoded.
>   while (gpsSerial.available() > 0)
>     if (gps.encode(gpsSerial.read()))
>       displayInfo();

>       lcd.setCursor(0,0);
>           lcd.print("Lat :");lcd.print(gps.location.lat(), 6);
>            lcd.setCursor(0,1);
>           lcd.print("Lat :");lcd.print(gps.location.lng(), 6);

>   // If 5000 milliseconds pass and there are no characters coming in
>   // over the software serial port, show a "No GPS detected" error
>   if (millis() > 5000 && gps.charsProcessed() < 10)
>   {
>     Serial.println(F("No GPS detected"));
>     while(true);
>   }


> }

> void displayInfo()
> {
>   Serial.print(F("Location: ")); 
>   if (gps.location.isValid())
>   {
>     Serial.print(gps.location.lat(), 6);
>     Serial.print(F(","));
>     Serial.print(gps.location.lng(), 6);
>   }
>   else
>   {
>     Serial.print(F("INVALID"));
>   }

>     Serial.print(F(" Speed: "));
>     if (gps.speed.isValid())
>     {
>       Serial.println(gps.speed.kmph(), 2);
>     }
>     else
>     {
>       Serial.print(F("INVALID"));
>     }

>   Serial.print(F("  Date/Time: "));
>   if (gps.date.isValid())
>   {
>     Serial.print(gps.date.month());
>     Serial.print(F("/"));
>     Serial.print(gps.date.day());
>     Serial.print(F("/"));
>     Serial.print(gps.date.year());
>   }
>   else
>   {
>     Serial.print(F("INVALID"));
>   }

>   Serial.print(F(" "));
>   if (gps.time.isValid())
>   {
>     if (gps.time.hour() < 10) Serial.print(F("0"));
>     Serial.print(gps.time.hour()+8);
>     Serial.print(F(":"));
>     if (gps.time.minute() < 10) Serial.print(F("0"));
>     Serial.print(gps.time.minute());
>     Serial.print(F(":"));
>     if (gps.time.second() < 10) Serial.print(F("0"));
>     Serial.print(gps.time.second());
>     Serial.print(F("."));
>     if (gps.time.centisecond() < 10) Serial.print(F("0"));
>     Serial.print(gps.time.centisecond());
>   }
>   else
>   {
>     Serial.print(F("INVALID"));
>   }

>   Serial.println();
> }

> void greeting()
> {

>   lcd.setCursor(0,0);
>   lcd.print("Car Localization");
>   lcd.setCursor(0,1);
>   lcd.print("     System     ");
>    delay(8000);
>   lcd.clear();
>   lcd.print("Find Signal.");
>    delay(2000);
>    lcd.clear();
>     lcd.print("Find Signal..");
>    delay(2000);
>    lcd.clear();
>    lcd.print("Find Signal...");
>    delay(2000);
>    lcd.clear();
>     lcd.print("Find Signal....");
>    delay(5000);
>   lcd.clear();
> }

@NazrulAfdhal try moving your GPS to another pair of pins as the USB uses 0 and 1.

Thank you very much… Its Working!! I really need this… U really made ,my day… Its 4.46 am in Malaysia… now i can really have a good sleep… Thanks @Costas

@NazrulAfdhal ensure you strip out all those nasty “>”'s before posting code.

Know your Uno https://www.allaboutcircuits.com/technical-articles/understanding-arduino-uno-hardware-design/

Don’t do anything in loop() other than blynk.run() and timer.run(). Study SimpleTimer on the Arduino site as that is the Blynk Timer you will need to use in almost all your projects.

@Costas Then where i should put my other code in the void loop function. I tried to move the code in the void setup, but the GPS became unfunctioning again… should i make the another void?

@NazrulAfdhal yes you need another void but called in a special way.
See the PUSH DATA example in the Sketch Builder.