4x3 Matrix Keypad and USBKeyboard emulation

Try commenting out the following line in your code:

// TIMSK0&=!(1<<TOIE0);

Although I cannot find any code part in i2ckeypad and Wire libraries that use delay(), millis() or micros(), it may be that I missed something. If it works with this modification we know at least where to look in more detail.

Am I getting you right, that it works if you just comment out the kpd.get_key() call but leave the kpd.init() call in?

What changes have you done to the ic2keypad library (you must have done changes because the version linked in the playground does not compile in current IDE versions)? Post your version to let us see the changes.