You could have given the correct information in the first place.
I gave information sufficient for the problem. Your information only refers to valid addresses. It is not necessary to have 128 different addresses to access 128 different devices as there are techniques you can use that do not require unique addresses on a bus. But going into all that is totally irrelevant.
When teaching you have to be able to pitch the information to the problem. Many engineers can't help themselves adding more detailed but irrelevant information. I understand why, but will not take any criticism for teaching in a proper manor.
After reading all the suggestions and doing some research, I redesigned all the circuit to make it work this time, apart from the series resistors that I should put on the pcb buttons. I cant figure out which values they should have, Ive seen examples of people using same value resistors (1k) but someone suggested using different values...
Im posting the new circuit bellow and I would like to know if its correct now or if it needs any modification/improvement.
I cant figure out which values they should have, Ive seen examples of people using same value resistors (1k) but someone suggested using different values
It is not very critical anything from 1K to 10K should be fine, I would stick to 1K.
What I don't understand is what the yellow wire is going into the - switch?
And why the red and black wires from the switches ultimately go to the power rails.
This diagram shows what your analogue switch should look like. Keep adding extra resistors and switches to the top. Note this is how you should present switches, with an acceptable symbol. Not what you have done.
What do you mean? Do I need an extra software besides the DAW every time I will use the MIDI controller? or are u talking about the arduino software where Ill write the code?
I think what Mike means is: what lines of arduino code, what algorithm, you will need to turn an analogRead() result into something that identifies which of play/rec/loop/stop/octave+/- has been pressed? The commonly made mistake is to assume that you will get a particular and exactly reliable value, based on the theoretical value that would be expected, knowing the resistor values, and write your code to expect those exact results. But in reality, those 1K resistors are never exactly 1K, and the analog inputs are not perfect, and will vary a little with temperature, or pick up random noise from the environment. So instead of checking for exact values, you code needs to allow for a range of values for each button, to allow for all these inexact factors. Don't worry, it's much easier than it sounds.