Remember the extreme cyber keypad KFC? I did some experimentation with USB MIDI in Raspberry Pi Pico and programmed Midi for Comrade!
Same hardware, little code and it sends midi notes!
import board, digitalio, time, os
from kfc.disp1 import OledInfoTexts
import usb_midi
import adafruit_midi
from adafruit_midi.note_on import NoteOn
from adafruit_midi.note_off import NoteOff
def mfc_main():
board_type = os.uname().machine
print(f"Board: {board_type}")
dsp = OledInfoTexts()
dsp.setup(5)
dsp.setLineText(0, "Status")
midi = adafruit_midi.MIDI(midi_out=usb_midi.ports[1], out_channel=0)
#board.GP11, board.GP12, board.GP13, board.GP14, board.GP15
button = digitalio.DigitalInOut(board.GP11)
button.direction = digitalio.Direction.INPUT
button.pull = digitalio.Pull.UP
key_state = 0;
dsp.flashStatusLed(3)
print("Waiting for user action...")
while True:
if key_state == 0:
if not button.value:
key_state = 1
midi.send(NoteOn("C2", 60))
dsp.statusLedLight(True)
if key_state == 1:
if button.value:
# print("key released")
key_state = 0
midi.send(NoteOff("C2", 60))
dsp.statusLedLight(False)
time.sleep(0.01) # debounce