Our software has three components: the text file that contains all of the words we are using, the GUI, and the firmware. The GUI is written in python; the firmware is written in C. Here is a screenshot of our GUI:

In the GUI, if the user presses a letter button, the corresponding number will show up in the top-left box and the list of matching words will show up in the bottom-left box. If the user then presses the 'enter' function key or the 'INPUT' button, then the word is sent to the text box to the right. If the user clicks the 'Select All' button, then all of the text in the right text box is copied to the clipboard.

Try out our GUI! Click here to download our GUI. only works with the peripheral attached, but works with the keyboard buttons 0-9, a, and b substituting in for the peripheral buttons.

Here is an explanatory diagram of how our GUI works with our firmware: