Consideration of backlight options for number of pins:
For the start I'm totally fine with having just a general backlight for each key. In the last 11 years with the G15 I've never felt the need for anything more than just basic backlight in everyday life. According to you
vvp that would be one extra pin and from that I'd expect that it's still only that one pin if I want to be able to change the general brightness or even have a basic breathing mode?
But I'm quite sure I read something somewhere that using just one pin for all the keys would be too little power or something? I think it was recommended to tap the power directly from the USB connector, build a seperate circuit from there and skip the controller. I mean, it's 69 or even 86 LEDs plus up to 2 more LEDs for Caps and Num Lock - one pin can handle all of them?
Anyways, should I decide to have a separate case backlight that is single color LEDs and nothing more like on/off/adjustbale general brightness it's two more pins. So that would make it three pins for lighting of the keys and the case, right?
And just for my understanding: For cycling RBG LED case backlight it also would be just two extra pin or 4 extra pins for RGB LEDs where I'm able to only set the general color myself. For individual color per LED... - that would depend on how many case LEDs I wanted... say 9up to nine, then that would be 12 pins (for a 3x3 LED matrix)?
You wrote that for a 10x10 switch scanning matrix I would need 10 extra pins - I thought that would be 20 pins!? Same for 5x19 and individual RBG LEDs - which I'd have expected to be 24 extra pins, not just 15. Seems like I got something totally wrong here. Unless... the LEDs and the switches share the same high (or low) pin (excuse my possible lack of proper terminology)? Or are you thinking of Charlieplexing (10 pins for up to 90 LEDs)? Wouldn't Charlieplexing be quite prone to errors when hand wiring and too complicated to program?
By the way, what is a maximum duty cycle in regards of controlling LEDs? Is it how often I can change the LEDs state (on/off/brightness/color) per second?
As for individual control of the backlight for every single key with two pin LEDs or even RGB, it would be nice to have a controller that can handle it but it's nothing I plan to go for right from the start - I don't want to make programming too complicated right from the start. And since I'm not a programmer it's unlikely that I'll be able to program something like a RBG backlight control for single keys. At least for now I doubt it.
But maybe there is code around at least for single colour LEDs that I could use sometime in the future to extend my firmware to individual key backlight control and then it would be nice to be able to use the controller that I already have. If individual key backlight control makes things with common firmware (TMK, Easy AVR,...) too complicated, then I have no problem to refrain from that option though.
Backlight pin summary:
I need
21 pins (for the keyboard only using a 5x15 switch matrix +1 pin for the Shift Lock LED) or
26 pins (if the keypad should be connected to the same controller +2 pins for Shift and Num Lock LEDs)
and if I'm right it is - depending on which options I go for:
+1 pin for basic key backlight (on/off/brightness and even modes that affect the complete backlighting like breathing)
+10 - 15 pins for individually controlled key backlight (non-RGB/RGB)
+2 pin for single colour or cycling RGB LED case backlight
+4 pins for RGB LED case backlight
+12 pins for individually controllable RGB LEDs case backlight(?)
The small version would be the keyboard with basic key backlight and two legged LED case backlight - 24 pins.
The basic version would be the keyboard with individually controllable non-RGB key backlight and RGB case backlight - 35 pins.
The medium version would be the keyboard with individually controlled non-RGB key backlight and individually controllable RGB LEDs case backlight - 43 pins.
The big version would be the keyboard with individually controlled non-RGB key backlight, individually controllable RGB LEDs case backlight and the keypad - 48 pins.
The deluxe version would be the keyboard with individually controllable RGB LED key/case backlight and keypad - 53 pins.
It's several pins more if the keypad should have the same backlight options. I doubt this is easily duable with only one controller - so lets forget about that for now.
Decision:
I'm aiming for the small version first - I'll be happy once at least that works. Nevertheless I would rather go for a controller that is able to handle the medium version which needs 43 usable pins (if the pin calculation is correct). This will allow me to add more features later on. That is if the price difference isn't too big. I.e. (exaggerated) if I can get a Teensy 2.0 for 5$ I probably won't spend 40$ for the ++.
Which controller should I get?
metalliqaz wrote that a Teensy (assuming he meant the 2.0) and certainly the Teensy++ would work for me. Though if I'm not mistaken, the Teensy 2.0 would only work for the small version with 24 pins. As soon as I go "better" or keyboard without any backlight but with keypad, the 2.0 hasn't enough pins and I have to go at least for a Teensy++.
I would think that the basic and the medium version are both in range of the same controllers. So even with the keypad added to the basic version (= 40 pins) the controller needed should be able the handle the keypad. This guess might be totally wrong though - it's just that most controllers I've seen so far either were as small as the Teensy 2.0 (or smaller, pinwise) or as big or even bigger as the Teensy++ with 45 I/O pins (according to pjrc - I don't know if I could use all of the pins for my purposes).
What about the Arduino Micro or boards that come with the ATmega328P? There are quite a lot of controllers which are available for less than 10$ but I have no idea if with them I still could use TMK or Easy AVR.