# Trellis M4 Expressive MIDI Controller

## Overview

https://youtu.be/dUBCKZjeLLM

![](https://cdn-learn.adafruit.com/assets/assets/000/065/480/medium800/projects_3963_top_lit_ORIG_2018_10.jpg?1541785663)

You can play music with the **Trellis M4** by turning it into a great input device for synthesizers! It can send standard **MIDI** (Musical Instrument Digital Interface) note data over USB MIDI to a software synth on your computer, laptop, (including web browser based synths!), or mobile device.

Using the built-in accelerometer (thanks to [Analog Devices for the ADXL343](https://www.analog.com/en/products/adxl343.html)!), we can also send control change (CC) data, such as mod wheel, and filter cutoff values, and even pitch bend settings just by tilting the Trellis M4!&nbsp;

Info: 

## Parts Used
### Adafruit NeoTrellis M4 with Enclosure and Buttons Kit Pack

[Adafruit NeoTrellis M4 with Enclosure and Buttons Kit Pack](https://www.adafruit.com/product/4020)
So you've got a cool/witty name for your band, a Soundcloud account,&nbsp;[a 3D-printed Daft Punk helmet](https://learn.adafruit.com/3d-printed-daft-punk-helmet-with-bluetooth)...&nbsp;so what could be missing from your road to stardom? The **NeoTrellis M4 Kit...**

Out of Stock
[Buy Now](https://www.adafruit.com/product/4020)
[Related Guides to the Product](https://learn.adafruit.com/products/4020/guides)
![Demo Video of Hands pressing buttons on lit up NeoTrellis M4.](https://cdn-shop.adafruit.com/product-videos/640x480/4020-00.jpg)

### Little Rubber Bumper Feet - Pack of 4

[Little Rubber Bumper Feet - Pack of 4](https://www.adafruit.com/product/550)
Keep your electronics from going barefoot, give them little rubber feet! These small sticky bumpers are our favorite accessory for any electronic kit or device. They are sticky, but not impossible to remove. They're small enough to fit onto any board, and have just enough height to give...

In Stock
[Buy Now](https://www.adafruit.com/product/550)
[Related Guides to the Product](https://learn.adafruit.com/products/550/guides)
![Angled Shot of the Little Rubber Bumper Feet - Pack of 4](https://cdn-shop.adafruit.com/640x480/550-06.jpg)

## Assembly and Familiarization
Take a look at the [Trellis M4 main guide](https://learn.adafruit.com/adafruit-neotrellis-m4/overview) for lots more info and the [assembly page](https://learn.adafruit.com/adafruit-neotrellis-m4/assembly) in case you haven't yet built the enclosure.

# Trellis M4 Expressive MIDI Controller

## MIDI Essentials

 **MIDI** is a venerable protocol (dating back to 1983) that is used to communicate between synthesizers, controllers, sequencers, sample players, computers, mobile devices, drum machines, and other electronic music making devices.

![](https://cdn-learn.adafruit.com/assets/assets/000/065/292/medium800/projects_midi_block_diagram.jpg?1541613206)

## Electronic Music Gear

Electronic music gear is often made up of multiple discreet components that each have their specialized task to perform. They can communicate with each other through data messages, control voltages, gate and trigger signals, and/or audio signals in order to come together as a whole, united system capable of being performed, recorded, played back, and ultimately, producing audible music!

## MIDI Messages

A simple and very common use case is to have a controller, such as a piano-style keyboard, send **Note On** and **Note Off** data to a music synthesizer (including software synths on your computer or mobile device).

Press a key and a message is sent telling the synth to play a specific musical note. Release the key and a message is sent to the synthesizer telling it to stop playing that note.

![](https://cdn-learn.adafruit.com/assets/assets/000/065/483/medium800/projects_midinoteonmessage.jpg?1541786321)

Getting a bit fancier than simple on/off messages, MIDI can also be used to send "continuous controller" **CC** messages, typically the result of turning a knob or pushing a slider on the keyboard controller. These can be used to sweep through the cuttoff frequency of a low pass filter, or modulate a tremolo, and many, many other parameters.

A similar scheme is also used to send pitch bend info -- often represented by a pitch bend wheel on the left side of a MIDI keyboard.

## Trellis M4 MIDI

We can use the Trellis M4 to send any kind of MIDI message we like, right over USB. In this project, we've mapped the 32 buttons to play the "keys" on your synth, from a low C (MIDI Note 32) up to a high G (MIDI note 64). You can hold many buttons at once to create chords if you're using polyphonic synth software.

But that's not all! We can also play very expressive pitch bend and modulation with the Trellis M4. This is all thanks to the Analog Device ADXL343 accelerometer built right onto the board! Tilt left and right to pitch bend down and up, and tilt forward and backward to gradually adjust the filter or tremolo or whatever you like on MIDI CC 1.

# Trellis M4 Expressive MIDI Controller

## Firmware Upload

![](https://cdn-learn.adafruit.com/assets/assets/000/065/476/medium800/projects_IMG_2270.jpg?1541784444)

In order to make it simple to get up and running with your Trellis M4 Expressive MIDI Controller **with**  **no programming required** , we've created a drag-and-drop firmware you can use. You can skip to the page [Custom Code in Arduino](https://learn.adafruit.com/trellis-m4-midi-keypad-and-tilt-controller/code-in-arduino) if you want to customize things!

If you're just getting started with your Trellis M4, there is lots more info [here in the main Learn Guide!](https://learn.adafruit.com/adafruit-neotrellis-m4/overview)

## 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.

[Trellis M4 MIDI CC.UF2 firmware](https://cdn-learn.adafruit.com/assets/assets/000/065/475/original/TM4MIDIC.UF2?1541784006)
Warning: 

## Install the Firmware

Plug your Trellis M4 into your computer with a good quality, data capable **USB** cable. Life is too short to go through the pain of accidentally using a **power-only** USB cable, so please round up any you own, cut them in half, travel to a distant land, bury them, and dance on their grave.

Your Trellis M4 will start up, and you'll see a purple indicator light on the back side.

## Bootloader Mode

Now, we'll put the Trellis M4 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.

![](https://cdn-learn.adafruit.com/assets/assets/000/065/477/medium800/projects_IMG_2271.jpg?1541784592)

![](https://cdn-learn.adafruit.com/assets/assets/000/065/478/medium800/projects_IMG_2272.jpg?1541784607)

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 Trellis M4. It is now ready to receive the firmware file.

## Drag and Drop

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

![](https://cdn-learn.adafruit.com/assets/assets/000/065/479/medium800/projects_trellm4firmdrag.jpg?1541785141)

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

Primary: 

![](https://cdn-learn.adafruit.com/assets/assets/000/065/474/medium800/projects_midimon.jpg?1541783315)

## Test MIDI Output

You can test to see that your Trellis M4 is outputting MIDI signals properly by using a MIDI utility. These will report all activity coming from any MIDI controller plugged into your system. Here are some to try:

- [MIDI Monitor](https://www.snoize.com/MIDIMonitor/) for mac os
- [MIDI-OX](http://www.midiox.com/) for Windows
- [MIDI Wrench](https://itunes.apple.com/us/app/midi-wrench/id589243566) for iOS
- [MIDI Scope](https://play.google.com/store/apps/details?id=com.mobileer.example.midiscope) for Android
- [KMidimon](http://kmidimon.sourceforge.net/) for Linux
- [Web MIDI Monitor](https://www.midimonitor.com/#) for Chrome browser

# Trellis M4 Expressive MIDI Controller

## Software Synthesizers

![](https://cdn-learn.adafruit.com/assets/assets/000/065/420/medium800/projects_TrellisM4_over_Helm.jpg?1541778003)

There are many, many, many, many (did we mention "many"?) synthesizers out there in the world that you can control using MIDI note and CC controls.

You may already have a favorite software synth, and chances are it'll work with the Trellis M4. In case you don't have one already picked out, here are some good ones to try.

## Synthesizers

Nearly any software synth (or DAW (digital audio workstation) you find will allow you to use USB MIDI to control the notes, pitch bend, and CC input. Here are some good ones to try:

### **Chrome Web&nbsp;Browser&nbsp; &nbsp;**

- Viktor NV-1&nbsp;[https://nicroto.github.io/viktor/](https://nicroto.github.io/viktor/) &nbsp; &nbsp;
- Juno-106.js &nbsp;[http://juno-106.js.org/](http://juno-106.js.org/)

### **iOS&nbsp; &nbsp;**

#### free open source &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;

- [AudioKit Synth One](https://audiokitpro.com/synth/) (iPad only) &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;

#### free &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;

- [GarageBand](https://www.apple.com/ios/garageband/)
- [DRC Polyphonic&nbsp;Synth by Imaginado](https://www.imaginando.pt/products/drc) (iPhone and iPad) &nbsp; &nbsp; &nbsp;&nbsp; &nbsp;

### **Android&nbsp; &nbsp;**

#### free&nbsp;&nbsp;&nbsp;

- [DRC Polyphonic&nbsp;Synth by Imaginado](https://play.google.com/store/apps/details?id=com.imaginando.drc)

## Desktop/Laptop
### **Linux / Windows / mac os &nbsp;**

#### free open source &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;

- [Helm](https://tytel.org/helm/) &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;
- [VCV Rack](https://vcvrack.com/)
- [Pure Data](https://puredata.info/)
- [Ardour](https://ardour.org/)

 **Windows&nbsp; / mac os**

#### commercial &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;

- [Ableton Live](https://www.ableton.com/en/) &nbsp;&nbsp; &nbsp;&nbsp;
- [Propellerhead Reason](https://www.propellerheads.com/en/reason)&nbsp; &nbsp;
- [Cubase](https://www.steinberg.net/en/products/cubase/start.html) &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;
- [Fruity Loops FL Studio](https://www.image-line.com/flstudio/)

### **Windows**

#### free

- [PreSonus Studio One](https://shop.presonus.com/Studio-One-4-Prime)

### **mac os&nbsp;&nbsp; &nbsp;**

#### free &nbsp; &nbsp;&nbsp;&nbsp;&nbsp;

- [GarageBand](https://www.apple.com/mac/garageband/) &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;

#### commercial &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;

- [Logic Pro &nbsp;](https://www.apple.com/logic-pro/)&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;

# Trellis M4 Expressive MIDI Controller

## Play Music with Helm Synthesizer

## Play Music

Once you've picked a synth (the Chrome browser ones are really quick to try out, hint, hint!) plug in your Trellis M4 and get playing! It's very likely the synth will recognize it immediately, but if not, check the preferences and choose the "Adafruit Trellis M4" MIDI device.

Here's an example using Helm.

![](https://cdn-learn.adafruit.com/assets/assets/000/065/484/medium800/projects_helmpref.jpg?1541786682)

## Assign CC

The note on/off functions will work immediately, as should the pitch bend if it's supported in your software. Try holding some notes and then tip the controller left and right to bend down and up.

The forward and backward tilt will send CC 1 messages, which is usually interpreted as "mod wheel". This can be mapped by default to things like tremelo, but you may want to change it. In most software synths it's a matter of checking the help docs and reassigning it.

For example, here's how to re-assign a MIDI mapping for the x-axis tilt in Helm so that it will control Filter Cutoff Frequency:

https://youtu.be/mqbpDM8rizY

And, here it is in action!

https://youtu.be/4D-0sIM5oes

Enjoy playing with your new Trellis M4 Expressive MIDI Controller! If you want to further customize things, check out the page on coding it in Arduino.

# Trellis M4 Expressive MIDI Controller

## Using with iOS Devices

## Using with iOS Devices

Using the Trellis M4 with an iOS synthesizer, such as the excellent AudioKit Synth One, is easy, but you will need an adapter to connect the USB output of the Trellis M4 to the Lightning input of the iOS device.

The[iOS Lightning to USB OTG cable](https://www.adafruit.com/product/3940) allows you to connect the Trellis M4 right to your iPad, iPhone, or iPod Touch. The device will also provide power to your Trellis M4!

![](https://cdn-learn.adafruit.com/assets/assets/000/065/513/medium800/projects_IMG_2312.jpg?1541961268)

![](https://cdn-learn.adafruit.com/assets/assets/000/065/514/medium800/projects_IMG_2314.jpg?1541961278)

![](https://cdn-learn.adafruit.com/assets/assets/000/065/515/medium800/projects_IMG_2315.jpg?1541961435)

Depending on your software, you may need to select and configure the Trellis M4 as the chosen MIDI device.

&nbsp;

Synth One found it automatically, but you can use the MIDI Learn function to assign the x-axis (forward/backward) tilt to any knob.

&nbsp;

Press the "MIDI Learn" button

&nbsp;

Tap on the knob you want to control -- Here I've chosen the Filter cutoff frequency

&nbsp;

Tilt the Trellis M4 forward and backward. The range doesn't matter, it just needs to register that that MIDI CC number (1 in this case) is the once changing

&nbsp;

Press the "MIDI Learn" button to finish

&nbsp;

![projects_IMG_2319.jpg](https://cdn-learn.adafruit.com/assets/assets/000/065/516/medium640/projects_IMG_2319.jpg?1541961559)

![projects_IMG_2320.jpg](https://cdn-learn.adafruit.com/assets/assets/000/065/517/medium640/projects_IMG_2320.jpg?1541961568)

![projects_IMG_2321.jpg](https://cdn-learn.adafruit.com/assets/assets/000/065/518/medium640/projects_IMG_2321.jpg?1541961580)

![projects_IMG_2325.jpg](https://cdn-learn.adafruit.com/assets/assets/000/065/519/medium640/projects_IMG_2325.jpg?1541961600)

![projects_IMG_2326.jpg](https://cdn-learn.adafruit.com/assets/assets/000/065/520/medium640/projects_IMG_2326.jpg?1541961607)

![projects_IMG_2327.jpg](https://cdn-learn.adafruit.com/assets/assets/000/065/521/medium640/projects_IMG_2327.jpg?1541961613)

![projects_IMG_2328.jpg](https://cdn-learn.adafruit.com/assets/assets/000/065/522/medium640/projects_IMG_2328.jpg?1541961628)

Now, as you tilt the Trellis M4, the Filter cutoff frequency changes! Have fun exploring different parameters as you play.

![](https://cdn-learn.adafruit.com/assets/assets/000/065/523/medium800/projects_IMG_2333.jpg?1541961896)

![](https://cdn-learn.adafruit.com/assets/assets/000/065/529/medium800/projects_IMG_2332.jpg?1541961905)

# Trellis M4 Expressive MIDI Controller

## Custom Code in Arduino

If you want to customize the Trellis M4 Expressive MIDI Controller beyond the .uf2 firmware you dragged onto the board, we'll need to use Arduino IDE to code it.

First, [get set up with Arduino IDE as detailed here](https://learn.adafruit.com/adafruit-neotrellis-m4/setup).

Next, [follow these instructions](https://learn.adafruit.com/adafruit-neotrellis-m4/arduino-libraries) on getting the proper libraries installed. In this code we use the following libraries:

- **Adafruit\_Keypad**
- **Adafruit\_NeoPixel**
- **Adafruit\_Sensor**
- **Adafruit\_ADXL343**
- **MIDIUSB**

Once you've updated the board definitions as shown, you'll be able to select **Adafruit Trellis M4 (SAMD51)** as your board for compiling and uploading.

![](https://cdn-learn.adafruit.com/assets/assets/000/065/444/medium800/projects_trellisboard_in_arduino.jpg?1541781756)

Copy the code shown below and paste it into a new sketch in Arduino. Save the sketch as **midi\_keypad.ino** and then upload it to your board.

Note: if you have any problem uploading to the board, double-click the reset button on the back of the board during the upload to set the Trellis M4 into bootloader mode. The on-board status LED (on the back) will be purple during normal running mode and switch to green when it is in bootloader mode.

https://github.com/adafruit/Adafruit_NeoTrellisM4/blob/master/examples/midi_keypad/midi_keypad.ino

The most likely things you'll want to change are the MIDI channel, the MIDI note range of the keypad buttons, and the CC channel numbers of the accelerometer tilt axes.

## MIDI Channel

You can adjust the MIDI channel by changing the value of this line:

`#define MIDI_CHANNEL 0 // default channel # is 0`

To change this controller to send MIDI over channel 6, for example, you could make it read:

`#define MIDI_CHANNEL 6 `

## Note Range

The Trellis M4's 32 buttons are set up in this project as chromatic keys with the low note set to C3. This corresponds to MIDI notes 36 through 68. You can change this range by adjusting this line in the code:

`#define FIRST_MIDI_NOTE 36`

## CC Channel

The x-axis (forward/backward) tilt of the Trellis M4's accelerometer is set by default to send out a range of 0-127 values over MIDI CC channel 1. This is typically received as "mod wheel" in most synthesizers. You can change this value, in case it isn't simple in your software synth to re-assign which knob is turned by CC 1. This line is the one to adjust:

`int xCC = 1;`

Once you're done making changes, upload the sketch to your Trellis M4 and test it out in your MIDI monitor utility and synth!

## Test MIDI Output

You can test to see that your Trellis M4 is outputting MIDI signals properly by using a MIDI utility. These will report all activity coming from any MIDI controller plugged into your system. Here are some to try:

- [MIDI Monitor](https://www.snoize.com/MIDIMonitor/) for mac os
- [MIDI-OX](http://www.midiox.com/) for windows
- [MIDI Wrench](https://itunes.apple.com/us/app/midi-wrench/id589243566) for iOS
- [MIDI Scope](https://play.google.com/store/apps/details?id=com.mobileer.example.midiscope) for Android
- [KMidimon](http://kmidimon.sourceforge.net/) for Linux
- [Web MIDI Monitor](https://www.midimonitor.com/#) for Chrome browser


## Featured Products

### Adafruit NeoTrellis M4 with Enclosure and Buttons Kit Pack

[Adafruit NeoTrellis M4 with Enclosure and Buttons Kit Pack](https://www.adafruit.com/product/4020)
So you've got a cool/witty name for your band, a Soundcloud account,&nbsp;[a 3D-printed Daft Punk helmet](https://learn.adafruit.com/3d-printed-daft-punk-helmet-with-bluetooth)...&nbsp;so what could be missing from your road to stardom? The **NeoTrellis M4 Kit...**

Out of Stock
[Buy Now](https://www.adafruit.com/product/4020)
[Related Guides to the Product](https://learn.adafruit.com/products/4020/guides)
### iOS Lightning to USB OTG Cable

[iOS Lightning to USB OTG Cable](https://www.adafruit.com/product/3940)
Your iOS phone or tablet may not have a USB port on the bottom but that doesn't mean you can't use it to connect USB devices. Secretly known as a 'Camera Connector' or 'MIDI Connector' cable, this doohicky plugs into the bottom of your iOs device and gives you a USB A...

In Stock
[Buy Now](https://www.adafruit.com/product/3940)
[Related Guides to the Product](https://learn.adafruit.com/products/3940/guides)
### USB Patterned Fabric Cable - A/MicroB

[USB Patterned Fabric Cable - A/MicroB](https://www.adafruit.com/product/2008)
Oooh it's so soft! And that beautiful&nbsp;pattern! If you have to have visible cables&nbsp;then you might as well have the nicest fabric bound cable with a eye-catching snake-like pattern. &nbsp;That's why we now carry this standard A to micro-B USB cable&nbsp;for USB 1.1 or 2.0....

No Longer Stocked
[Buy Now](https://www.adafruit.com/product/2008)
[Related Guides to the Product](https://learn.adafruit.com/products/2008/guides)
### Adafruit NeoTrellis M4 Mainboard - featuring SAMD51

[Adafruit NeoTrellis M4 Mainboard - featuring SAMD51](https://www.adafruit.com/product/3938)
We got a big ol' blender and tossed in an ItsyBitsy M4, two NeoTrellis boards and an electret mic amp - turned on the 'mix' button and out came the NeoTrellis M4 - a super fun dev board for anyone who likes to squish buttons, see pretty lights and maybe make a tune or...

Out of Stock
[Buy Now](https://www.adafruit.com/product/3938)
[Related Guides to the Product](https://learn.adafruit.com/products/3938/guides)
### Little Rubber Bumper Feet - Pack of 4

[Little Rubber Bumper Feet - Pack of 4](https://www.adafruit.com/product/550)
Keep your electronics from going barefoot, give them little rubber feet! These small sticky bumpers are our favorite accessory for any electronic kit or device. They are sticky, but not impossible to remove. They're small enough to fit onto any board, and have just enough height to give...

In Stock
[Buy Now](https://www.adafruit.com/product/550)
[Related Guides to the Product](https://learn.adafruit.com/products/550/guides)
### NeoTrellis M4 Acrylic Enclosure Kit

[NeoTrellis M4 Acrylic Enclosure Kit](https://www.adafruit.com/product/3963)
So you've got your&nbsp;[Adafruit NeoTrellis M4](https://www.adafruit.com/product/3938), a cool/witty name for your band, a Soundcloud account,&nbsp;[a 3D-printed Daft Punk helmet](https://learn.adafruit.com/3d-printed-daft-punk-helmet-with-bluetooth)...&nbsp;so what...

In Stock
[Buy Now](https://www.adafruit.com/product/3963)
[Related Guides to the Product](https://learn.adafruit.com/products/3963/guides)
### Silicone Elastomer 4x4 Button Keypad - for 3mm LEDs

[Silicone Elastomer 4x4 Button Keypad - for 3mm LEDs](https://www.adafruit.com/product/1611)
So squishy! These silicone elastomer keypads are just waiting for your fingers to press them. Go ahead, squish all you like! (They're durable and easy to clean, just wipe with mild soap and water) These are just like the light up rubber buttons you find on stuff like appliances and tools,...

In Stock
[Buy Now](https://www.adafruit.com/product/1611)
[Related Guides to the Product](https://learn.adafruit.com/products/1611/guides)
### Monoprice 5-Watt Guitar Amplifier, Portable Recorder

[Monoprice 5-Watt Guitar Amplifier, Portable Recorder](https://www.adafruit.com/product/4402)
Always be ready rock out or record&nbsp;with this **5-watt Guitar Amplifier, Portable Recorder, and USB Audio Interface** from Monoprice.

This handheld 5-watt amp delivers plenty of loudness and clarity for ad hoc _al fresco_ performances. It has a built-in guitar...

No Longer Stocked
[Buy Now](https://www.adafruit.com/product/4402)
[Related Guides to the Product](https://learn.adafruit.com/products/4402/guides)

## Related Guides

- [Adafruit NeoTrellis M4 Express](https://learn.adafruit.com/adafruit-neotrellis-m4.md)
- [Mini UNTZtrument: 3D Printed MIDI Controller](https://learn.adafruit.com/mini-untztrument-3d-printed-midi-controller.md)
- [Adafruit NeoTrellis](https://learn.adafruit.com/adafruit-neotrellis.md)
- [NeoTrellis M4 Noisy Grains of Sand](https://learn.adafruit.com/neotrellism4sand.md)
- [Christmas Soundboard with NeoTrellis M4](https://learn.adafruit.com/xmas-sound-board.md)
- [FlappyBird Game for NeoTrellis M4 in CircuitPython](https://learn.adafruit.com/circuitpython-neotrellism4-flappybird.md)
- [Star Trek Soundboard with NeoTrellis](https://learn.adafruit.com/star-trek-sound-board-with-neotrellism4.md)
- [NeoTrellis MIDI Feedback Controller](https://learn.adafruit.com/neotrellis-midi-feedback-controller.md)
- [Mu Keyboard Shortcut Cheat Sheets](https://learn.adafruit.com/mu-keyboard-shortcut-cheat-sheets.md)
- [Keypad and Matrix Scanning in CircuitPython](https://learn.adafruit.com/key-pad-matrix-scanning-in-circuitpython.md)
- [Trellis M4 Beat Sequencers](https://learn.adafruit.com/trellis-m4-beat-sequencer.md)
- [NeoTrellis Sound Board](https://learn.adafruit.com/neotrellis-soundboard.md)
- [What is Web MIDI & BLE MIDI?](https://learn.adafruit.com/web-ble-midi.md)
- [Adafruit PMSA003I Air Quality Breakout](https://learn.adafruit.com/pmsa003i.md)
- [Adafruit INA23x DC Current Voltage Power Monitor](https://learn.adafruit.com/adafruit-ina237-dc-current-voltage-power-monitor.md)
