June 15, 2015
"RingBuffer" is the new name for the BioSemi library that was formerly called "Labview_DLL". The new name was chosen to remove any inference that the library comes from or, is dependent on, the National Instruments "LabVIEW" product.
This software contains no kernel mode routines and runs entirely in user mode.
However it does require a kernel mode driver "WinUsb" which is a standard component of Windows. The installation described here is about how to tell Windows what driver to load when the BioSemi Usb Receiver's cable is plugged into the computer.
The 2015 RingBuffer library uses the same Windows Usb driver (WinUsb) as that used by the previous Labview_DLL.dll. This means that if the Windows Usb driver was installed for the previous version, there is no need to repeat THAT part of the install. Instead skip directly to the Testing section below.
The newest Usb Receiver firmware from BioSemi (March 2015) implements Microsoft's Windows Compatible ID feature (WCID). This means that on Windows Vista and newer systems, the Usb receiver no longer requires any kernel driver installation by the user.
When the Usb cable is plugged into the computer, Windows recognizes that the firmware uses the Microsoft WinUsb driver and loads that driver. In this case, skip down to the Testing section below.
BioSemi doesn't provide an actual Windows driver but supplies only an INF file that connects Microsoft's "WinUsb" driver with the BioSemi Receiver.
Normally Windows 8 allows only signed drivers to be installed. The signing requirement extends to the INF file as well as the actual driver.
The BioSemiWinUsb2.INF file is not signed.
For Windows 8 there is a workaround that has to be performed first to allow Windows 8 to accept the unsigned BioSemiWinUsb2 file. See this BioSemi web page for the instructions: http://www.biosemi.com/faq/install_USB_W8.htm.
Then for all generations of Windows try this:
If this works, skip down to the Testing section below.
Otherwise, follow the Manual Install steps below.
This is a less automatic way to tell Windows to use driver "WinUsb" with the Biosemi Usb Receiver,
Here are the usual sequence of displays and what you should chose for the various generations of Windows systems.
Now you should see the following sequence of displays:
Skip down to the Testing section below.
Skip down to the Testing section below.
To test your install:
RingBuffer_SyncTest
This program checks that the 0xffffff00 sync words appear in all the right places in the input stream. It stops with a message if they don't.
There can be 3 command line parameters for this program:
Hitting any key when the program is running will stop the test run.
Some performance improvement may be gained by using the library parameters explained at Tuning.
Note:
To merge this new RingBuffer library with an existing version of BioSemi's ActiView program or other existing acquisition application:
If the application is looking for a Labview_DLL.dll library, copy and rename the RingBuffer.dll file and use that instead.
To try the client/server feature of the 2015 version of the ring buffer library or the Android sample App, see Try Client/Server.
To develop your own acquisition program using the RingBuffer library, see RingBufferLibrary-API for a description of the API's available.
The distributed software was compiled in both 32 and 64 bit modes using Microsoft's Visual Studio 2013, Visual Studio Tools Command Prompt windows, command "nmake". Testing was done on 64 bit Windows 7.