VS10XX Patches

These are binary patch files that can easily be loaded to the memory of your VS10XX by a microcontroller to fix known firmware bugs. Also, in some cases the patch set adds new functionality (example: FLAC decoding for VS1053b). For best quality and robustness, it is highly recommended to always run the appropriate patch set.

The patches, particularly for the VS1053b and VS1063a, are updated as soon as new bugs or unwanted features are discovered and solved. So, don't forget to check every once in a while if a newer patch version exists for your VS10xx IC of choice!


VS1063a Patches

  • Contains fixes for the following known VS1063a problems:
    • MP3 Encoding: occasional high-pitch noises (wrong Huffman code generated from one encoding table).
    • Small chance that samplerate will be incorrect for mp4 audio.
    • Encoding: monitoring volume can stay muted (esp. with 48kHz rate)
    • Codec mode without headers has incorrect playback rate and no sound output in linear PCM mode.
    • ADMixer, Encoding: channels may get swapped if encoding or ADMixer started multiple times without hardware reset.
    • MP3 Encoding: highest used band (13-16kHz) can get intermittently suppressed. Sometimes noise can be heard in the high frequencies.
    • FLAC decoding did not set DO_NOT_JUMP
    • Faster HDAT0 / HDAT1 handling in encode/codec mode
    • Some mp4 files did not play. ADTS could stop playing on errors (if DSE before audio element). Improvements to AAC short frame support.
    • AEC fixes (see separate application note).
    • DRC disabled, patch pending.
    • Mono downmix mode fixed.
  • Contains additional functions and features:
    • Exact 44100kHz / 22050Hz / 11025Hz samplerate recording made possible
    • 16kHz and 32kHz now supported in codec mode.
    • Simple LATM/LOAS parser.
    • ALAC decoder - experimental
    • 15/16 Resampler to allow finetuning of 48kHz rate with 12.288MHz clock.
    • MP4-DASH support
    • Experimental FLAC encoding
    • Detection of ID3v2 tag
    • A variant which includes spectrum analyzer

Version: 2.5
Modified: 2019-12-04
Devices: VS1063a
Download: vs1063a-patches-250.zip
Document: vs1063a-patches.pdf

VS1053b Patches w/ FLAC Decoder

  • Five versions of the patch included. With and without LATM/LOAS parser and with and without a FLAC (Free Lossless Audio Codec) decoder (1-2 channels, up to 24 bits, up to 48kHz) decoder, and with a pitch/tempo shifter.
  • VU meter (now with 1dB resolution) and other features, see the full list from the document.
  • Patches, among other things, the following:
    • AAC: Unused data at the start of the mdat atom in MP4 is now skipped. (Some NERO versions generated extra data there.)
    • HE-AAC: When parametric stereo (PS) is active, PS header frame was required to be present in the first encountered SBR frame or the decoding could crash. This patch fixes the problem.
    • Vorbis: Removes an occasional windowing overflow from Vorbis decoding and thus increases playback quality.
    • Ogg: Enables playing of Ogg streams that have the highest bit set in the stream number.
    • IMA ADPCM: Enables also data transfer when IMA encoding mode is started.
    • AAC: PNS of left channel could get corrupted during transition frames.
    • AAC: crc now ignored correctly for ADTS format files.
    • AAC: MP4 fixes.
    • FLAC: sets DO_NOT_JUMP during header.
    • HE-AACv2: slightly faster decoding.
  • Also contains the functionality of the old "VS1053b Ogg Vorbis Decoder Patch": sample counter and sample rate fine tuning.
  • 15/16 Resampler allows samplerate tuning 'above 48kHz' even with 12.288MHz XTALI. Now can be automatically enabled only for 48kHz.
  • ID3 tag parser skips the tag data, so that binary data inside the tag is not erroneously interpreted as audio.
  • Can disable zero-sample insertion when out of stream data.
  • Experimental DSD64 decoder (.dff and .dsf)
  • Mono downmix mode for encoding.

Version: 2.9
Modified: 2020-10-03
Devices: VS1053b
Download: vs1053b-patches290.zip
Document: vs1053b-patches.pdf

VS1003 DAC Mono Patch

  • Plays audio data in mono.

Version: 1.0
Modified: 2020-06-05
Devices: vs1003b
Download: vs1003dacmono.zip, Document: dacpatch.pdf.

WAVFix Patch

  • Adds skipping of unknown chunks to the WAV (RIFF) parser.
  • Is not compatible with the MPEG2.0 Layer 2 Patch (vs1011e) or MPEG2.5 Layer-3 8kHz Stereo Patch (vs1003b).

Version: 1.0
Modified: 2013-05-23
Devices: VS1011e, VS1003b
Download: wavfix10.zip
Document: wavfix.pdf

VS1053b Realtime MIDI Start code

  • Starts the real-time MIDI mode with a few SCI writes.
  • See also RTMIDI Application for improved features.

Version: 1.0
Modified: 2009-01-12
Devices: VS1053b
Download: vs1053b-rtmidistart.zip

VS1033d Patches Package

  • Combines the separate VS1033d patches
  • AAC: Unused data at the start of the mdat atom in MP4 is now skipped. (Some NERO versions generated extra data there.)
  • The new full-accuracy mp3 decoder in VS1033d clears already decoded frequency bands if bits run out during Huffman decoding. With patch does not regard bits running out in Huffman decode as an error.

Version: 1.10
Modified: 2011-02-02
Devices: VS1033d
Download: vs1033d-patches110.zip
Download: vs1033d-patches.pdf

VS1103b Traditional Patch

  • Makes transitioning from VS1003b to VS1103b easier by making VS1103b register interface more similar to VS1003b

Version: 1.02
Modified: 2014-07-24
Devices: VS1103b
Download: vs1103b_trad_102.zip
Download: vs1103_trad_patch.pdf

VS1033d Layer 3 Patch

  • The new full-accuracy mp3 decoder in VS1033d clears already decoded frequency bands if bits run out during Huffman decoding.
  • With patch does not regard bits running out in Huffman decode as an error.

Version: 1.0
Modified: 2008-08-15
Devices: VS1033d
Download: mp3fix100.zip

VS1003b WMA Webcast / Rewind Patch

  • Makes WMA Rewind/Fast forward easier by improving the resynchronization code that finds the ASF packet boundaries automatically.
  • WMA file contents does not need to be modified anymore!
  • Reads Audio Media information also inside a Header Extension Object.
  • If Data Object size is zero, enters broadcast mode that ignores file size.
  • Automatically enters broadcast mode (ignores file size) when resync performed.
  • Decreases the required transfer rate for files that have a lot of padding or unused bytes.
  • wmawebcast.pdf

Version: 0.9
Modified: 2008-04-22
Devices: VS1003b
Download: vs1003B-WMA-webcast090.zip

VS1053b IMA ADPCM Encoder Fix

  • When IMA encoding mode is started, monitoring works, but encoded data transfer never starts.
  • This patch fixes the problem.

Version: 1.10
Modified: 2017-11-17
Devices: VS1053b
Download: vs1053b-imafix110.zip

VS1033c WMA Resync Patch

  • Makes WMA Rewind/Fast forward easier by improving the resynchronization code that finds the ASF packet boundaries automatically.
  • Automatically enters broadcast mode (ignores file size) when resync performed.
  • Also disables AAC dynamic range control (DRC) to help AAC rewind.
  • Can be used with other VS1033c patches (except Pitch Shifter and RT-MIDI application).
  • wmaresync.pdf

Version: 1.10
Modified: 2008-02-22
Devices: VS1033c
Download: vs1033c-wmaresync110.zip

MPEG2.0 Layer 2 Patch

  • Patch is not required if layer I/II support is not enabled.
  • Enables halfrate (24000Hz, 22050Hz, and 16000Hz) MP2 files.
  • Improves layer II decoding accuracy in VS1033c and VS1011e.

Version: 1.2
Modified: 2008-08-25
Devices: VS1011e, VS1033b, VS1033c
Download: layer2patch120.zip

MPEG2.5 Layer-3 8kHz Stereo Patch

  • Corrects decoding problems with 8kHz stereo files.

Version: 1.1
Modified: 2005-04-09
Devices: VS1002d, VS1003b
Download: mp3_8kHz_patch11.zip

VS1002d ADPCM Recording Patch

  • Improves VS1002d's firmware to allow better quality ADPCM recording

Version: 1.00
Modified: 2004-09-23
Devices: VS1002d
Download: vs1002d_adpcm_100.zip