Releases: xmos/sw_usb_audio
Releases · xmos/sw_usb_audio
v9.0.0
-
ADDED: app_usb_aud_xk_316_mc: 2AMi16o16xxxaax_tdm8 build config (ADAT
Rx/Tx, TDM master) -
CHANGED: Extracted the board setup code from audiohw.xc to a new library:
lib_board_support -
CHANGED: DFU_PID defined in the xua_conf of the example applications
-
CHANGED: User Guide to have xcommon_cmake as the documented build flow
-
Changes to dependencies:
-
lib_adat: 1.2.0 -> 2.0.1
- CHANGED: Documentation updated
- ADDED: "adat.h" header file provided access to both transmit and
receive API - CHANGED: Receive API now uses streaming chanend (breaking change)
- CHANGED: Documentation updates
- CHANGED: Examples now build using XCommon Cmake build system
-
lib_board_support: Added dependency 1.1.1
- CHANGED: Documentation improvements
- REMOVED: Dependency of examples on lib_i2s
-
lib_dsp: Removed dependency
-
lib_i2s: 5.1.0 -> 6.0.1
- CHANGED: Documentation updated
- REMOVED: Support for XS1 - Please design with xcore.ai for new projects
- REMOVED: I²S non "frame" API (superseded by more efficient frame
versions) - CHANGED: Use XCommon-CMake and use in examples/tests
- CHANGED: Examples ported to XK-AUDIO-316-MC board (was XK-AUDIO-216-MC)
- CHANGED: Examples use lib_board_support instead of custom hardware setup
-
lib_locks: 2.2.0 -> 2.3.1
- CHANGED: Documentation updates
- CHANGED: Build using XCommon CMake instead of xcommon
-
lib_logging: 3.2.0 -> 3.3.1
- CHANGED: Documentation updates
- CHANGED: Build applications using XCommon CMake instead of XCommon
-
lib_mic_array: 4.6.0 -> 5.4.0
- CHANGED: All examples now build under XCommon CMake build system
- ADDED: Will build without errors for XS2 targets but no API available
- DEPRECATED: Previously used custom CMake build support. This will be
removed in future versions. Please use XCommon CMake build system as
provided in XTC 15.3.0 onwards for new projects. - FIXED: Vanilla configuration now compiles correctly under XTC 15.3.0
- ADDED: Support for XCommon CMake build system
- Added 48 kHz decimator design script
- Added documentation to cover 32 kHz and 48 kHz deciamtors
- Added 16ch de-interleave to support 16 DDR mics on a single 8b port
- Added parallel decimation use example
- Fixed documentation generation issues
- Improved default audio filter. Reduces noise floor and improves alias
attentuation - Changed DCOE filter to increase attenuation below 20 Hz
- Documentation improvements.
- Updates lib_mic_array to use lib_xcore_math (formerly lib_xs3_math)
version 2.0.2 - Updates CMake project to use CPM to obtain dependencies (when top level
project) - [issue #171] Changes behavior when mic array consumer gets backed up
from a quiet deadlock to an ECALL exception - Also adds a way to allow blocks of PDM to be quietly dropped instead
(see AssertOnDroppedBlock()) - Mic Array library redesigned from scratch to make efficient use of XMOS
XS3 architecture - Many unused features from previous versions have been dropped
- Initial v5.0 features:
- Supports 1-, 4-, and 8-bit ports
- Supports both SDR and DDR microphone configurations
- Use 1-16 PDM microphones
- Configurable PDM clock frequency
- Configurable two-stage decimating FIR
- Reference filter with total decimation factor of 192 provided
- Optional DC offset elimination filter
- Configurable frame size (down to single sample)
- Extensible C++ design
-
lib_spdif: 6.1.0 -> 6.2.1
- CHANGED: Documentation updated
- CHANGED: Use XCommon CMake for examples and tests
- CHANGED: Use lib_sw_pll for configuring the application PLL in
examples - FIXED: Supressed warnings regarding taking the address of a resource
handle
-
lib_sw_pll: 2.2.0 -> 2.3.1
- CHANGED: Documentation updates
- FIXED: Added missing <xs1.h> include
- CHANGED: Updated pll_calc script to separate out integer and fractional
divider values for easier user interpretation - CHANGED: Improved PLL solution selection in app_pll_model to ensure
sufficient positive and negative range from nominal frequency - CHANGED: Uses Xcommon Cmake instead of custom Cmake
- FIXED: Python models and test type error on later numpy versions
-
lib_xassert: 4.2.0 -> 4.3.1
- CHANGED: Documentation updates
- CHANGED: Build examples and tests using XCommon CMake instead of XCommon
- CHANGED: Run tests using pytest
-
lib_xcore_math: Added dependency 2.3.0
- Changes examples and tests to build using XCommon CMake
-
lib_xua: 4.1.0 -> 5.0.0
- ADDED: Support for DFU 1.1 DFU_DETACH with bitWillDetach set to 1
- ADDED: Enumerate with the DFU interface as WINUSB compatible. This
is done by updating the bcdUSB version to 2.01 and providing the BOS and
MSOS2.0 descriptors listing WINUSB compatibility at enumeration - ADDED: Support for XMOS_DFU_REVERTFACTORY arriving as a
USB_BMREQ_H2D_VENDOR_INT request to work with the latest Thesycon DFU
driver on Windows - ADDED: Support for building the xmosdfu application on MacOS arm64
- ADDED: MIDI support with UAC1.0
- ADDED: DFU support with UAC1.0
- CHANGED: By default, enumerate with iSerialNumber set to None(0) in
the device descriptor - CHANGED: xmosdfu app to use DFU_DETACH
- CHANGED: xmosdfu app to send XMOS_DFU_REVERTFACTORY as
bmRequestType.Type = Vendor - CHANGED: xmosdfu app command line for specifying runtime and DFU mode
PIDs - CHANGED: Limit HS_STREAM_FORMAT_OUTPUT_1/2/3_MAXPACKETSIZE to 1024
bytes to fix bcdUSB version 2.01 USB device supporting a sampling rate
of 192KHz not enumerating on Windows - CHANGED: Added default value (1) for XUA_QUAD_SPI_FLASH
- CHANGED: Default value of FLASH_MAX_UPGRADE_SIZE to 512 KB
- CHANGED: Build examples using XCommon CMake instead of XCommon
- CHANGED: AN00248 now targets XK-EVK-XU316 and uses mic_array version 5
(new API) - CHANGED: Examples use lib_board_support for XK-AUDIO-316-MC-AB support
code - CHANGED: Master clock port no longer used if not required, for example
when using I2S slave with USB disabled - FIXED: Build issue when XUA_NUM_PDM_MICS > 0
- FIXED: baInterfaceNr field in MIDI Class-specific AC Interface
Descriptor to specify the correct MIDI streaming interface number - REMOVED: Support for PDM mics for xcore-200 targets
- CHANGED: lsats instruction used for saturation in the mixer
- CHANGED: Mixer task communication scheme simplified, aiding code reuse
& performance - CHANGED: Audio Class Control Interface no longer presented in
descriptors if NUM_USB_CHAN_IN and NUM_USB_CHAN_OUT are both zero - CHANGED: Buffering sub-system no longer spawns if NUM_USB_CHAN_IN and
NUM_USB_CHAN_OUT are both zero - CHANGED: Communication of commands between tasks now uniformly uses
control tokens. Potentially making mix & match of components more
tractable in the future
-
lib_xud: 2.3.1 -> 2.4.0
- CHANGE: Documentation updates
- CHANGE: Examples now build using xcommon-cmake build system (was
xcommon) - CHANGE: AN00129 is now the main library usage example - renamed
app_hid_mouse - REMOVED: AN00124 - now maintained as a separate application note
- REMOVED: AN00125 - now maintained as a separate application note
- REMOVED: AN00126 - now maintained as a separate application note
- REMOVED: AN00127 - now maintained as a separate application note
- REMOVED: AN00131 - now maintained as a separate application note
- REMOVED: AN00132 - now maintained as a separate application note
- REMOVED: AN00135 - now maintained as a separate application note
- REMOVED: AN00136 - now maintained as a separate application note
- CHANGE: RX_RISE_DELAY for XS2A based devices to resolve intermittent
transmit timing issues
-
v8.1.0
- ADDED: 2AMi18o18mssaax build config (MIDI, SPDIF Rx/Tx & ADAT Rx/Tx)
- ADDED: 2AMi16o16xxxaax build config (ADAT Rx/Tx)
- ADDED: 2AMi8o8mxxxxx build config (MIDI)
- CHANGED: Use lib_sw_pll code for configuring the application PLL
- FIXED: Use correct number of flash pages for XK-AUDIO-316-MC
- FIXED: Links to usb.org in documentation
- Changes to dependencies:
- lib_adat: 1.1.0 -> 1.2.0
- CHANGED: example applications now run on xcore.ai hardware
- CHANGED: example applications build using XCommon CMake
- lib_sw_pll: 2.1.0 -> 2.2.0
- FIXED: Enable PLL output after delay to allow it to settle
- FIXED: Fixed frequency settings for 11,289,600Hz
- lib_xua: 4.0.0 -> 4.1.0
- ADDED: MIDI unit and sub-system tests
- CHANGED: Only the minimum number of ADAT input formats are enabled
based on the supported sample rates - CHANGED: Enabling ADAT tx enables different channel count interface
alts, based on sample rate - CHANGED: Input audio buffer size and the exit condition underflow
modified to to fix buffer underflow in some configurations - CHANGED: CT_END token based handshake in MIDI channels transactions,
reducing opportuninity for deadlock - FIXED: Device fails to enumerate when ADAT and S/PDIF transmit are
enabled - FIXED: Update software PLL at the correct rate for ADAT S/MUX
- FIXED: Incorrect internal input EP count for input only devices
- FIXED: Samples transferred to ADAT tx too frequently in TDM mode
- FIXED: S/MUX not initialised to a value based on DEFAULT_FREQ in
clockgen - FIXED: Trap when moving to DSD mode on XS3A based devices
- lib_adat: 1.1.0 -> 1.2.0
v8.0.0
- ADDED: Support for XCommon CMake build system
- CHANGED: Windows control app now take GUID via a -g option, accommodating
latest Thesycon driver packages - CHANGED: app_usb_aud_xk_316_mc defaults to using xcore.ai AppPLL for
master clock generation when syncing to digital streams or in USB sync mode,
rather than the external CS2100 device - CHANGED: UserBufferManagmentInit() implementations updated to match API
change in lib_xua (now takes a sample rate value) - CHANGED: app_usb_aud_xk_316_mc: Improvements in interaction with on-board
power control circuitry - Changes to dependencies:
- lib_adat: 1.0.1 -> 1.1.0
- ADDED: Support for XCommon CMake build system
- lib_dsp: 6.2.1 -> 6.3.0
- ADDED: Support for XCommon CMake build system
- lib_i2c: 6.1.1 -> 6.2.0
- ADDED: Support for XCommon CMake build system
- REMOVED: Unused dependency lib_logging
- lib_i2s: 5.0.0 -> 5.1.0
- ADDED: Support for XCommon CMake build system
- RESOLVED: Added missing shutdown feature to i2s_frame_slave
- FIXED: Allow input and output ports in the 4-bit port implementation to
be nullable - FIXED: Behaviour of the restart_check() callback function in the example
applications - REMOVED: Unused dependency lib_logging
- ADDED: Frame synch error field in i2s_config_t for I2S slave
- lib_locks: 2.1.0 -> 2.2.0
- ADDED: Tests now run on xcore.ai as well as xcore-200
- ADDED: Support for XCommon CMake build system
- lib_logging: 3.1.1 -> 3.2.0
- ADDED: Support for XCommon CMake build system
- lib_mic_array: 4.5.0 -> 4.6.0
- ADDED: Support for XCommon CMake build system
- lib_spdif: 5.0.1 -> 6.1.0
- ADDED: Support for XCommon CMake build system
- ADDED: Support for transmit at 32kHz
- RESOLVED: Coding optimisations not properly enabled in receiver
- RESOLVED: Receiver timing issues for sample rates greater than 96kHz
- RESOLVED: Failure to select correct receive sample rate when the sample
rate of the incoming stream changes - ADDED: Shutdown function for S/PDIF transmitter
- CHANGED: Receiver rearchitected for improved performance and jitter
tolerance - CHANGED: API function names updated for uniformity between rx and tx
- lib_sw_pll: Added dependency 2.1.0
- ADDED: Support for XCommon CMake build system
- ADDED: Reset PI controller state API
- ADDED: Fixed frequency (non phase-locked) clock PLL API
- FIXED: Init resets PI controller state
- FIXED: Now compiles from XC using XCommon
- ADDED: Guard source code with XS3A to allow library inclusion in
non- xcore-ai projects - CHANGED: Reduce PLL initialisation stabilisation delay from 10 ms to 500
us - ADDED: Split SDM init function to allow separation across tiles
- FIXED: Use non-ACK write to PLL in Sigma Delta Modulator
- lib_xassert: 4.1.0 -> 4.2.0
- ADDED: Support for XCommon CMake build system
- lib_xua: 3.5.1 -> 4.0.0
- ADDED: Support for XCommon CMake build system
- FIXED: Output volume control not enabled by default when MIXER
disabled - FIXED: Full 32bit result of volume processing not calculated when
required - FIXED: Input stream sending an erroneous zero-length packet when
exiting underflow state - FIXED Build failures when XUA_USB_EN = 0
- FIXED: Clock configuration issues when ADAT and S/PDIF receive are
enabled (#352) - FIXED: Repeated old S/PDIF and ADAT samples when entering underflow
state - CHANGED: QUAD_SPI_FLASH replaced by XUA_QUAD_SPI_FLASH (default: 1)
- CHANGED: UserBufferManagementInit() now takes a sample rate parameter
- CHANGED: xcore.ai targets use sigma-delta software PLL for clock
recovery of digital Rx streams and synchronous USB audio by default - CHANGED: Windows host mixer control application now requires driver
GUID option
- lib_xud: 2.2.3 -> 2.3.1
- FIXED: XS3A based devices not responding to IN packets in SE0_NAK
test mode - ADDED: XMOS proprietary test mode XMOS_IN_ADDR1
- ADDED: Support for XCommon CMake build system
- CHANGE: Removed definition and use of REF_CLK_FREQ in favour of
PLATFORM_REFERENCE_MHZ from platform.h - FIXED: Do not include implementations of inline functions when
XUD_WEAK_API is set
- FIXED: XS3A based devices not responding to IN packets in SE0_NAK
- lib_adat: 1.0.1 -> 1.1.0
v7.3.1
v7.3.0
- ADDED: Support for 12.288MHz 11.2896MHz to xcore.ai AppPLL master clock
options - CHANGED: app_usb_aud_xk_316_mc: Respect XUA_I2S_N_BITS when configuring
external audio hardware - FIXED: app_usb_aud_xk_316_mc: DAC settings not configured when sample
rate is lower than 48kHz - Changes to dependencies:
- lib_spdif: 4.2.1 -> 5.0.1
- FIXED: Reinstated graceful handling of bad sample-rate/master-clock
pair - CHANGED: Updated examples for new XK-AUDIO-316-MC board
- CHANGED: Updated transmit to simplified implementation (note, no
longer supports XS1 based devices) - CHANGED: Removed headers SpdifReceive.h and SpdifTransmit.h. Users
should include spdif.h
- FIXED: Reinstated graceful handling of bad sample-rate/master-clock
- lib_xua: 3.4.0 -> 3.5.0
- ADDED: Configurable word-length for I2S/TDM via XUA_I2S_N_BITS
- ADDED: Support for statically defined custom HID descriptor
- CHANGED: Rearranged main() such that adding custom code that uses
lib_xud is possible - CHANGED: bNumConfigurations changed from 2 to 1, removing a
work-around to stop old Windows versions loading the composite driver - FIXED: Memory corruption due to erroneous initialisation of mixer
weights when not in use (#152) - FIXED: UserHostActive() not being called as expected (#326)
- FIXED: Exception when entering DSD mode (#327)
- lib_xud: 2.2.2 -> 2.2.3
- FIXED: XUD_UserSuspend() and XUD_UserResume now properly marked as
weak symbols (#374) - FIXED: Incorrect time reference used during device attach process
(#367)
- FIXED: XUD_UserSuspend() and XUD_UserResume now properly marked as
- lib_spdif: 4.2.1 -> 5.0.1
v7.2.0
- ADDED: Driver information section to documentation
- CHANGED: AppPLL settings updated to reduce jitter (#112)
- CHANGED: app_usb_aud_316_mc: Improved DAC configuration sequencing
following datasheet recommendations - CHANGED: app_usb_aud_316_mc: Manual DAC setup rather than using
auto-config to improve output quality (internal PLL no longer used) - FIXED: app_usb_aud_316_mc: Intermittent output from DACs due to DAC
auto-standby (#110) - FIXED: app_usb_aud_216_mc: Define app defaults ahead of lib_xua defaults
- Changes to dependencies:
- lib_xua: 3.3.1 -> 3.4.0
- ADDED: Unit tests for mixer functionality
- ADDED: Host mixer control applications (for Win/macOS)
- CHANGED: Small tidies to mixer implementation
- CHANGED: Improved mixer control channel communication protocol to
avoid deadlock situations - CHANGED: By default, output volume processing occurs in mixer task, if
present. Previously occurred in decouple task - CHANGED: Some optimisations in sample transfer from decouple task
- FIXED: Exception on startup when USB input disabled
- FIXED: Full 32bit volume processing only applied when required
- FIXED: Setting OUT_VOLUME_AFTER_MIX to zero now has the expected
effect
- lib_xud: 2.2.1 -> 2.2.2
- FIXED: Syntax error when including xud.h from C
- CHANGE: Various API functions optionally marked as a weak symbol
based on XUD_WEAK_API
- lib_xua: 3.3.1 -> 3.4.0
v7.2.0rc0
- ADDED: Driver information section to documentation
- CHANGED: AppPLL settings updated to reduce jitter (#112)
- CHANGED: app_usb_aud_316_mc: Improved DAC configuration sequencing
following datasheet recommendations - CHANGED: app_usb_aud_316_mc: Manual DAC setup rather than using
auto-config to improve output quality (internal PLL no longer used) - FIXED: app_usb_aud_316_mc: Intermittent output from DACs due to DAC
auto-standby (#110) - FIXED: app_usb_aud_216_mc: Define app defaults ahead of lib_xua defaults
- Changes to dependencies:
- lib_xua: 3.3.1 -> 3.4.0
- ADDED: Unit tests for mixer functionality
- ADDED: Host mixer control applications (for Win/macOS)
- CHANGED: Small tidies to mixer implementation
- CHANGED: Improved mixer control channel communication protocol to
avoid deadlock situations - CHANGED: By default, output volume processing occurs in mixer task, if
present. Previously occurred in decouple task - CHANGED: Some optimisations in sample transfer from decouple task
- FIXED: Exception on startup when USB input disabled
- FIXED: Full 32bit volume processing only applied when required
- FIXED: Setting OUT_VOLUME_AFTER_MIX to zero now has the expected
effect
- lib_xud: 2.2.1 -> 2.2.2
- FIXED: Syntax error when including xud.h from C
- CHANGE: Various API functions optionally marked as a weak symbol
based on XUD_WEAK_API
- lib_xua: 3.3.1 -> 3.4.0
v7.1.0alpha0
- ADDED: Build configs for synchronous mode (uses external CS2100 device)
- ADDED: app_usb_aud_xk_316_mc: Build configs for xCORE as I2S slave
- CHANGED: app_usb_aud_xk_316_mc: Core voltage reduced to 0.9v (was 0.922v)
- CHANGED: Seperated build configs into build-tested, partially-test and
fully-tested - CHANGED: Documentation updates (note, "Design Guide" now "User Guide")
- Changes to dependencies:
- lib_adat: 1.0.0 -> 1.0.1
- Removed duplicate header file
- lib_i2s: 4.3.0 -> 5.0.0
- ADDED: Support for I2S data lengths less than 32 bit.
- ADDED: Implementation allowing use of a 4-bit port for up to 4
simultaneous streaming inputs or outputs.
- lib_spdif: 4.1.0 -> 4.2.1
- CHANGED: Documentation updates
- ADDED: Added shutdown function for S/PDIF Receiver
- CHANGED: spdif_tx_example updated to use XK-AUDIO-216-MC
- lib_xua: 3.2.0 -> 3.3.1
- CHANGED: Documentation updates
- CHANGED: Define ADAT_RX renamed to XUA_ADAT_RX_EN
- CHANGED: Define ADAT_TX renamed to XUA_ADAT_TX_EN
- CHANGED: Define SPDIF_RX renamed to XUA_SPDIF_RX_EN
- CHANGED: Define SELF_POWERED changed to XUA_POWERMODE and associated
defines - CHANGED: Drive strength of I2S clock lines upped to 8mA on xCORE.ai
- CHANGED: ADC datalines sampled on falling edge of clock in TDM mode
- CHANGED: Improved startup behaviour of TDM clocks
- FIXED: Intermittent underflow at MAX_FREQ on input stream start due
to insufficient packet buffering - FIXED: Decouple buffer accounting to avoid corruption of samples
- lib_xud: 2.1.0 -> 2.2.1
- FIXED: Control endpoint ready flag not properly cleared on receipt
of SETUP transaction (#356) - CHANGE: Further API functions re-authored in C (were Assembly)
- CHANGE: Endpoints marked as Disabled now reply with STALL if the host
attempts to access them, previously they would NAK (#342) - FIXED: Exception if host accesses an endpoint that XUD believes to
be not in use - FIXED: Timeout event properly cleaned up after tx handshake received
(#312) - FIXED: A control endpoint will respect the halt condition for OUT
transactions when marked ready to accept SETUP transactions (#339) - FIXED: USB Disconnect on self-powered devices intermittently causing
Iso EP's to be set to not-ready indefinitely (#351)
- FIXED: Control endpoint ready flag not properly cleared on receipt
- lib_adat: 1.0.0 -> 1.0.1
v7.0.0alpha0
- ADDED: Application for XK-AUDIO-316-MC hardware
- ADDED: Support for XTC Tools 15
- CHANGED: Removed apps for deprecated hardware
- CHANGED: HID implementation for MC audio board buttons
- CHANGED: Moved from using sc_ repos to lib_ repos (see dependency changes
below) - FIXED: Need to drive VBUS_OUT low on xCORE-200 MC AUDIO board (#17697)
- Changes to dependencies:
- lib_adat: Added dependency 1.0.0
- Initial release
- lib_device_control: Removed dependency
- lib_dsp: Added dependency 6.2.1
- CHANGED: Jenkinsfile used for CI
- lib_i2c: Added dependency 6.1.1
- RESOLVED: Fixed timing for repeated START condition
- lib_i2s: Added dependency 4.3.0
- CHANGED: Use XMOS Public Licence Version 1
- lib_locks: Added dependency 2.1.0
- CHANGED: Use XMOS Public Licence Version 1
- lib_logging: 2.0.1 -> 3.1.1
- CHANGED: Jenkinsfile used for CI
- CHANGED: Use XMOS Public Licence Version 1
- REMOVED: not necessary cpanfile
- CHANGED: Pin Python package versions
- CHANGED: Build files updated to support new "xcommon" behaviour in xwaf.
- CHANGE: Test runner script now terminates correctly on Windows
- ADDED: Now supports the %p format specifier
- CHANGE: Ignore the case of the format specifiers
- CHANGE: Ignore padding and alignment characters
- lib_mic_array: 2.0.1 -> 4.5.0
- REMOVED: Use of Brew for CI
- CHANGED: XMOS Jenkins Shared Library version used in CI
- CHANGED: XN files to support 15.x.x tools
- CHANGED: Use XMOS Public Licence Version 1
- FIXED: Compiler warnings when MIC_DUAL_ENABLED is not defined
- CHANGED: Pin Python package versions
- REMOVED: not necessary cpanfile
- CHANGED: Jenkinsfile pinned to Jenkins shared library 0.10.0
- CHANGED: Updated the minimum version of libraries this library depends
upon. - ADDED support for global define to set single/dual output buffer for
mic_dual - Added mic_dual, an optimised single core, 16kHz, two channel version
(not compatible with async interface) - ADDED: Support for arbitrary frame sizes
- ADDED: #defines for mic muting
- ADDED: Non-blocking interface to decimators for 2 mic setup
- CHANGED: Build files updated to support new "xcommon" behaviour in xwaf.
- Added xwaf build system support
- Cleaned up some of the code in the FIR designer.
- Removed fixed gain in examples
- Update VU meter example
- Fix port types in examples
- Set and inherit XCC_FLAGS rather than XCC_XC_FLAGS when building library
- Updated lib_dsp dependancy from 3.0.0 to 4.0.0
- Modified the FIR designer to increase the first stage stopband
attenuation. - Cleaned up some of the code in the FIR designer.
- Updated docs to reflect the above.
- Update DAC settings to work for mic array base board as well.
- Filter design script update for usability.
- Documentation improvement.
- Changed DEBUG_UNIT to XASSERT_UNIT to work with lib_xassert.
- Added upgrade advisory.
- Added dynamic range subsection to documentation.
- Added ability to route internal channels of the output rate of the
mic_array to the mic_array so that they can benefit from the post
processing of the mic_array. - Enabled the metadata which delivers the frame counter.
- Small fix to the filter generator to allow the use of fewer taps in the
final stage FIR. - Added significant bits collection to the metadata.
- Added fixed gain control through define MIC_ARRAY_FIXED_GAIN.
- Tested and enabled the debug mode for detecting frame dropping. Enabled
by adding DEBUG_MIC_ARRAY to the Makefile. - Moved to using types from lib_dsp.
- Bug fix in python FIR generator script resulting in excessive output
ripple. - Default FIR coefficients now optimised for 16kHz output sample rate.
- Added ability to remap port pins to channels.
- MIC_ARRAY_NUM_MICS is now forced to a multiple of 4 with a warning if it
changed. - Corrected MIC_ARRAY_DC_OFFSET_LOG2 default value reporting in
documentation.
- lib_spdif: Added dependency 4.1.0
- CHANGED: Use XMOS Public Licence Version 1
- CHANGED: Rearrange documentation files
- lib_voice: Removed dependency
- lib_xassert: 2.0.1 -> 4.1.0
- CHANGED: Use XMOS Public Licence Version 1
- REMOVED: not necessary cpanfile
- CHANGED: Pin Python package versions
- CHANGED: Build files updated to support new "xcommon" behaviour in xwaf.
- CHANGE: Correct dates in LICENSE.txt files
- CHANGE: Renamed DEBUG_UNIT to XASSERT_UNIT to prevent conflict with
lib_logging
- lib_xua: Added dependency 3.2.0
- CHANGED: Updated tests to use lib_locks (was legacy module_locks)
- CHANGED: Exclude HID Report functions unless the HID feature is
enabled - CHANGED: Explicit feedback EP enabled by default (see
UAC_FORCE_FEEDBACK_EP) - FIXED: Incorrect conditional compilation of HID report code
- FIXED: Input/output descriptors written when input/output not
enabled. (Audio class 1.0 mode using
XUA_USB_DESCRIPTOR_OVERWRITE_RATE_RES)
- lib_xud: Added dependency 2.1.0
- CHANGE: Various optimisations to aid corner-case timings on XS3 based
devices - CHANGE: Some API functions re-authored in C (from Assembly)
- CHANGE: Testbench now more accurately models XS3 based devices
- CHANGE: Various optimisations to aid corner-case timings on XS3 based
- sc_adat: Removed dependency
- sc_i2c: Removed dependency
- sc_spdif: Removed dependency
- sc_usb: Removed dependency
- sc_usb_audio: Removed dependency
- sc_usb_device: Removed dependency
- sc_util: Removed dependency
- sc_xud: Removed dependency
- lib_adat: Added dependency 1.0.0