| yampp-3/USB |
New Rev. D, with connector for Nokia LCD connector, and with the new FT8U245BM USB chip !
Quick Features:
yampp-3/USB is the new version of the popular yampp-3.
The board layout has been revised with a ground plane, and a USB interface and a switch mode power supply has been added to the board.
The USB interface can be used for downloading songs to the player, but also for new code. There's a bootloader in the CPU that enables code download via the USB link.
It also has a RS-485 interface for connecting the yamppDisplay board (to be featured later) over longer distances. Perfect for the car.
You can use two software variants on the yampp-3/USB player.
One is derived from the old yampp-3 and will play songs from a FAT32 formatted harddisk.
The second software variant uses a new special filesystem for the player and transfer program for the PC that handles playlists, system sounds e.t.c. e.t.c.
The transfer program is called yamppLink and info about how to prepare yourplayer for use with yamppLink can be found here.
| Circuit Description |
yampp-3/USB Block Schematic (click image for large version)
USB
The USB link is controlled by a FT8U245BM chip from FTDI. This is a VERY easy to use USB chip, which
basically looks like a simple 8-bit buffer (hence the name). There's no need for implementing any specific
USB code in the player, to communicate over the USB link, you just read and write data directly to the chip.
Two status pins indicate if there's any data in the receive buffer, and if the transmitter queue is empty.
The USB chip is memorymapped and occupies a single address in the CPU address space.
Some discrete circuitry is added to the USB chip to enable it to startup in the correct mode, and to handle
the power on reset and Soft-Connect feature.
USB Address decoding
To simplify the addressing of the USB interface, it has been memory mapped and the decoding is handled by a
74HC138 address decoder which is used to gate the RD and WR signals to the USB chip depending on the state of address lines A14 and A15.
With this, the USB chip will be located at address 0x8000.
RAM and RAM Address Latch
A standard 32K*8 SRAM helps buffering MP3 frames and texts for the LCD display. As the CPU multiplexes the Data Bus and the
lower 8 Address Bus lines on AD0-AD7, an address latch is required. This is handled by a 74HC573 Latch, which is triggered by
the ALE signal from the CPU.
IDE Interface
A 44-pin 2mm IDE connector interfaces directly to 2 1/2" lap-top hard disks.
To interface to the 16-bit IDE interface,
a special trick has to be used because Port A and C on the CPU is not directly accessible when the CPU is in external memory mode.
So the CPU is used in I/O mode when the IDE interface is used, but first, the addressing of the IDE registers and chip selects is
setup on the address latch, by making a dummy read from an unused address within the address space of the CPU. This latches the
address on the 74HC572 address latch, and the CPU is switched to I/O mode, so Port A and Port C can be used for accessing the 16-bit IDE data.
Power Supply
A switch mode power supply is integrated on the board. It's controlled by a Maxim MAX1626 Step-Down DC-DC controller.
It's a high efficiency (>90%) regulator. The axial 50 uH inductance and a power P-channel FET allows up to about 2 Amps of output
current, enough to drive the player and a 2 1/2" hard disk.
The input is protected against inversed polarity and a transient protection diode is added for protection against surges and spikes in a
automobile environment.
On the board is also a LP2980 3.3V regulator for supplying the VS1001 and the 74LVC245 with 3.3V.
MP3 Decoder
The MP3 decoder is, as on other yampp's the VS1001K chip from VLSI. It's an easy to use decoder with a built in DAC.
It's clocked from a 12.288 MHz crystal, enabling bitrates up to 256k bps. Higher bitrates are possible by changing the crystal.
It also has a built in headphone amplifier.
As the VS1001 is a 3.3V device, a 74LVC245 buffer is used to interface the VS1001 to CPU that's running on 5V. The 74LVC245 is a special
level-converter version of the 74HC245, and have 5V tolerant inputs.
LCD Interfaces
The player have two different LCD interfaces. One is an interface for standard LCD displays with Hitachi HD44780 (or similar) controllers.
Code is written for
2*16 and 4*20 size displays, but can easily be adapted for other formats.
The second interface is for a Nokia 3310 (or similar) 84*48pixel graphic display.
The standard Display Connector also is used for connecting buttons to the player.
Player control Interfaces
The player can be controlled from 3 various sources. 8 keys can be connected to the player and allows up to 16 functions to be controlled.
The player can also be controlled through the IR receiver. A number of IR remote protocols is supported.
And last, but not least, the player can be controlled over one of the serial interfaces. Normally, the RS-232 interface is used and
can be connected to a PC or any other serial teminal.
The RS-485 interface is optional and can be used for connecting the player
to a remote display/control board over long and/noisy distances.
Such a remote display board ( the yamppDisplay ) is under development, and will allow the player to be used with alphanumeric and smaller
graphical displays without any CPU load.
| Pictures |
| Partslist |
Part Value Package ------- -------- --------- R1,R8, R12,R13 10k R0805 R2 470 R0805 R3 47 R080 R4,R7 0.1R 0207/7 R5 5k 23B Trimpot R6 1M R0805 R9,R14, R16 4k7 R0805 R10,R11 15 R0805 R15 1k R0805 R18,R19 27 R0805 R20 1k5 R0805 R24 470 R0805 C1-C4 33pF C0805 C5-C7 10uF/16 ELNA_RV2_4 C9,C10 100uF/10 ELNA_RV2_63 C8,C11-C17, C20-C22, C24-C27 100nF C0805 C18 220uF E5-10,5 OS-CON * C19 47uF E3,5-8 OS-CON * C23 470nF C3225 C28,C29 1uF/16 CT3216 D1,D5 EL17-21 LED0805 D2 PRLL5818 SOD87 D3 LL4004 SOD87 D4 SM15T15A SOD15 D6 BAS32 SOD80 IC1 ATmega161 TQFP44 IC2 74HC573 SO20L IC3 62256 SO28L IC4 MAX202CSE SO16 IC5 LP2980 M5 IC6 74LVC245 SO20L IC7 VS1001 SOIC-28 IC8 74HC138D SO16 IC9 MAX1626ESA SO8 IC10 DS1813R SOT23 IC11 FT8U245BM QFP32 IC12 MAX481CSA SO08 J1 PROG 5*2 0.1" header J2 DISPLAY 8*2 0.1" header J3 RS-232 3*1 0.1" header J4 IR 3*1 0.1" header J5 POWER 2*1 0.1" header J6 Headphones 3.5mm Jack J7 ATA_IF 44pin 2mm IDE Conn J8 USB Harting USB-Conn J9 NOKIA LCD 8*2 2mm connector L1,L2 10u L1210 L3 22uH HM50 Q1 7.3728 MHz HC49U-V Q2 12.288 MHz HC49U-V Q3 6MHz MURATA_CST S1 RESET ALPS_45 T1 MTD20P03HDL DPAK* = SANYO Organic low-ESR. Important ! |
| Schematic |
| Testing the player |
| Downloads |
The yamppLink application has it's own page.
You can order the PCB, kits or assembled boards for this project at the yampp Web Shop.