Remember my crying about the fluxamasynth bagpipe....well I am almost done with that project and it will be very simple fix
what I have for you all.
The openpipe works with the fluxamasynth, I programed the instrument to be set as 109 (bagpipe) but when I do some notes
it changes to 0 (piano).
this is what I think is the problem.
[
//byte note = 0; //The MIDI note value to be played
byte resetMIDI = 4; //Tied to VS1053 Reset line
byte ledPin = 13; //MIDI traffic inidicator
int instrument = 0;
/code]
the code was made for a music instrument shield from sparkfun dot com.
I had to change the rx (1) and tx (4) numbers for this code to get sound out of the fluxamasynth.
I think the problem lies in the VS1053 Reset line.
Because you are sending 4 bytes of data instead of three.
The midi channel should be merged with the midi command not sent as a separate byte.
This applies to all the functions you do like this.
Why do you have this method of sending MIDI when you have a perfectly good set of functions to do this in the sketch?
By using the bit wise OR operation, then do not output all that structure but the first two bytes ORed together followed by the last two. Do that for all the routines that use that structure
I am guessing you did not write that code, point is do you understand it?
did so... still don't know how to add a function that will work. I know you want me to learn this my self.
Can you give me a link of functions that I can use?
and does these work with synth.noteOn and synth.noteOff
Those are the bytes that consist of the MIDI messages, they are just ways of referring to those messages by name not number.
how do I set it up as a instrumtent with out playing notes automaticaly and keeping the parameters.
I have no idea what this means and I suspect you do not either.
What do you mean by "set up and instrument". Do you mean voice change? That is sent with a ProgramChange message.
Basically I don't think you know enough about MIDI to do what you want to do. You seem to be thrashing about trying to do things you do not understand by collecting together code you have found and hopping it will work. Then you ask questions but you are incapable of understanding the answers. It is like learning how to ask for directions to the train station in a foreign language with out learning enough of that language to understand the answer.
Then start writing your code, not some code you found, very simply at first, adding a small bit at a time and testing it as you go. Learn to understand what you are doing.