Your job is to continue and complete the design and specification of your user interface, following the methodology we have studied.
Specify your design at the semantic, syntactic, and lexical levels (see the templates and examples web page). The semantic level design describes each function including its parameters, feedback, and potential error conditions. The syntactic level design describes the syntax of the system, using one or more state diagrams. The lexical level design gives the definitions of the tokens.
For the syntactic level, use state diagrams to specify some of the key interaction sequences in your design; you do not have to specify the entire interface if the diagrams become too lengthy and repetitive. Select a subset of your interface that covers its key aspects. You can also use sub-diagrams (like diagram subroutines) to keep the state diagrams from becoming cluttered.
Also draw a storyboard to show how your new interface would be used in one of the usage scenarios you described in Assignment 2, including rough sketches of your screens at each point in the story.
Write the user documentation -- a brief (one page or screenful max) new user's guide to getting started, which will inform the user how to use the device. Or, far better, try to design an interface that does not need any user documentation. Then, when you conduct usability tests in a future assignment, you will have to provide or not provide documentation according to what you decided here. In any case, you can assume that your program is already running -- no need to explain operating systems, start up screens, etc.