Marmoset Microphone System

Marmoset Microphone System
A common marmoset (Callithrix jacchus).
A common marmoset (Callithrix jacchus). Picture by Carmem A. Busko.
Used under the Creative Commons Attribution 2.5 Generic license.

Project Overview

The goal of this project is to design and produce a small, leightweight recording device that can be embedded in a collar and attached to a marmoset. This device would then record the noises made by the marmoset and others near it, allowing researchers to observe their social interactions in a natural setting. This is very difficult to accomplish without a collar, as marmosets live in the treetops of Brazil, and often run around looking for food. This makes it very difficult to collect data with a stationary recorder or by the researched with a protable recorder. A sample spectrogram of marmoset vocalizations, courtesy of Dr. Ross Snider:
Vocalization Spectrograms
1-4: Phee Calls
5: Trill-Phee Call
6-9: Trill Calls
10-14: Twitter Calls
15: Twitter-Phee Call
16-10: Other Calls


Project Design

The design will be implemented in hardware using a custom PCB and an Altera MaxII CPLD. The audio frontend will be handled using a Wolfson WM8731 audio codec controlled using an IIC bus interface. Sampled data will be buffered in the CPLD and then written to a high capacity microSD card over an SPI interface. An automatic gain controller implemented in the CPLD will adjust the microphone gain setting in the codec to ensure that the entire range of the analog to digital converter is used, but not saturated.

The hardware implemented in the CPLD will consist of three main functional blocks: the audio codec interface, the flash memory interface, and the buffering interconnect between the codec and flash. These blocks are in turn comprised of sub-blocks. The audio codec will be composed of an IIC bus module, a state machine to initialize the codec settings, and the automatic gain controller. The buffering interconnect will consist of a shift register on the serial interface input from the audio codec and a dual access ring buffer to queue the data before writing it to flash. The flash interface will consist of an open source SD card access module, a state machine to control the write module and to pull data from the ring buffer.

A functional system diagram is shown below.
System Architecture

Design Team

Andrew Shull
Adam Hutter
Lukas Feyh
Faculty Advisor: Ross Snider
Project Sponser: Cory Miller, Psychology Department, UC San Diego