VS1010 Application Examples

VS1010 has hardware support for a great number of different devices and interfaces. However, getting them working tiogether will require some amount of customization for each project.

This page shows the currently existing VS1010 application template status. Each template requires some customization. At the very simples, it may mean defining customer-specific USB IDs, and a typical customization contains specifying a customer-specific user interface. Typically VLSI can do these customizations in a few weeks calendar time. Please contact us us for any project you might have to see how to best reach a common goal on them!

The page is divided into three sections:

  • Existing: These templates exist as functional examples, and only needs per-customer customization.
  • To Do: Still need work to be viable templates. If you need a schedule estimate, please contact us.

Existing

These templates exist as functional examples, and only needs per-customer customization.

Legend:
"+" Supported
"-" Needs customer-specific pieces of software

Basic Player

+ Example for how to make a basic MP3 audio player.
+ Easy to read code
+ Demonstration video also available

USB ADC

+ Low latency: 1 ms from I2S to USB. So I2S ADC and computer side buffering are biggest causes of delays.
+ USB audio class.
+ Pure direct: What ever the I2S is giving, it is passed to USB. No controls to accidentally break the signal.
+ DAC monitor: When Samples are going to USB, they are copied to DAC through DAOSET. (-6dB level), leaving stdaudioout for user programs.
+ Modest resource requirements: I 1151, X 234, Y 172 when example stats program compiled, I 964, X 126, Y 172 without stats.
+ 48kHz 16 bit

Ultra low cost LCD FM radio + USB DAC + SD/USB MP3 Player

+ MP3 playback from SD card with incredibly fast indexing (indexes 20,000 mp3 files in about 6 seconds).
- MP3 playback from USB flash, implements USB host.
- USB DAC and USB mass storage modes.
- FM Radio input using low cost FM module.
- 2 stereo line inputs using VS1010 built-in ADC.
- Custom LCD, driven with GPIO pins, no LCD controller needed.
- Real time clock.

Pitch / Speed Shifter

+ Allows independent Pitch and Speed control for playback of MP3 files
+ Applications: DJ usage (pitch and speed), language learning (speed), audio books (speed), karaoke devices (pitch)

Software Decryption Demo

+ Decodes alternatively MP3 audio or complete files
+ Example provided with trivial cipher that can be replaced

MEMs Mic Recorder Example

+ Records 8, 16, or 24kHz IMA ADPCM WAV at 32, 65, or 97kbit/s, respectively
+ Plays back own recordings as well as MP3 files
+ Shows up as Hi-Speed USB Mass Media device to PC for easy file copying
+ Simple user interface for the VS1010 developer board

SD Card Player with USB File Transfer

+ Basic SD card player
+ File update using USB
- Custom user interface can be added with software

G.711 Full-Duplex Intercom

+ Multiple voice channels over shared RS485 link
+ Uses standard G.711 telephone codec
+ Flexible packet based protocol
- Can be extended to use other codecs like MP3
- Can be extended to other data transfer
- Custom user interface can be added with software

SPI Nand Flash Music Player

+ Complete content
+ Firmware update can be done from SD card
+ File read support, no file write support
- Custom user interface can be added with software

USB Flash Music Player

+ File read support from USB memory sticks
- Custom user interface can be added with software

Extended Formats Music Player

+ Standard player (embedded ROM) supports MP3 and WAV files
- External flash can add support for AAC, WMA and OGG
- Code size and CPU load limitations apply
- Requires application review and support agreement with VLSI
- Custom user interface can be added with software

USB SD Card Reader

+ USB Full Speed (12M) and High Speed (480M)
+ Basic functionality included in ROM
- Product level functionality needs custom firmware

USB Serial Port

+ USB Communications Class device
+ Supported in Windows 10, Mac OS, Linux, Android
+ Basic functionality included in ROM
- Product level functionality needs custom firmware

USB GPIO dongle

+ USB Communications Class device
+ 4 inputs and 4 outputs
- More inputs and outputs can be added with software

USB Sound Card

+ USB Audio Class device
+ DAC output, 2 channels
+ 2 inputs and 2 more outputs with external codec (192kHz/24bit planned)
+ Windows, Mac, Linux and Android supported
+ Authentication cable required for iPhone support

MEMS Digital Microphone Applications

+ PCM, DAC and I2S output
+ Supports automatic gain control and compressor/limiter
+ High sensitivity
+ Supports microphone recording to SD card
- Continuous Voice recording, black box applications

PAL Video Player Application

+ Plays composite video using VS23S010 Video DAC
+ Custom file format
+ File format converter available
- NTSC support can be added by software

Microcontroller Mass Storage Bridge Applications

- UART/SPI to SD card
- UART/SPI to USB Flash (VS1010 acts as USB host)
- UART/SPI to USB (VS1010 acts as USB device)

Microcontroller Audio Slave Applications

+ UART controlled music player
+ Can play from many types of memory (SD card, USB flash, NAND flash)
+ MP3/WAV/PCM streaming with DAC output
- AAC, WMA and OGG support possible, needs application review with VLSI

Sound Effect Applications

+ Voltage triggered sound/music player
+ GPIO triggered sound/music player

Real Time Clock Applications

+ Integrated RTC with alarm
- Low power sleep modes
- Custom software can be executed from RTC trigger

Data Logger Applications

- Logging of SAR analog values with time stamps to SD card
- Logging of GPIO values with time stamps to SD card
- UART and SPI ports can be configured to read external devices

LCD Display Applications

+ Supports LCD displays with ST7735B controller
- User interface for simple applications

To Do

These projects still need work to be viable templates. If you need a schedule estimate, please contact us.

LCD User Interface for Music Players

- User interface for 1.77" LCD

Write Support for USB Flash Memories

+ Current driver supports only file reading from USB memory sticks