ESP32 Bit Pirate home
  • DIO
  • Beginner
  • 5 min
  • Serial CLI

Recipe · Beginner · DIO

How to measure a GPIO signal frequency

Sometimes you do not need a full protocol decoder. You just need to know whether a clock or interrupt line is moving.

GPIO signal measurement trace.
Check if a pin is alive and roughly how fast it toggles before opening a full logic capture.

Wiring View

BP SignalGPIO inputGNDBP GND
Generated from the wiring summary: to BP.
Step 1

Commands

Run the typed commands first. If the command opens an interactive shell, select the named action from the shell menu instead of treating it as another CLI command.

Result

What success looks like

Use this as a quick confidence check. If the number is unexpected, move to a logic analyzer capture to inspect duty cycle and timing shape.

Troubleshooting

  • Connecting a voltage above ESP32 logic level.
  • Measuring without shared ground.
  • Using the wrong GPIO after moving wires.
  • Assuming frequency alone tells you protocol timing.

Next steps

  • Use sniff <gpio> to watch transitions.
  • Use reset <gpio> after PWM or servo tests.
  • Use the logic analyzer recipe when timing details matter.

GPIO frequency measurement FAQ

What is this measurement good for?

Use it as a quick confidence check that a clock, interrupt or data line is alive and roughly in the expected range. It is not a replacement for a calibrated oscilloscope.

How should I interpret a changing frequency measurement?

Treat changing frequency as a clue about the signal source, load state or firmware behavior over time. Use it to decide whether you need a longer capture or a protocol-specific view.

What does frequency not tell me?

Frequency alone does not show duty cycle, byte framing, protocol order or edge-to-edge timing. It is a quick signal presence check, not a full protocol capture.

Go deeper