Arduino Nano AZ Delivery with GY-GPS6MV2 Module

Hi i hope anybody can help me as i am new here...
i tried to upload my sketch but i got error message "no upload port provided"?
What is the problem? How can i solve this?
RX is linked to RX0 port at Arduino Nano
TX is linked to TX1 port at Arduino Nano
Is it not possible to upload sketch for these serial ports or what can be the solution?

It means that you have to select a port in the tools menu in the IDE.

If you can't select a port it's usually a driver issue. If your Nano uses the CH340 TTL-to-USB converter, you can download the driver from http://www.wch-ic.com/downloads/CH341SER_ZIP.htmland install it.

Further, if I understand you correctly, the GPS (or whatever it is) is connected to the Rx and Tx pins of the Nano. If so, that will interfere with uploads so you have to disconnect the GPS from the Nano during uploads.

Oh sorry, yes this was the basic problem - solved now.
But what is the correct connection between GY-GPS6MV2 Modul and Arduino Nano? On which ports shall RX and TX linked? Is RX0 and TX1 not correct?

You can connect ot to the Nano's Rx andf Tx if you don't have a need for communication with the PC over USB.

Else you will have to use SoftareSerial or (the possibly better) GitHub - SlashDevin/NeoSWSerial: Efficient alternative to SoftwareSerial with attachInterrupt for RX chars, simultaneous RX & TX.

I found NeoSWSerial more reliable, as reported here;

"Some years back I wrote a high altitude balloon (HAB) tracking application and the tracker transmitter need to configure the GPS for high altitude use, the UBLOX GPSs stop working above 9,000M otherwise. I noticed that occasionally the configuration of the GPS was failing. I amended the program to show (on the Serial Monitor) the configuration commands being sent to the GPS and then polled the GPS to report its what should be new configuration settings. I noticed then that occasionally the reply from the GPS (containing its stored configuration settings) was being missed, there was a timeout.

These timeouts occurred with the standard SoftwareSerial.h library but not with the NeoSWSerial.h."

The timeouts were being caused (when using SoftwareSerial.h) by printing stuff to the serial monitor with Serial.print(). You can work around the issues, but be very careful with stuff like Serial.print() if you dont want to miss characters coming in.

is there a possibillity to test? all test sketches i found with serial monitor (9600baud) i see no communication?! is it a wrong connection? the GY-GPS6MV2 Module has 4 ports (GND, VCC, TX & RX)... so i connected GND - of course, VCC to 3V3 port, TX to TX1 port and RX to RX0 port)...
then:

#include <SoftwareSerial.h>

#define rxPin 0
#define txPin 1
// The serial connection to the GPS module
SoftwareSerial mySerial = SoftwareSerial(rxPin, txPin);

void setup(){
pinMode(rxPin, INPUT);
pinMode(txPin, OUTPUT);
Serial.begin(9600);
mySerial.begin(9600);

but i cannot see anything?!

You can not use pins 0 and 1; they are the hardware UART and used for the communication with the PC. Connect your GPS to other pins and adjust the code to use those.

You do have the connections wrong.

The GND and VCC connections are correct, but:
The GPS TX needs to go to the Arduino RX pin, and the GPS RX to the Arduino TX pin

Using the following sketch, it is possible to read NMEA sentences that are being sent from the GPS receiver

#include <SoftwareSerial.h>
SoftwareSerial mySerial(4, 3);

void setup() {
  Serial.begin(115200);
  mySerial.begin(9600);
}

void loop() {  
  if (mySerial.available()) {
    Serial.write(mySerial.read());
  }
}

Using this sketch gives the following results:

Unfortunately still i have no messages... which ports shall i use at Arduino Nano? Shall i use analog or digital ports? I tried really much but no messages... or do i use wrong numbers?!

We don't know because you did not post your latest version of the code. If you take @JohnLincoln's code, did you connect the GPS's Tx to pin 4 of the Nano (and GPS's Rx to pin 3 of the Nano)?

yes i took JohnLincolns code but which pin shall i use analog4 or digital4?
i see the following pins:
vin|gnd|rst|5v|a7|a6|a5|a4|a3|a2|a1|a0|ref|3v3|d13
tx1|rx0|rst|gnd|d2|d3|d4|d5|d6|d7|d8|d9|d10|d11|d12

Digital. In general analogue pins would be referred to as Ax.

You need to use a digital input. I used pin 4 (on a Uno, as I don't have a Nano), but you can use other pins as long as you set the correct parameters for SoftwareSerial.

Did you notice that I had the serial port and serial monitor set to 115200 Baud?
You can use other Baud rates, as long as you set the serial monitor to the same as the sketch.

yes i tried everything... but is it basically possible to use GY-GPS6MV2 Module with Arduino Nano? the only data i every have seen via serial monitor was with port rx0 or tx1... but there it was only cryptical questionsmarks... but what i have read in a previous post i shall not link to rx0 or tx1? other pins there was never seen anything

I don't know whether this will help:

Adafruit make the Adafruit Ultimate GPS Logger Shield. This has a switch on it that enables it to connect via SoftwareSerial or hardware serial.

They have a tutorial for the shield at https://learn.adafruit.com/adafruit-ultimate-gps-logger-shield.

On the direct-connect page of that tutorial they tell you how to connect to the hardware serial port. They say that you need to load a 'blank' sketch into the Arduino, so that the GPS receiver is only using the USB/UART converter IC.

From that page here is their sketch:

// this sketch will allow you to bypass the Atmega chip
// and connect the GPS directly to the USB/Serial
// chip converter.
 
// Connect VIN to +5V
// Connect GND to Ground
// Connect GPS RX (data into GPS) to Digital 0
// Connect GPS TX (data out from GPS) to Digital 1
 
void setup() {}
void loop() {}

Although that was meant for Uno type boards, the technique may work for the Nano.

Note that you would need to disconnect the GPS receiver in order to upload the sketch, then reconnect the GPS, (with the power off for safety).

I think that it was because you were trying to use SoftwareSerial on the same pins that are already used for hardware serial that it was suggested you used other pins.

Perhaps you can use D0 and D1 using the information I gave in post #16.

I am going to try that technique (but it will be using a Uno) just to see if it works. I'll let you know if it does.

Unfortunately still no connection - sorry the supposedly appearing questionmarks were wrong (other part of code)

Or is 3v3 wrong and i have to use 5v? Please see above my hardware... may be anyone has an idea?!

That might be the problem.

The module has a 3V3 LDO voltage regulator.
It needs to be powered from a voltage greater than 3.6V for the regulator to operate correctly.

GPS-Diag-512 (1)

I don't know what voltage the regulator will give out if powered from 3V3.
However the NEO-6M can be powered from a minimum of 2.7V, so it might still work