Block a user
Receive over I2C instead of UART
Should be very easy to implement, see z80/keyboard on how to implement I2C receive interrupt.
Rewrite firmware/keyboard for STM32F1
Rewrite is done in z80/keyboard. Old code now resides in z80/keyboard.old
Make this compatible with I2C bootloader