Behringer BCA 2000 ASIO driver - btsimonh/Behringer-BCA-2000-ASIO-driver GitHub Wiki

This repo is a fork of win-widget, an ASIO driver for an open source audio device. (It is a work in progress... the test application works, but the ASIO aspects are not stable yet).

The BCA-2000 was abandoned at XP by Behringer. The unit is Cypress CY7C68013 based, and as such there is a fair amount of information/SDK available on the net.

The win-widget driver is based on libusbk. Libusbk will install on windows xp/vista/7/8 with a signed driver available, and provides API level access to all the USB functionality we need to talk to the BCA2000.

The original win-widget ASIO driver talks to a 'standard' USB audio, but most of what we need is there in terms of Isochronous transactions.

The basic changes are:

  1. change the inf in the driver packager to install libusbk for the BCA-2000 vid/pid combinations (two - one for pre-frimware load, one for post-firmware load).
  2. to recognise the device without 8051 firmware and use the Cypress ezusb commands to load the 8051 firmware, then pause for re-enumeration, re-enumerate, and recognise the device with firmware, then load the FPGA code into the BCA2000.
  3. to read and write audio data to the unit.
  4. to provide some basic control (sample rate, etc.)

doing the basic modifications was not too difficult... actually getting audio data into the BCA-2000 was a pig :).