Source: https://mokxi.com/teachers/plans/build-midi-controller
Updated: 2026-11-11

Lesson plan

# Build a MIDI controller lesson plan

Faders, drum pads, a knob and an encoder on a Pro Micro, sending real MIDI bytes you can read.

2 chapters, 3 lessons, about 2 hours, on the SparkFun Pro Micro. Every lesson runs in the browser, with nothing to install.

Start a class from this course

The unit

## Objectives and materials

### By the end, students can

- Turn faders into Control Change and pads into notes, one byte at a time.
- Add a knob, program changes and a panic button.

### Materials for the whole unit

- Full-size breadboard
- LED
- Potentiometer
- Pushbutton x 4
- Resistor x 2
- Rotary encoder, KY-040
- Slide potentiometer x 2
- SparkFun Pro Micro

Every part is already on the simulator’s bench, so there is nothing to buy or hand out. The counts are the most any one lesson uses, if you build it on real breadboards too.

Chapter 1. About 1 h 20 min

## Messages

Turn faders into Control Change and pads into notes, one byte at a time.

Lesson | Time | What students do

Faders that speak MIDI Two slide pots become Control Change messages: three bytes at 31250 baud. Read a voltage, squeeze it into 0 to 127 and send it the way synths expect. | 40 min

- Meet MIDI
- Slide to the top
- Read the bytes
- Quiet when still

Pads that play drums Four buttons become drum pads: Note On when you hit one, Note Off when you let go, on the channel General MIDI keeps for drums. | 40 min

- Four pads
- Kick
- Let it ring, then stop
- Hi-hat

### Materials

- Full-size breadboard
- LED
- Pushbutton x 4
- Resistor x 2
- Slide potentiometer x 2
- SparkFun Pro Micro

### Check for understanding

Each student finishes "Pads that play drums" on their own, without opening the hints. The simulator checks 4 of its 4 steps as they go.

Then ask each one to explain, in a sentence or two, the last thing it asked of them: "Hi-hat".

Chapter 2. About 40 min

## The finished controller

Add a knob, program changes and a panic button.

Lesson | Time | What students do

A knob, an encoder and a panic button Finish the controller: a knob for one more control, an encoder that flips through a synth's sounds, and a button that silences everything at once. | 40 min

- The finished controller
- Turn the knob
- Change the sound
- The panic button

### Materials

- Full-size breadboard
- LED
- Potentiometer
- Pushbutton x 4
- Resistor x 2
- Rotary encoder, KY-040
- Slide potentiometer x 2
- SparkFun Pro Micro

### Check for understanding

Each student finishes "A knob, an encoder and a panic button" on their own, without opening the hints. The simulator checks 4 of its 4 steps as they go.

Then ask each one to explain, in a sentence or two, the last thing it asked of them: "The panic button".

Your class

## Teach this unit as a class

Start a class from this course and its 3 lessons are assigned in one go, in order. Students join with a six-character code or printed login cards, and each one’s work comes back to you.

The class tools are free for 30 days for one class of up to 20 students, with no card. The lessons themselves are free either way.

Start a class from this course See the demo class

More units

## Other lesson plans

Electronics basics 20 lessons, about 10 h. Embedded on the Arduino Uno 16 lessons, about 12 h. Embedded on the ESP32-C3 13 lessons, about 11 h. Embedded on the Raspberry Pi Pico 7 lessons, about 6 h. Build your own fight stick 5 lessons, about 4 h. Embedded on the STM32F411 6 lessons, about 6 h. C++ on a board 13 lessons, about 10 h. Digital logic and memory 4 lessons, about 4 h. Interactive devices on the Uno 9 lessons, about 8 h. From gates to a computer 23 lessons, about 16 h. Build a claw machine 8 lessons, about 6 h. Every unit All the courses as ready-made units, on the teachers page.
