BN-180 pinout to arduino nano. (solved.......thanks).

The pinout for my BN-180 GPS unit is designated GND,TX output,RX input,VCC(3.0v-5.5v)

However, all the information I have been able to find for my arduino nano boards are designated:

SDA -> A4
SCL -> A5

What is the translation from one to the other?
Which one is the tx. pin and which one is the rx pin?

Sorry, but I have searched on many sites and cannot find.
Assistance would/will be most appreciated.

Jim.

SDA and SCL refer to an I2C interface for which A4 and A5 are the corresponding pins on a Nano but does the module use an I2C interface ?

If it uses a serial interface then when comminicating with a Nano it is usual to use SoftwareSerial so that you can choose the Tx and Rx pins and leave hardware Serial (pins 0 and 1) for debugging

UKHeliBob:
SDA and SCL refer to an I2C interface for which A4 and A5 are the corresponding pins on a Nano but does the module use an I2C interface ?

...........................

I have no idea about that and I have been able to find out by doing a quick search.
I may not have explained my dilemma properly: The GPS unit output pins are designated tx & rx.
I don't know if they correspond to A4 & A5 respectively, or the other way around.

Tx equivalent to...............A4
Rx equivalent to...............A5

Or:

Tx equivalent to................A5
Rx equivalent to.................A4

??

Thanks for the reply Bob.

Jim.

The GPS unit output pins are designated tx & rx.

Then it is a serial device. Use SoftwareSerial and designate your own Tx and Rx pins on the Arduino. By all means use A4 and A5 if you want, but don't forget to cross connect Tx on the GPS to your chosen Rx pin on the Arduino and vice versa

It can be as simple as (untested)

#include <SoftwareSerial.h>

SoftwareSerial gps(7, 8);  //Rx Tx - choose any pins except 0 and 1

void setup()
{
  Serial.begin(115200);
  gps.begin(9600);  //baud rate for GPS may need to be changed
}

void loop()
{
  if (gps.available())
  {
//    Serial.print(gps.read());  //see next reply
   Serial.write(gps.read());
  }
}

NOTE : Changed

   Serial.print(gps.read());

to

   Serial.write(gps.read());

in the sketch in reply #3

UKHeliBob:
Then it is a serial device. Use SoftwareSerial and designate your own Tx and Rx pins on the Arduino. ...................

Thanks again Bob.
However, I have no idea what "SoftwareSerial" is, I am only a raw beginner to arduino.
I am making up another openXsensor using mstrens code and instructions, the basic section is here on GitHub:

Am I to assume that I need to edit this to include some (or all of) your code additions above?

Jim.

Try this for a start

#include <SoftwareSerial.h>

SoftwareSerial gps(8, 7);  //Rx, Tx - choose any pins except 0 and 1

void setup()
{
  Serial.begin(115200);
  gps.begin(9600);  //baud rate for GPS may need to be changed
}

void loop()
{
  if (gps.available())
  {
    char inChar = gps.read();
    Serial.print(inChar);
  }
}

Bob,

I don't know where to include that...............sorry for my ignorance.

Don't include it anywhere. It is a complete sketch. Copy it to the IDE, connect the GPS to the Tx and Rx pins and power. Upload the sketch to the Arduino and open the Serial monitor. Once the GPS has a fix on the satellites, which may not be possible indoors, you should see the GPS data on the Serial monitor

UKHeliBob:
....................., connect the GPS to the Tx and Rx pins and power. .................................

We seem to have a circular process happening here; the very connections (Pinout) of the GPS to the arduino is what I was asking. See the thread title!

Anyway, I have found the correct pinout elsewhere.
Thanks anyway Bob.

Jim.

jim0000:
Anyway, I have found the correct pinout elsewhere.
Thanks anyway Bob.

It would help others if your prepared to reveal the correct wiring .................

the very connections (Pinout) of the GPS to the arduino is what I was asking.

The point is that you choose which pins to use for Rx and Tx on the Arduino

SoftwareSerial gps(8, 7);  //Rx, Tx - choose any pins except 0 and 1

Note the comment

Which pins did you use in your working code ?