8 bit LFO!

Hello everyone! This is my project page for the 8-bit LFO I am working on. It is a voltage controlled digitally programmed oscillator, and operates from 0-5 volts. 8 bits resolution on the CV input and voltage outputs means it's a bit "steppy" compared to a real analog LFO, but for what I am doing with it, I don't mind.

This document is in three parts: Current progress, Todo List, and general design notes. 

Build progress:

Last night I got my pulse waveform output working. Adding the pulse means its starting to "feel crowded" on the waveform selector knob. Definitely need to work on how to expand the pulse functionality and/or tweak the waveform selection breakpoints.

Todo list:

  • Expand the pulse functionality and work on the waveform selection breakpoints
  • Code up a few ideas on how to expand the random functionality
  • Nail down the timing of the expanded range function


Design notes:

A few quick notes about the LFO:

0-5 volts only

Controllable through analog voltage only

8 bit resolution on the CV inputs

Analog inputs:

  • Speed (how fast is it oscillating, low voltage is fast oscillation, high voltage is slow oscillation (I could reverse this, but it feels good on a knob))
  • Waveform type (what is the wave shape of the LFO?)
    • Sine
    • Triangle
    • Sawtooth Triangular (thinking of getting rid of this one)
    • Ramp
    • Saw
    • Square
    • Variable pulse
    • Random
      • (I have more ideas for random waveforms)
  • Level (what is the voltage range, peak to peak?)
  • Offset (where is the center of the output waveform?)


Digital input:

  • Expanded range: does the speed input control from very fast to very very slow, with big steps between? Or is it focused on just part of the range, with tighter resolution?