Hi everyone,
I’m working on a project where I need to put my Raspberry Pi into a low-power state (shutdown) and wake it up using an external signal. I’ve designed a wake-up circuit based on a schematic I found, but I’m running into an issue where the Raspberry Pi wakes up automatically after shutdown, even though the wake-up signal hasn’t been triggered. I’d really appreciate any insights or suggestions from the community!
Setup Details:
Raspberry Pi Model: Raspberry Pi 3B+.
Wake-Up Circuit: I’m using a simple circuit to wake up the Pi by pulling the GPIO3 pin (which is connected to the RUN pin internally) to GND. The circuit is controlled by an STM32F103 microcontroller.
Schematic: Here’s the circuit I’m using:GPIO3 of the Raspberry Pi is connected to the collector of an NPN transistor (S8050-D-AP).
The base of the transistor is driven by a signal from the STM32F103 (via PA15 pin) through a 100Ω resistor (R1).
The emitter of the transistor is connected to GND.
A 100kΩ pull-up resistor (R2) is connected between the collector and the GPIO3 pin to keep it high when the transistor is off.
Wake-Up Signal: The wake-up signal comes from the PA15 pin of the STM32F103.
Initially, PA15 is set to LOW (0V), so the transistor should be off, and GPIO3 should be pulled HIGH.
To wake up the Pi, I set PA15 to HIGH (3.3V), which turns on the transistor, pulling GPIO3 to GND and triggering a reset (wake-up).
Shutdown Command: I’m shutting down the Raspberry Pi using the following command in the console:The Problem:
After shutting down the Raspberry Pi with the Pi enters a halted state as expected. However, within a few seconds, it automatically wakes up (reboots) even though I haven’t changed the state of PA15 on the STM32F103. I’ve confirmed with a multimeter that PA15 remains LOW (0V) during this time, so the transistor should not be conducting, and GPIO3 should stay HIGH. Despite this, the Pi still wakes up unexpectedly.
Questions:
Why is the Raspberry Pi waking up automatically after shutdown, even though the wake-up signal (PA15) is still LOW?
Could this be related to the behavior of GPIO3 or the RUN pin after a shutdown command? Does the RUN pin have some internal state change that I’m not accounting for?
Is there something wrong with my circuit design? Should I add a capacitor or other components to debounce the signal or stabilize GPIO3?
Could the STM32F103’s PA15 pin be causing some unexpected behavior (e.g., floating state or noise) that I’m not detecting?
Any help or suggestions would be greatly appreciated! Let me know if you need more details about my setup.
Thanks in advance!
Lee
I’m working on a project where I need to put my Raspberry Pi into a low-power state (shutdown) and wake it up using an external signal. I’ve designed a wake-up circuit based on a schematic I found, but I’m running into an issue where the Raspberry Pi wakes up automatically after shutdown, even though the wake-up signal hasn’t been triggered. I’d really appreciate any insights or suggestions from the community!
Setup Details:
Raspberry Pi Model: Raspberry Pi 3B+.
Wake-Up Circuit: I’m using a simple circuit to wake up the Pi by pulling the GPIO3 pin (which is connected to the RUN pin internally) to GND. The circuit is controlled by an STM32F103 microcontroller.
Schematic: Here’s the circuit I’m using:GPIO3 of the Raspberry Pi is connected to the collector of an NPN transistor (S8050-D-AP).
The base of the transistor is driven by a signal from the STM32F103 (via PA15 pin) through a 100Ω resistor (R1).
The emitter of the transistor is connected to GND.
A 100kΩ pull-up resistor (R2) is connected between the collector and the GPIO3 pin to keep it high when the transistor is off.
Wake-Up Signal: The wake-up signal comes from the PA15 pin of the STM32F103.
Initially, PA15 is set to LOW (0V), so the transistor should be off, and GPIO3 should be pulled HIGH.
To wake up the Pi, I set PA15 to HIGH (3.3V), which turns on the transistor, pulling GPIO3 to GND and triggering a reset (wake-up).
Shutdown Command: I’m shutting down the Raspberry Pi using the following command in the console:
Code:
sudo shutdown nowAfter shutting down the Raspberry Pi with
Code:
sudo shutdown nowQuestions:
Why is the Raspberry Pi waking up automatically after shutdown, even though the wake-up signal (PA15) is still LOW?
Could this be related to the behavior of GPIO3 or the RUN pin after a shutdown command? Does the RUN pin have some internal state change that I’m not accounting for?
Is there something wrong with my circuit design? Should I add a capacitor or other components to debounce the signal or stabilize GPIO3?
Could the STM32F103’s PA15 pin be causing some unexpected behavior (e.g., floating state or noise) that I’m not detecting?
Any help or suggestions would be greatly appreciated! Let me know if you need more details about my setup.
Thanks in advance!
Lee
Statistics: Posted by Lee123 — Sun Apr 06, 2025 3:35 pm