workshop

Design your own drum machine!

About the progam

Let’s make a simple drum machine and learn how to generate a drum pattern, add swing, reuse knobs to control different parameters and use classes to organize the code.

Workshop structure

What will we learn?

Case study: a simple drum machine

…with bass drum, snare and hihats! We’ll be able to change pattern for every drum, speed and swing.

Generating rhythms

We will look at a simple yet efficient algorithm for generating euclidean-like rhythms and explore the famous LM-1’s shuffle aka swing.

Multi-functional knobs

Even with a limited number of knobs it’s possible to build a fully functional instrument. We will look at how to route a knob output to different parameters.

Organizing the program code into modules/classes and communicating between them.

As the complexity of an instrument grows we need to organize the code in a way that helps us design and reason about our software. And the classes are perfect vehicle for doing this. We will look at how we can structure a drum machine.

Other topics

Will go further into C/C++ programming topics

We will touch on simple templates, arrays and other topics.

Getting ready

How to prepare?

All you need is a computer. If you have the Daisy Seed you can install the toolchain on your machine beforehand. You can also check out the code we will be working with on this Github page.

we're using cookies to run our site. privacy policy.