top of page

Firmware

Any digital hardware is only as good as the code that makes it tick.

I2C.jpg

I2C

I2C allows the MTP-25K to take in over 30 different user inputs, and funnel them all into one microcontroller. 

Buttons_edited_edited_edited.jpg

Button Features

Features like Octave Up/Down, Note Hold and Arpeggio are what make the MTP-25K able to keep up with other MIDI devices - and that's only the beginning.

Light Emitting Diodes

Charlieplexing

With over 80 LED's and a limited power budget, Charlieplexing was the critical piece in making our user interface come to life.

I2C
Inter-Integrated Circuit

I2C.jpg

Inter-Integrated Cirtuit (I²C)

The MTP-25K relies on the I2C communication protocol to manage all our input and output components. Rather than rely on the limited GPIO pins on the MPU, we can outsource much of this to dedicated ICs.

Musical Functions:
-Octave   
-Shift
-Hold         
-Arpeggio

Buttons_edited_edited_edited.jpg

Octave, Shift, Hold, Arpeggio

The Octave buttons allow you to move up or down an octave and has light indicators to help the user know what octave they are in. 

​

The Shift button allows the user to change the tempo & more.

​

Hold allows the user to hold a note. This feature is intended to mimic a piano's ability to hold notes.

​

Arpeggio creates a scale based on the note pressed. There are different arpeggio modes that dictate whether the scale goes up, down, up and down or based off what the user inputs. 

Charlieplexing

Light Emitting Diodes

Charlieplexing

Due to the sheer number of LED indicators we have on the MTP-25K, paired with a tight power budget, we needed a reliable way to control so many LEDs. Charlieplexing is a perfect way to control many lights while not using a lot of power at the same time. 

bottom of page