Wikipedia defines arpeggio as such:

An arpeggio is a type of broken chord, in which the notes that compose a chord are played or sung in a rising or descending order. An arpeggio may also span more than one octave.

We're using the term arpeggiator a bit loosely here, basically this project turns your NeoTrellis M4 into a little lo-fi synth (or MIDI controller) that plays a sequence of notes with each button press. Each note of the sequence is positioned in relation to the original note pressed, and displayed on the NeoTrellis by lightning up its respective button on the grid. 

All the available notes on the grid are taken from a particular musical mode (similar to a scale), which means pretty much anything you play will sound good. All together, this makes for an unusually fun and visually compelling musical experience - which I affectionately refer to as "Arpy".

You can either have the NeoTrellis M4 generate the audio itself, or have it send out MIDI messages to control another synth over USB MIDI such as on your computer or tablet

Here's what you'll need …

Parts Used

Adafruit NeoTrellis M4 with Enclosure and Buttons Kit Pack

PRODUCT ID: 4020
So you've got a cool/witty name for your band, a Soundcloud account, a 3D-printed Daft Punk...
$59.95
IN STOCK

USB cable - USB A to Micro-B

PRODUCT ID: 592
This here is your standard A to micro-B USB cable, for USB 1.1 or 2.0. Perfect for connecting a PC to your Metro, Feather, Raspberry Pi or other dev-board or...
$2.95
IN STOCK

3.5mm Male/Male Stereo Cable

PRODUCT ID: 2698
Seamlessly transmit high-quality stereo audio with this 3.5mm Male/Male Stereo Cable.  Ideal for "passing the AUX cord,"...
$2.50
IN STOCK

If you don't have a pair of powered speakers, these will work well …

USB Powered Speakers

PRODUCT ID: 1363
Add some extra boom to your audio project with these powered loudspeakers. We sampled half a dozen different models to find ones with a good frequency response, so you'll get...
$9.95
IN STOCK

Firmware Upload

In order to make it simple to get up and running with no programming required, we've created a drag-and-drop firmware you can use. If you're just getting started with your NeoTrellis M4, there is lots more info here in the main Learn Guide!

This program will replace CircuitPython, to get back to your CircuitPython projects, reinstall it by following https://learn.adafruit.com/adafruit-neotrellis-m4/circuitpython

Download

First, download the firmware file linked in the button below and save it to your computer hard drive somewhere you'll be able to find it, such as your Downloads folder.

Install Firmware

Plug your NeoTrellis M4 into your computer with a good quality, data capable USB cable. Your NeoTrellis will start up, and you'll see a purple indicator light on the back side.

Now, we'll put the NeoTrellis into bootloader mode. In this mode it will appear as a USB drive on your computer and will be ready to receive a new .uf2 firmware file. Use a thin, pointed object such as a headphone plug to double-click the reset button on the back side of the board.

projects_neotrellis-reset-1.jpg

projects_neotrellis-reset-2.jpg

Once you have double-clicked the reset button, the indicator LED will turn green. You'll notice a new USB drive appear on your computer named TRELM4BOOT, this is the bootloader USB storage built right into the NeoTrellis. It is now ready to receive the firmware file.

Drag & Drop

Now, drag the TM4ARPY.UF2 file onto the TRELM4BOOT drive. The file will copy over in a few seconds and then the NeoTrellis will automatically restart itself (you'll see the TRELM4BOOT drive disappear, don't worry, this is normal!). The status LED will return to purple, indicating regular operation mode.

If you ever need to manually switch out of bootloader mode, simply press the reset button one time.

Congratulations, you've updated the firmware and you're ready to play!

Connect your NeoTrellis to a powered speaker using the built in 3.5mm stereo jack and start pressing some buttons. Press multiple buttons at the same time to create interesting combinations. Note that if 3 or more buttons are pressed at the same time, some distortion will occur on the output signal.

Alternate patterns

For the purposes of expressive experimentation, below are two alternate .UF2 files which use different note patterns. Choose one and load it onto the NeoTrellis just like you did with the previous UF2. Remember to double-click the reset button to enter firmware mode!

MIDI Output

projects_midi-output.jpg
Trellis seen as MIDI device in Ableton Live

Arpy can also send MIDI data over USB, so you can use software synthesizers to generate sound from your computer. To use it, download the MIDI enabled UF2 file below, and upload it to your NeoTrellis just as before.

Once the NeoTrellis has restarted with the new firmware, connect your NeoTrellis M4 to your computer via USB and open your preferred music software, such as Garageband, Logic, Ableton Live, etc. The NeoTrellis should appear as a MIDI input device, just like a MIDI keyboard.

Advanced Mode - Customize it in the Arduino IDE

Advanced users can customize the arpeggiator parameters by editing the source code in Arduino IDE. To do so, you'll need the Arduino IDE installed on your computer, along with the libraries specified here in the NeoTrellis M4 guide. Project code is available here on GitHub, with the most common customizable parameters located in the settings.h file.

This guide was first published on Nov 19, 2018. It was last updated on Nov 19, 2018.