Overview

Play fresh drum patterns with this 16-step disc sequencer, made with CircuitPython on Feather M4 Express and Crickit! It uses reflection sensors to read the steps marked on the paper wheel — four tracks of different sound samples can be triggered. The outer clock track keeps everything synchronized.

You’ll use a continuous rotation servo to spin the disc, driven by the Crickit FeatherWing, plus the capacitive touch pads provide tempo controls to increase or decrease the BPM (beats per minute) of your player. CircuitPython code running on the Feather M4 handles all of the coordination of the elements, and audio mixer playback duties as well.

Sequencers come in many forms. Today, we recognize drum machines, groove boxes, and computer DAW (digital audio workstation) software as typical sequencers. However, the player piano, with its paper roll that actuates valves and hammers to strike strings, or a music box, with its revolving cylinder or disc that plucks a tuned metal comb are also early forms of music sequencers. Our disc-based step sequencer works just like these early sequencers, but uses optical sensing to read the steps to play at the proper time.

feather_83120728-6F7B-481D-AEDD-398D300795A0.jpg
Harke [GFDL (http://www.gnu.org/copyleft/fdl.html) or CC BY-SA 3.0 (https://creativecommons.org/licenses/by-sa/3.0)], from Wikimedia Commons

How it Works

The Disc Step Sequencer works like this:

  • The Feather M4, running a CircuitPython program, tells the Crickit's servo driver to spin the continuous rotation servo, to which the disc is connected
  • Five IR (infrared) reflection sensors watch for black drum pattern step marks and clock step marks (more on this later) on the disc, and send signals through the Crickit's Signal I/O pins to the Feather M4
  • Each time the outer sensor detects a clock step, the Feather M4 polls the other four sensors to see if any of them have encountered a drum pattern step
  • When one or more of the four drum track sensors are triggered for a given clock step, the CircuitPython audio mixer plays the assocated drum voice sample .wav files over the Crickit's amplifier to the connected speaker
  • The tempo can be adjusted by touching the capacitive touch sensors on the Crickit

Parts

1 x Continuous Rotation Servo
Continuous Rotation Servo
1 x Helping Third Hand Magnifier
W/Magnifying Glass Tool
1 x Through-Hole Resistors
220 ohm 5% 1/4W - Pack of 25

Materials

In addition to the parts listed above, you'll also need:

  • White letter sized cardstock or paper, 8-1/2" x 11"
  • Printer for printing the disc template
  • Black chalk marker for creating patterns by hand (regular markers are too shiny and don't reliably absorb the infrared light)
  • Scissors
  • Hobby knife
  • Soldering iron and solder
  • Small screwdriver
  • Diagonal cutters
  • Chipboard for cutting an 8" diameter disc, or
  • MDF wood circle from hobby store
  • Glue stick
  • Hot melt glue gun and glue sticks
This guide was first published on Jan 09, 2019. It was last updated on Jan 09, 2019. This page (Overview) was last updated on Sep 11, 2019.