Here is a Morse CW Keyboard using a Raspberry Pi and an attached PIC Microcontroller.
The Keyboard logic is written in Python and runs on the Raspberry Pi under Raspbian port of the Linux operating system. It uses MySQL as a logging database.
The RPi has been configured with a wireless keyboard, HDMI display and WiFi.
The GUI was written with Glade.
The code for the PIC Microcontroller is written in C and a little assembler. It runs on a PIC18F2550 but could be downsized to any 8 Bit PIC that has a USART in hardware.