5-Button Synthesizer – Piper

PiperCode: 5-Button Synthesizer

5-Button Synthesizer

CODE YOUR PIPER COMPUTER KIT TO PLAY MUSIC

30 MINUTES

Some would say that music is the voice of a generation, and today, you get to be that voice! In this project, we will make a five-button synthesizer using PiperCode and the components in a Piper Computer Kit.

STEP ONE:

Collect all your materials.

  • Large Breadboard
  • 5x Buttons
  • 10x Jumper Wires

STEP TWO:

Start setting up.

Next, set up your keyboard by placing the buttons on the breadboard like so:

STEP THREE:

Wire up buttons.

Now, wire the buttons according to the picture and the pin table below:

STEP FOUR:

Use the correct GPIO pins.

To find the correct GPIO pins, you can use the electronics tab in PiperCode. On that diagram, ground pins are outlined in black and multipurpose pins in grey. Their pin numbers are also shown.

The jumper wires from the breadboard should be connected to the GPIO pins as shown below.

NOTE:

The Raspberry Pi may turn off if a short circuit occurs between its ground and high-voltage GPIO pin to avoid head damage.

 

CONCEPT CHECK

  • In circuits, the ground is the common return path for current, such as a direct physical connection  to earth
  • It can also refer to a reference point from which voltages are measured

STEP FIVE:

Let’s start coding!

Now that your buttons are wired up, time to start coding! Open PiperCode and set it to Step Mode at the highest speed, pictured below.

From the Sound menu on the left side, select the “Play” block. Drag and drop it into the programming area.

Next, find the "Synth" block under Sound and place it inside of the play block as shown below. Using the block’s dropdown menu to adjust tone, choose a sound that you’d like the leftmost button on your breadboard to play.

Run your code by clicking the “Start” button in the top left corner. (Note: A sound should play from your Piper Computer Kit’s speaker. If not, check your wiring and code using the steps above.)

 

CONCEPT CHECK

By setting a sound block as a parameter for a play block, we’re building an algorithm that tells computers which sound to use, and when to play them.

STEP SIX:

Link the chosen sound.

Now, let’s link our chosen sound to the leftmost button. From the Chip Menu, grab a “When pin turns on” block. Leave the pin value as 3 - the green button’s signal pin.

Next, click “Start” to test your code. Make sure your speaker volume is turned up. A sound should play when the green button is pressed. Try it!

STEP SEVEN:

We will now add a second sound corresponding to the second button. To do this, repeat the same steps as before, but set the pin to 26 this time as shown below.

Now that we understand how to code a button press to produce a sound, we can use the “Duplicate code” action to make copies of the code so far. To duplicate the code, right click on a completed “When pin turns on” block, and select duplicate. Do this three times until you have 5 "When pin turns on" segments.

After duplicating your code, give each statement a new pin assignment. On the new “When pin turns on” blocks, set their pin numbers to 31, 33, and 16 as shown below.

Now,  you can choose different instruments or tones for each button, like keys on a keyboard! Using the selection menu in the synth blocks, try putting together your own set of notes.

STEP EIGHT:

Once you're finished, click “Start” again and play your 5-button piano by pressing your buttons. Experiment with your piano by changing the sounds. The combinations you can create are nearly endless!

We hope you enjoyed this Piper STEAM project! Have a great Piper project idea? Let us know in the comments below. 👇