Help integrating SIM800C GSM module with GPS/GNSS for location reporting

Hi all,

I’m working on a small project where I want to combine basic GPS/GNSS position data with cellular communication. I have a SIM800C GSM/GPRS module board that I’m planning to use for sending data over the network, but I’m running into some uncertainties about how best to integrate it with a GPS/GNSS receiver.

Board Reference :frowning:SIM800C GSM module GPRS)

My goals are:

  • Read location data (latitude/longitude) from a GPS/GNSS module

    Send the location periodically over GPRS/SMS via the SIM800C

    Do this with simple microcontroller firmware (no RTOS)

Here are the parts/tools I’m using:

  • A SIM800C GSM/GPRS module (for connectivity)

    A separate GPS/GNSS receiver module (UART output)

    An MCU (Arduino compatible or similar)

    Basic power supply (regulated 3.3V / 4V where needed)

What I’m unsure about:

1. Power supply considerations

GSM modules have high current draw during transmission. Beyond supplying sufficient current, are there recommended best practices (e.g., decoupling caps, transient suppression) specifically when pairing them with GPS modules?

2. UART interfacing & buffering

Both the GPS module and SIM800C talk over UART. Is it better to use software serial, hardware UART multiplexing, or a UART bridge/driver to handle both reliably?

3. Timing & data flow

Any recommended approaches for reading GPS data continuously while handling intermittent SIM800C AT-command interactions? Should I buffer GNSS data and then trigger sends at set intervals?

4. General tips with GPS + GSM workflows

Most of the example sketches I’ve found either do one or the other, but not both simultaneously. Are there community-proven patterns for managing both without dropping messages?

If anyone has experience combining a GSM module like the SIM800 family with GNSS modules, or can point me to relevant examples, wiring diagrams, or performance caveats, I’d really appreciate the help.

Thanks in advance!

  1. No, not really…GPS stuff is fairly low power, though if you’re running full message load at full speed it will consume ~3x more (usually still under 200mA)

  2. Depends on how easy the SIM800C interfaces with each…they’re interchangeable from the GPS side, any would work fine (HW UART is default in most cases)

  3. Sure - you can also stick something like an esp32 between them and have each of its processing cores run the threads separately if you’d like. Delays/buffers are the general schema, though this probably won’t be an issue for you (intermittent AT commands + GPS isn’t much overhead in the grand scheme)

  4. That’s because the number of combos is astronomical. You might be able to find a sketch online where somewhere else posted their code and is using the same 2 modules, but in general you’ll need to combine the sketches into one coherent combo sketch…AI’s have gotten really good at this kind of thing over the last year (tell it what you have, what you’re doing, and send it both sketches and ask for one that combines the two) and voila