As far as I can tell from reading through the archives, this is a Really Hard Problem and pretty much requires a rewrite of big chunks of the kernel's console keyboard mapping code ... -- CAPS lock not working on all letters in tty1 to tty6 https://launchpad.net/bugs/16638