How can I modify Music Shield v1 to use it with MIDI over SPI? I mean it uses same processor as v2 so it should work. In fact I successfully used V2 library with V1 shield. Would cutting a trace to GPI01 do the trick?
Ok I figured it out. Everything is there, no need to modify anything.
Musicplayer.cpp (from Music_shield library) has function midiDemoPlayer() which can play notes, change banks, etc.
It was just a matter of moving midi functions from private to public in MusicPlayer.h file and then calling them from your sketch…
player.beginInMidiFmt(); player.midiWriteData(0xB0, 0x07, 120); // Set MIDI channel volume player.midiWriteData(0xB0, 0, 0x00); // Select bank GM1 player.midiWriteData(0xC0, 1, 0); // Select instrument (Piano) player.midiNoteOn(0, 70, 127); // Play note (C4) delay (1000); player.midiNoteOff(0, 70, 127); // Stop playing note
So question is, in comparison table why does it say that Music Shield V1 doesn’t support MIDI and V2 does? They actually both do