Das mit der externen Spannung stimmt schon, aber die 3,6 V reichen besonders bei der blauen LED kaum für 20 mA. Für den höheren Pulsstrom braucht man über 4 V. Bei den Datenblättern die ich habe braucht man schon für 50 mA rund 4,5 V bei blauen LEDs.
Wenn die Transistoren mit dem Emitter zur LED sind, ist die Spannung auch durch den Kontroller begrenzt. Damit das so leuchten soll müßte man recht kleine Basisvorwiderstande nehmen und kriegt damit die roten LEDs nicht richtig aus. Den Teil der gegen Vcc schaltet müßte man wenigstens überarbeiten und da PNP-Transistoren nehmen.

Die ULN2003 ersetzen 7 Transistoren, allerdings mit etwas mehr Spannungsabfall, denn da sind Darlingtons drin.