A passive piezo buzzer contains a piezoelectric disc that deforms when voltage is applied. Unlike an active buzzer (which has a fixed oscillator), a passive buzzer requires the MCU to generate a square wave at the desired frequency. Tone and duty cycle can be varied in software.
| Operating voltage | 3.3 – 5V |
| Frequency range | 20 Hz – 5 kHz |
| Sound pressure | ~85 dB @ 10cm |
| Current | < 30 mA |
| Type | Passive (piezo) |
| Interface | PWM GPIO |
The MCU's PWM output (or a timer in toggle mode) drives the piezo element with a square wave. The duty cycle affects volume — 50% gives maximum amplitude. Frequency sets pitch. The piezoelectric disc flexes at the signal frequency, pushing air molecules to create sound.
Passive buzzer requires precise MCU timing — blocking delays can cause tone glitches. Volume is low compared to speakers. Frequency response is narrow — best between 1–4 kHz. Not suitable for voice or complex audio.