Exploring Digital Sonics with USB Hardware

Instructor: Allan Cruse
contact: cruse@usfca.edu



This website documents our development of some classroom materials intended
to support a future course for advanced students in Computer Science which will
investigate hardware-level programming of Universal Serial Bus Host Controllers
such as are commonly found in today's personal computers in order to record and
playback sounds using some inexpensive USB Audio Class peripheral devices.

Familiarity with the Linux operating system and the GNU development tools, and
with the x86-CPU architecture and instruction-set, will be assumed here.

          This page is currently under construction


Systems Software



  • Demo program: ohcitone.cpp illustrates programming of OHCI isochronous transfers to sound a tone -- revised on 10/31/2011
  • Demo program: uhcitone.cpp illustrates programming of UHCI isochronous transfers to sound a tone
  • Demo program: headmike.cpp records 10-second audio with H360 Headset's microphone and OHCI

  • Demo program: makeA440.cpp creates a wavefile (named 'a440.wav') that will sound a 440-HZ tone
  • Demo wavefile: a440.wav plays a pure sinewave tone having a frequency of 440 cycles-per-second


    Last updated on 12/17/2011