Parts ReferenceBuzzers & Speakers

Audio Output (Buzzers & Speaker)

de:volt ships three audio output parts: an Active Buzzer, a Passive Buzzer, and an 8 Ω Speaker. All three are electrically modelled as a simple resistive load and report a sounding / signal-present state in the simulator readout. There is no audio synthesis — de:volt detects whether a part is being driven, not what it sounds like.

Pinout

All three parts share the same two-pin layout. The positive pin is at the top.

PinLabelDescription
p1+Positive terminal (drive signal)
p2Negative terminal (GND)

Part comparison

PartDrive signalDefault loadPolarity
Active BuzzerDC voltage, 2–5 V32 Ω+ pin is longer; reverse won’t damage but won’t sound
Passive BuzzerAC / PWM, 200 Hz–8 kHz32 ΩUsually not critical
8 Ω SpeakerAC / PWM audio signal8 ΩCritical only for DC-coupled circuits

The resistance property is editable in the Inspector for all three parts.

Active vs passive buzzer

This is the distinction that trips up most beginners:

  • Active buzzer has a built-in oscillator. Apply a DC voltage above roughly 1.5 V and it sounds at a fixed internal frequency (typically around 2 kHz) — no external frequency source needed. You just turn it on and off. de:volt treats it as sounding whenever the DC level across it exceeds the ~1.5 V threshold.
  • Passive buzzer has no oscillator. It needs an AC or PWM drive signal at audio frequency (200 Hz–8 kHz) to make sound, and the pitch follows the drive frequency. Feed it a 50% duty-cycle square wave from a clock_gen or an Arduino PWM pin. de:volt detects the frequency by counting zero-crossings and reports it; the part counts as sounding when the detected frequency is above 0 Hz.

If you apply a steady DC level to a passive buzzer it will stay silent — that constant level has no frequency to follow.

8 Ω Speaker

The speaker’s voice coil is modelled as a pure 8 Ω resistance; the coil’s AC reactance is ignored at audio frequencies in this simplified model. Drive it from an amplifier output (for example an LM386) or a PWM pin. de:volt registers a signal-present indicator when the terminal voltage has a peak-to-peak amplitude of at least 50 mV over a 5 ms sliding window.

For DC-coupled drive circuits, observe the + terminal polarity. For AC- (capacitor-) coupled circuits, polarity is less critical, and a coupling capacitor is recommended to block the DC bias from reaching the coil.

Protecting your output pin

A buzzer or speaker can pull tens of milliamps (active buzzers draw roughly 30–90 mA at 5 V), which is enough to overload a microcontroller GPIO. Drive larger loads through a series resistor, a small transistor, or a ULN2003 channel rather than directly off a logic pin.

Example circuit

Active buzzer driven straight from a logic output:

Arduino D8 ─── + [Active Buzzer] − ─── GND

Passive buzzer driven by a PWM square wave:

Arduino D9 (PWM) ─── + [Passive Buzzer] − ─── GND

Speaker driven through an amplifier with a DC-blocking capacitor:

LM386 out ─── 220 µF ─── + [8 Ω Speaker] − ─── GND

Watch the simulator readout for the sounding state (buzzers) or signal present indicator (speaker) to confirm the part is being driven.