# ambium Analog brown-noise generator. Single **+12 V** supply, breadboard-friendly. Deep filtered rumble to a **4 Ω speaker** via a cool-running **Class-AB push-pull** output. Reference designators and model numbers are consistent across every diagram, the BOM, and the connection list — the connection list is the authoritative netlist. ## Complete schematic ```text +12V | +-----------------+--------------------------+ | | | R1 100k R2 10k U1 pin 8 | | | o raw o----- VREF (6V) | |\ | | | E Q1 2N3904 R3 10k C2 100n | B| C (NC) | | | +-- GND GND GND | +-- C1 10u -- NOISE -- Rin1 1k --o SUM + - | +---+---+ | | Rf1 1M Cf1 8.2n | | +---+---+ | +------------------------- AMP | | U1B pin 6 (-) U1A pin 3 (+) VREF ------------------------------------------------ U1B pin 5 (+) U1B pin 7 (OUT) -------------------------- AMP U1A: LM358 output driver OUT o--------------------- U1A pin 2 (-) U1A pin 1 (OUT) | BASES +----+----+ | | B Q2 Q3 B +12V ------- C PN2222 PN2907 C ------- GND E E | | Re1 10R Re2 10R | | +----+----+ | OUT | Cout 470u (+| |-) ---- SPKR ---- LS1 4R ---- GND VREF bypass: VREF ---- Cref 10u (+| |-) ---- GND Supply bulk: +12V ---- C3 47u (+| |-) ---- GND U1 supply: pin 8 = +12V, pin 4 = GND ``` ## Parts - **U1** = LM358 (dual op-amp, DIP-8). U1B = amp + brown shaping. U1A = output driver. - **Q1** = 2N3904 (NPN). Avalanche noise source. - **Q2** = PN2222 (NPN). Push-pull top half (sources +). - **Q3** = PN2907 (PNP). Push-pull bottom half (sinks −). ## Nets `+12V` · `GND` · `VREF` (6 V mid-supply) · `NOISE` · `AMP` · `SPKR` ## Signal chain ``` [noise] [amp + brown] [push-pull driver] Q1 2N3904 → U1B LM358 −6dB/oct → U1A + Q2/Q3 → 4Ω speaker NOISE AMP OUT (Class AB, cool) ``` --- ## Power · VREF divider (R2, R3, Cref) ``` +12V │ [R2 10k] │ ●───────────────┬────────► VREF (6 V) │ + Cref 10µF [R3 10k] ──┤├── │ − │ │ GND GND ``` R2/R3 = 20 kΩ across 12 V, midpoint = 6 V. VREF = AC ground (single supply). --- ## Stage 1 — White noise (R1, Q1, C1) Reverse-biased B–E junction of Q1 into avalanche = broadband white noise. R1 limits current; C1 couples it out. ``` +12V │ [R1 100k] │ ●──+┤├──────────► NOISE │ C1 10µF (+ → emitter side; − → NOISE) E ┌──┴──┐ GND─B─┤ Q1 │ 2N3904 └──┬──┘ │ C × no connect ``` NOISE = the AC-coupled output after C1. The ● node is raw noise on a DC pedestal — internal, don't label it. > Avalanche varies part-to-part. If quiet, swap the 2N3904. Needs full +12 V. --- ## Stage 2 — Amplifier + brown shaping (U1B, Rin1, Rf1, Cf1) Single inverting amp, low-frequency gain −Rf1/Rin1 = ×1000, centred on VREF. A feedback cap Cf1 across Rf1 makes it a leaky integrator: flat gain below the corner, then −6 dB/oct above it. That −6 dB/oct slope turns white noise into **brown**. One stage does gain and browning together — no separate integrator needed. - corner fc = 1/(2π·Rf1·Cf1) ≈ **19 Hz** with Rf1 1M, Cf1 8.2nF. - below fc: flat ×1000. above fc: −6 dB/oct, reaching unity (×1) at ~20 kHz. - so the whole audible band (20 Hz–20 kHz) rides the brown slope; peak gain ×1000 at the bottom, rolling off inaudible ultrasonics at the top for free. **Why not a flat ×1000 stage?** LM358 GBW = 1 MHz → a flat ×1000 stage has only 1 MHz/1000 ≈ **1 kHz** bandwidth, collapsing the band (measured ~27 mV pp at AMP). Here Cf1 makes the demanded gain *fall* with frequency, so the op-amp GBW is never the limit — the RC feedback does the shaping, not the op-amp rolloff. LM358 DIP-8, notch at top, pin 1 top-left. Amp = **unit B** (pins 5/6/7). ``` ┌─────∪────┐ OUT A 1 ─┤● ├ 8 V+ ──── +12V IN− A 2 ─┤ ├ 7 OUT B ──●──────────────► AMP VREF ─ IN+ A 3 ─┤ LM358 ├ 6 IN− B ──● GND ─ V− 4 ─┤ ├ 5 IN+ B ──── VREF └──────────┘ feedback (pin 7 ↔ pin 6): pin 7 ●──[Rf1 1M]────● pin 6 Rf1 ∥ Cf1 pin 7 ●──[Cf1 8.2nF]──● pin 6 brown slope, corner ~19 Hz input: NOISE ─[Rin1 1k]──● pin 6 ``` DC handling: C1 blocks DC into Rin1, so the op-amp's own offset sees unity gain — output sits at VREF (6 V), no railing. Unit A (pins 1/2/3) = the push-pull output driver — see next section. Power/decoupling (whole chip, once): pin 8 → +12V, pin 4 → GND. 47µF bulk + 0.1µF at pin 8. --- ## Output driver — Class-AB push-pull (U1A + Q2/Q3), 4Ω speaker AMP is line level; the LM358 can't drive a speaker alone. Complementary emitter- followers **inside the U1A loop**: Q2 (NPN) pushes the positive half, Q3 (PNP) pulls the negative half. Both halves are actively driven, so there's **no idle resistor and near-zero quiescent current → it runs cool.** U1A drives both bases; global feedback from OUT hides crossover distortion (no bias diodes needed). Driver = LM358 **unit A** (pins 1/2/3), same chip as the amp. ``` ┌─────∪────┐ bases ─ OUT A 1 ─┤ ├ 8 V+ ──── +12V OUT ─ IN− A 2 ─┤ LM358 ├ 7 (OUT B → AMP, Stage 2) AMP ─ IN+ A 3 ─┤ ├ 6 V− 4 ─┤ ├ 5 └──────────┘ ``` Push-pull output stage (totem pole): ``` +12V │ C ┌───┴───┐ bases ──B──────┤ Q2 │ PN2222 (NPN — sources +half) └───┬───┘ E [Re1 10Ω] │ ●──────────► OUT ──+┤├──► SPKR ─ GND │ Cout 470µF 4Ω [Re2 10Ω] (+ → OUT) E ┌───┴───┐ bases ──B──────┤ Q3 │ PN2907 (PNP — sinks −half) └───┬───┘ C │ GND ``` Connections: ``` input: AMP ─────────────● pin 3 (IN+ A) drive: pin 1 (OUT A) ───● bases → Q2.base + Q3.base feedback: OUT ─────────────● pin 2 (IN− A) Q2: C → +12V B → bases E → Re1 → OUT Q3: C → GND B → bases E → Re2 → OUT OUT node = Re1 ● Re2 ● pin 2 (fb) ● Cout.+ ; Cout.− → speaker → GND ``` - Idle ≈ 0 → **cool, no heatsink.** Re1/Re2 = **10 Ω ¼ W** (4.7–10 Ω ok; carry only AC — not hot). - OUT sits at ~6 V DC (follows AMP); **Cout 470 µF** blocks it, speaker sees AC only. TO-92 pinout (flat face toward you, leads down): **PN2222 = E-B-C**, **PN2907 = E-B-C** (confirm against your batch's datasheet). - PN2222/PN2907 cap ~600 mA → ~1 W into 4 Ω before current-limiting. Plenty for the rumble, and cool. Want more power → TIP120+TIP125 pair, or an amp chip. - Crossover buzz at low level? Split the bases and add **2× 1N4148** between them for bias. Usually unneeded — feedback handles it for a noise source. --- ## Bill of materials | Ref | Value | Part | Function | |-----|-------|------|----------| | U1 | — | LM358 (DIP-8) | U1B amp+brown, U1A output driver | | Q1 | — | 2N3904 | avalanche noise source | | Q2 | — | PN2222 (NPN) | push-pull top (source) | | Q3 | — | PN2907 (PNP) | push-pull bottom (sink) | | R1 | 100k | resistor | avalanche current limit | | R2, R3 | 10k | resistor | VREF divider | | Rin1 | 1k | resistor | amp input | | Rf1 | 1M | resistor | amp feedback (low-freq gain ×1000) | | Re1, Re2 | 10Ω ¼W | resistor | push-pull emitter degeneration (4.7–10Ω ok) | | C1 | 10µF | electrolytic | noise coupling | | Cref | 10µF | electrolytic | VREF bypass | | Cf1 | 8.2nF | film / ceramic | feedback / brown shaping (−6dB/oct, corner ~19 Hz) | | Cout | 470µF ≥16V | electrolytic | speaker coupling (big, for lows) | | — | 0.1µF | ceramic | LM358 decoupling | | — | 47µF | electrolytic | +12V bulk | Chip count: 1× LM358 + 1× 2N3904 + PN2222/PN2907 pair. **No heatsink needed** (Class AB). --- ## Connection list (authoritative netlist) ``` +12V : R1.1, R2.1, U1.8, Q2.collector, 47µF+ GND : R3.2, Q1.base, Cref.−, U1.4, Q3.collector, 47µF−, 0.1µF VREF : R2.2, R3.1, Cref.+, U1B.IN+(5) (src) : R1.2, Q1.emitter, C1.+ (internal raw-noise node) NOISE : C1.−, Rin1.1 (after C1) AMP : U1B.OUT(7), Rf1, Cf1, U1A.IN+(3) (Rin1.2, Rf1, Cf1, U1B.IN−(6) = summing) bases : U1A.OUT(1), Q2.base, Q3.base (driver output → both bases) OUT : Q2.emitter→Re1 ; Q3.emitter→Re2 ; Re1.2 = Re2.2 = OUT node OUT → U1A.IN−(2) (feedback) ; OUT → Cout.+ ; Cout.− → speaker → GND Q1 : collector = no-connect ``` --- ## Build & test order 1. **VREF** — confirm ~6.0 V. 2. **Noise (R1, Q1)** — scope Q1 node → hiss (~mV). None? swap 2N3904 or raise supply to 12–15 V. 3. **Amp (U1B)** — scope AMP → deep rumble (~volts), darker than the raw Q1 hiss (that's the brown slope). 4. **Driver (Q2/Q3)** — wire push-pull + feedback. Speaker rumbles. Transistors stay **cool** (near-zero idle). OUT DC ~6 V. ## Tuning | Want | Change | |------|--------| | Louder | ↑ Rf1 (raises low-freq gain; watch clipping) | | Darker / deeper | ↑ Cf1 (lowers corner, more brown) | | Brighter (toward white) | ↓ Cf1 (raises corner) | | Kill crossover buzz | add 2× 1N4148 base-bias diodes | | More power | TIP120+TIP125 pair, or amp chip (PAM8403 / TDA2822) |