A pure white audio noise generator using an 8 pin PIC 12F675
This pages describes a simple digital noise source that produces pure white noise over the whole audio band – out to more than 40Khz, in fact. With filtering, you can derive pink noise and other colours. The circuit diagram included below was developed from the famous Polyfusion noise generator, and can produce white, pink and infra-red (low frequency) noise.
The noise generator 12F675 PIC microprocessor uses a dual LFSR algorithm which produces a pseudo-random stream of bits at over 90KHz. The bitstream shouldn’t repeat for 142 million years, but obviously I haven’t checked!
Replacement noise generator for Sequential Prophet 5 / Korg MonoPoly / Oberheim OB-X
I arranged the chip to be as close a replacement as I could for the notorious MM5837 digital noise generator which appears in early Korg MonoPolys, the Sequential Prophet 5, and the Oberheim OB-X. This chip has a very short LFSR (only 17-bit) which means that the noise it produces repeats every few seconds. This is audible, and has been described as sounding like a steam train puffing, rather than smooth white noise.
The only difference between the two chips (and one I couldn’t do anything about) is the supply voltage. This also means the new chip is quieter.
The datasheet includes some details about replacing the MM5837 in these synths.
- White noise generator PIC 12F675 ASM code
- Assembled HEX code from above file
- Circuit Diagram
- Noise Generator datasheet (includes circuit diagram and chip pinout)
A potential pitfall
The chip uses both the internal oscillator and the internal MCLR pullup. This combination causes problems with some PIC programmers. My own ICD2 clone complains that it doesn’t support it, and there are many reports online of problems with the JDM programmer. I programmed my chip successfully using the PICKit1 programmer, and it’s been reported to me that the P16pro programmer and Picallw software work too.