0
votes

I'm building a pet project which consists of an Arduino (Uno, at the moment), a GPS (Sparkfun GS407) and a GSM modem (Sparkfun ADH8066). The idea is I'll be able to SMS the modem, and have it reply with where it is.

Problem is, when I have both the GPS and GSM module plugged in, serial comms start getting messy. Now I have two ideas why this is happening;

1) Apparently I need a good ground when using serial comms (only using 9600 baud). I'm new to electronics so I'm not sure how I would improve my ground.

2) I've read somewhere (probably here) that SoftwareSerial only supports one set of pins sending/receiving at any one time. This could prove problematic if the GPS is spewing out spurious amounts of data, as they do.

Can anyone comment as to the reason I'm seeing odd serial output?

2

2 Answers

0
votes

The grounding should not be an issue. As long as you have a ground connected you should be fine. The Sparkfun breakboard boards will have taken care of any sensitive grounding issues.

The odd data is almost certainly from using multiple softwareserials, which is not recommended as you have discovered.

One solution would be to use the hardware serial port for one device, and a software serial port for the other. (GPS on hardware since it updates more frequently than GSM)

0
votes

Please replace SoftwareSerial with the much better AltSoftSerial (http://www.pjrc.com/teensy/td_libs_AltSoftSerial.html) instead.

And yes, keep one of the devices on the hardware serial port as that is superior to any serial solution implemented in software.