Thanks for trying to help, but I've already decided on the microcontroller. I'll be using one with built-in USB support, there's no space for a serial-to-USB converter in this thing. I already have a genuine arduino, but I won't test with that, because the timing required for this to work is very specific and I want to make sure it works on the micro that'll be in the actual product, not something vastly more powerful.
Mine is 1510 metric. Maybe I can find some through-hole LEDs with similar characteristics for testing on a breadboard, but no, I'll probably not be soldering the LEDs myself. They are very low current, so I can actually drive them just from the I/O pins of the micro that I selected, my main problem will be the reduced luminosity that is caused by charlieplexing all the LEDs. This is not a lighting circuit, though. All I want is that the LEDs can be seen in daylight, they don't have to be particularly bright.
On the main LED PCB, I have one button, 12 RGB LEDs and six resistors, all on a double-sided board and adhering to the design capabilities of a manufacturer I already found, so I'm not concerned about not being able to fit them inside.
I do need to switch the LEDs at quite a high frequency to fool the human eye, though. 50 Hz per LED and I can drive two at the same time, so just 900 cycles a second for a single brightness level per LED, and about 225kHz for 255 brightness levels. The MC is running at 48MHz, so I should be able to make it work. If not, I'll reduce the levels of brightness per LED.
12 LEDs are absolutely necessary because they are divisible by 2, 3, 4, and 6, so they allow for a lot of different options in terms of patterns.
Great to hear! It will fit 16mm holes which seems to be a very popular size for vandal buttons. The current length I'll have to check when I'm home, but I'll try to make it as short as possible.
Yeah those LEDs are huge af and yes I'll have custom PCBs in this, no way around it. As I wrote above my LEDs are 1510 metric and the PCB containing them is already completely layed out and ready for manufacturing.
It'll already be hard enough with 36 LEDs on 7 pins, I don't want to imagine having all of that on a single one. Fortunately, the HDD activity polling will take much less cycles than the LED driving.