Cantante - a TCP/IP standalone MP3 player

In January 1999, I started working on a project for home that involves playing MP3s through ethernet to a dedicated embedded device. With a little work and some motivation, ``Cantante'' is the result of things.

Without going into too much boring detail, Cantante is a small (5"x7") board with a CPU, Flash, DRAM, ethernet hardware, and a STA013 MP3 decoder. The device has no hard drive. It connects directly to an amplifier and ethernet. All the MP3s are sourced from a common Linux box with a big 'ole hard drive. This is nice because the hardware costs are minimized and I can keep all my MP3s in one place and at the same time, have multiple players around the house spooling off audio.

Source code
Note: I'm more than interested in redesigning the hardware to be smaller and more cost-effective, but I don't have the time right now to do it on my own. If someone else is willing to help out, please volunteer. Ideally, it would come together and be sold (at cost) to interested people. I would then release the source code and watch it develop even more.
i2c.c STA013 initialization and routines.
i2c.h Header file.

This is the device. The small daughter board is a DAC board. Both boards are custom built. Casey Smith did the DAC board.

The Java Swing applet used to control Cantante is below.
The top part is the Playlist Editor section and the bottom contains the Song Chooser.

Status page (captured from Netscape):

Playlist page (captured from Netscape):

Palm applet used to control Cantante through a Palm Computing Device (using a custom serial RF transmitter that attaches to the Palm's butt-plug:


Copyright (c) 2000 Jake Janovetz