Matrix in keypads are simple, buttons are connected to each other by columns and rows. When one button is pressed, one column and one row are connected to each other. Reading is done by multiplexing, e.g. voltage is connected to first column, and when button 4 is pressed, it can be read from row 1. Bit like multiplexing led grid.
There are many great tutorials in internet to actually make this work. This one for example. If you don’t want implement your own code, ready libraries can be used. For Arduino I used Keypad Library from arduino playground. This makes usage of matrix keyboard very easy and straightforward, but it may not be suitable for more advanced device, as lag in other code makes this library unresponsive. For testing purpose this is perfect.
Rows are blue, columns are red, and together they make magnificent mess of peeled insulation. Switches are very nice. They have mechanical feel, contact is made with gilded spring and contacts on pcb. Due to construction they also bounce many times when pressed, so that must be mind when coding. Old school <3And wires to Arduino. It takes almost full port, but I will probably use separate AVR mcu for buttons and knobs and then use SPI or other serial bus between IC’s.
And it seems to work \o/