Midi PC arranger project - help getting started

Hi all - Im completely new to Arduino, but am moderately experienced with basic tech. I currently have an Arduino Uno and have a specific need im trying to accomplish. Im hoping to find a little guidance on getting it done. -or- even better would be if such a thing (or similar) has been made by someone else already and I could borrow pieces of code to make mine.

How difficult of a project this is for a complete beginner? This seems to be an amazing and welcoming community. Looking forward to being more involved! thanks!

Id like to build a hardware midi sequencer Program Change Arranger i.e. "Songmode" for controlling external drum/synth sequencers via 5pin DIN. It would need to be able to:

FUNCTIONS:

  • Receive MIDI clock from an external source
  • Send/receive sysex message for STOP/STARTS
  • Count steps (or better, 16 step bars)
  • Send a PC message.
  • Save the series to be recalled later (would be cool if could name)

UI:
Id like to have a screen with a simple UI that has a numbered list with two Columns of data variables. Would need a few buttons for navigating the UI and changing variables.

  • Column 1- Program/Pattern Selection: fields are limited to 1-16, STOP, or LOOP ALL
  • Column 2 - Number of Bars: fields would be a number 1-16 or "loop"

Operation:
Connect to external hardware sequencer IN and OUT via 5pin MIDI din cables.
Set list of programs in order youd like them and the number of bars youd like it to play until the next change.
Set final program to STOP
Press button on Arduino project to START.

Arduino would then send a sysex Start message to an external sequencer.
After the number of steps (bars) have passed, the Arduino sends the PC message that is next on the list. It goes through the entire list until it gets to the end of the list. It would send a sysex "STOP" message when it hits "STOP". - or- go back to the top when it hits "Loop all"

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.