Hardware

Designing SAiNT was a difficult task, as no other complete solutions existed.  Through extensive research, only solutions to individual components required for SAiNT were found.  As a result, it was decided that a combination of software and hardware solutions could solve the ultimate problem of audio to text synchronization.  

Hardware will be used to implement an audio pre-amp. The pre-amp will amplify and apply a band pass filter to the microphone input, producing an optimal signal to be recorded.  At first a 741 op-amp will be used with a 200- 4000 Hz band pass filter.  If the audio recording is not satisfactory, a higher quality op-amp will be used to decrease the signal to noise ratio of the recording.  Normal speech falls in the frequency range of 200 – 4000 Hz, which determined the parameters for the filter (Don Davis).  Since the highest frequency needed for recording is 4000 Hz, application of the Nyquist Theorem leads to a sampling speed of 8000 Hz (Maichen). 

A Texas Instruments MSP430 was used as the microcontroller on the audio circuit.  TI provides all of the communication protocol necessary to read and write to an SD card.  This also led to the design decision to implement an SD card as the source of non-volatile memory.  The MSP430 (Texas Instruments) is also very low cost, around $3.33, and fast, 8 MHz, making it ideal for the project.  The microcontroller was programmed to convert the analog signal from the pre-amp to a digital signal using a sampling frequency of 5200 Hz for reasons stated above.  After conversion the signal was stored to the SD card.

Early in the project a text circuit was planned, however due to the time and resources required to implement the audio recording circuit, it was decided that buying a USB hardware keylogger was a more viable solution to capture keyboard input.  The keylogger records keyboard input and provides a timestamp to allow for synchronization. 

[2010/4/13 2:54:35PM][Pwr]Hello everyone
[2010/4/13 2:55:15PM]the weather outside is nice
[2010/4/13 2:56:33PM]this file is provided by the keylogger
Example .txt file from USB keylogger


SAiNT also requires a battery power supply.  SAiNT utilizes a 9V batter source.  This allows for easy battery changes and is also low cost.  Two voltage regulators were utilized to supply the MSP430 and the keylogger.

 

Software

There were several software approaches that were considered to interface the SAiNT with a user’s personal computer.  The final decision was made to implement a C++ based, cross-platform solution.  The graphical interface was developed with Fast Light Toolkit (FLTK) and the audio playback functionality used irrKlang audio engine.  Both of these packages were open source.  The biggest advantage to this solution was that it did not add any additional cost to SAiNT, since both packages were free to develop with.