0

Firstly, I'd like to mention that I'm a beginner. This is the first time I've worked with a GPS module. The serial monitor is completely empty when I upload the following code to my circuit:

#include <SoftwareSerial.h>

// The serial connection to the GPS module
SoftwareSerial ss(4, 3);

void setup(){
  Serial.begin(9600);
  ss.begin(9600);
}

void loop(){
  while (ss.available() > 0){
    // get the byte data from the GPS
    byte gpsData = ss.read();
    Serial.write(gpsData);
  }
}

The circuit I used

Things I might've done wrong and some things I'd like to mention:

  1. As you can see, I connected the module to 5V pin of Arduino but the datasheet says: Datasheet says that the maximum voltage that can be used is 3.6 V and the module can't stand overvoltage The reason why I think this might not be the case is that there are multiple projects on the internet that have used a circuit like mine.

  2. I've placed my module on the window edge so that it can get a good line of sight. I'm yet to try it outdoors.

  3. After reading the datasheet, I tried a potential divider using resistors to get 3.3V and the result is still nothing. I later realized that this was probably a really silly thing to do since I created an unstable supply which is not suitable for the module.

  4. For cold-start conditions, how long can it take to lock to a satellite? I've waited several times for half an hour each time only to get no result in the end. Can it take more than that? Should I wait?

  5. What can I use to supply constant 3.3V to the module? Are there any special power supplies for GPS modules?

  6. Is it possible to tell if my module is damaged just by seeing?

1
  1. The module may very well be dead now, due to giving it 5V.

But depending on which board the module is mounted on, there might be a voltage regulator that expects 5V. Check the specifications for the board you bought.

  1. A window means that at least 50% of the sky is blocked by the building. The module might not be able to get a signal from enough satellites for a cold start.

  2. A voltage divider only works if there is constant current. As you've noted, you just created an unstable power supply.

  3. The datasheet says 27 s but that is probably with a clear view of the sky.

  4. Next to the 5V pin on the Uno is a 3.3V pin. How about using that?

  5. Visually, no. But the Arduino should be able to communicate with the module if the module still works, regardless if the module has a GPS fix or not.

  • I've tried that too, forgot to mention. Also, could you please say something about the other points in my question as well? – The real deal Aug 24 at 8:11
  • Tried that after I had initially used the 5V pin. – The real deal Aug 24 at 8:11
  • "But depending on which board the module is mounted on, there might be a voltage regulator that expects 5V. Check the specifications for the board you bought." I know this is a really dumb question but how do I do that? – The real deal Aug 24 at 8:17
  • If the store where you bought the module knows what they sold to you, you could get the information form them. If the store does not know, and you do not now, you're in for quite some detective work. – Mikael Falkvidd Aug 24 at 8:23
  • "But the Arduino should be able to communicate with the module if the module still works, regardless if the module has a GPS fix or not." Does that mean that the serial monitor for the code I uploaded should not give empty output? – The real deal Aug 24 at 8:27

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.