ESP Deep Sleep + NEO 6M - Trouble Waking Up

I am working on a project using a Wemos D1 mini pro, and SD card reader shield and a NEO-6M GPS module.

Everything works great together. I have the wemos logging data from the GPS to the SD card with no issues. So I wanted to incorporate deep sleep to help preserve battery and wake up the device on a periodic schedule to grab a GPS coordinate and go back to sleep.

I have worked with deep sleep before using an external wake up for a motion detection alarm system and had no issues so I’m mildly familiar with getting it working.

I have troubleshooted this in my main project to the point where I’m now just running the basic deep sleep example with all the hardware connected. When I have the NEO-6M disconnected from power, I can deep sleep and wake up with no issues continuously.

When I connect the NEO-6M to the Wemos and run the deep sleep example, I will get about 3 maybe 4 wakes, but then it doesn’t fully wake up (displays garbled boot message, but I never see setup output messages, etc) and I have to manually reset it in order to get it operational again. I have tried 5V and 3.3V both with the same behavior.

I have a couple crude pictures of my setup attached below.

Here is the deep sleep example I am using to test

 * An example showing how to put ESP8266 into Deep-sleep mode
void setup() {

  // Wait for serial to initialize.
  while(!Serial) { }
  Serial.println("I'm awake.");

  Serial.println("Going into deep sleep for 5 seconds");

void loop() {

Your feedback is greatly appreciated!

Are you powering the GPS from an Arduino pin?

PaulS: Are you powering the GPS from an Arduino pin?

Yes. Do you suspect the GPS is drawing too much power and underpowering the microcontroller? Is there any hardware/circuit modifications I could make to improve this without having to rely on an additional power source? Any feedback is greatly appreciated!

Do you suspect the GPS is drawing too much power

I do. I could be wrong. I was once.

PaulS: I was once.

LOL! I will try to provide external power for the GPS and see if that improves the reliability of the deep sleep routine. Thanks for the feedback.