I have wanted to build a new macro keyboard for some time now, and always get distracted by the real world before I finish. I am making another attempt this summer...
Rather than put all of the keys in one large matrix, I got the idea that I might rather group them together in groups of 6. The reason for this is that there are 36 keys total and I could separate these to make it easier to find a particular key by touch (without looking). The old G15 keyboard had macro keys in 3 groups of 6. Another reason for doing this is that I could have the key matrixes on 2-layer daughter boards and possibly connect them to the 4 layer main board. This would allow me to have the MCU board under the key matrix (making the case taller but less desk area). It might also cut costs a bit.
I don't know if this is a dumb idea or not. So I guess that is my first question.
Next, while I'm planning to run the MCU at 72MHz, the key matrix scanning will be slower. I don't know what that frequency will be, but I can certainly control it. I could run it from a timer if I need an exact value. A few hundred kHz seems reasonable. I need a 48MHz clock for the USB connection, and had no reason to run the MCU slower before now.
I envision the board-to-board connections would be under 10cm each. If I made the key matrix one single PCB it would be on the order of 120x130mm.
I think 5 signal wires separated by 4 ground wires would be sufficient to run to each daughter board. My SWD connector has 10 lines, so I might be able to use these without adding to the BOM.
I have no schematic with this scheme for now, but can draw one up if needed. I was hoping to get a rough idea if this would work before making such a drastic change to the design.
Edit: I forgot to mention the programmable LEDs. That would mean two more wires, so I guess I would need a different connector. I'm not sure how fast I have to run the LEDs. I believe they latch on "reset".
Any thoughts/suggestions?