Gnu Digital Audio Player (GNUdap) is a project to build an userspace
driver to interface with proprietary-protocol usb mp3 players and mass
storage devices. Currently GNUdap supports the CHIC MP10, CHIC MP30,
CHIC Symphony from "Perstel,Inc." and the NGS Jogger from the NGS
GNUdap is also an experiment to test the advantages of a
strongly-typed programming language and of the functional programming
paradigm in hardware developing. In fact GNUdap is developed using the
Objective Caml programming language.
To access the devices, we use camlusb, an ocaml
binding to libusb, wich is an
userspace library to access usb devices.
A shell, which supports the main features of the player, is
provided. Besides being done for linux, unlike the original program
provided with the MP10, this software is interesting because it has
additional features (like being able to transfer mp3's directly to the
pc, and to change the playable status of a file on the DAP), not
present in the official one. A graphical frontend and a filesystem
interface are planned.
To find more informations about the protocol, the driver and the shell
visit the Documentation Page.