Visual Stimulation / ViSaGe MKII Stimulus Generator
ViSaGe makes it simple to present calibrated visual stimuli on CRT, LCD, DLP and OLED based displays with precision timing, and provides a robust and reliable mechanism to synchronise the stimulus presentation with external data collection equipment, including button boxes or eye trackers, motion trackers, electrophysiological amplifiers, and MRI scanners. It is the ideal choice for cognitive, psychophysical, and neurophysiological investigations of vision and the brain.
Frequently Asked Questions
We have a compiled a list of common questions and answers about ViSaGe and are continually adding to the list based on current feedback from our customers. If your specific questions are not answered, please contact us by email; we will add the new questions and answers to the list.
FAQ 1: What's a ViSaGe?
ViSaGe is a programmable computer graphics system for computers running Windows. It's been specially developed by CRS to make it simple to present well characterised visual stimuli on a computer monitor, historically a CRT but recently on LCD and OLED monitors, for scientific vision research applications. You'll probably see and hear the abbreviation VSG used frequently, which is short for Visual Stimulus Generator and sums-up neatly what the equipment can do. The ViSaGe is the latest in our line of VSGs and was launched at VSS in 2004. Previous versions of the VSG had names like VSG2/3 and VSG2/5, which you'll find often cited in the publications prior to about 2005.
FAQ 2: What's special about ViSaGe and why would I want one?
The unique hardware and software features, which often make the difference between being able to run a particular experiment with a specific stimulus, or not at all! Essentially they are: 14-bit luminance and colour control (yes, that's 64 or 32 times more dynamic range than a standard 8 or 10-bit analog VGA computer graphics system), accurate frame-based timing that's guaranteed not to drop frames under Windows, integrated TTL-based synchronisation with CRS peripherals and third-party equipment, and software for MATLAB that makes it simple to present visual stimuli in a precise and controlled manner.
FAQ 3: Is ViSaGe suitable for my experiment; what stimuli can I present?
ViSaGe can display any visual stimulus that can be defined by a mathematical function and saved as a maxtrix or array of RGB values. It can also display bitmap images that you might obtain from other sources like digital cameras and scanners, or created using Photoshop-type software packages. If you want to display a stimulus that changes over time, stimuli created by ViSaGe can be spatially and temporally modulated in a number of ways, but often through using look-up tables (LUTs) or sequences of precalculated frames. The special hardware and software features make this simple to achieve, and often in ways that are conceptually trivial compared to the complexities of other low-level graphics approaches.
FAQ 4: How much does ViSaGe cost?
If you are a new customer and don't already have one of our ViSaGe systems then the current ViSaGe MKII platform starts from GBP7150. We give existing ViSaGe MKII customers a significant discount when they buy a second system of the same type. If you have a legacy VSG system and want to upgrade to the ViSaGe MKII platform, we run a trade-in scheme; we will recycle your old hardware and give you a discount off the cost of the ViSaGe MKII.
Please contact CRS for the latest prices for your country and to find out if we have a local reseller or distributor in your region.
FAQ 5: If I buy ViSaGe, what do I actually get?
Every ViSaGe contains hardware and software: you will currently receive a x16 4 lane PCI Express framestore card for installation inside the host computer, an external Control Unit (this connects to the host computer by USB and to the framestore card by DVI), a collection of interface cables, a wall mounted Power Supply Unit for your specific territory. All the software and drivers are distributed on a USB disk drive that is integrated inside the ViSaGe MKII Control Unit - connect it to your computer by USB and a drive volume labelled VISAGE will appear. You will also be entitled to unlimited technical and programming support for however long you use ViSaGe: if you need help, complete the Technical Support form and we'll aim to answer within a business day.
FAQ 6: What kind of computer do I need? Is ViSaGe compatible with a Mac?
The original ViSaGe hardware is only supported with computers running 32-bit Windows XP Pro SP3 (ViSaGe serial numbers starting 7.1.x). If you have the latest MKII hardware with a 7.2.x serial number then you can also use 32-bit or 64 bit versions of: Windows 7, Windows 8.1 or Windows 8.10 (64-bit support may require a firmware update - check the self-generated Status Screen for version information - you need firmware releases from 2017 onwards). We recommend and directly support the DELL Precision series of workstations and can supply ViSaGe preinstalled in one of these for your convenience. If you are going to use an existing computer, the special video hardware requires a spare x4, x8 or x16 PCI Express slot (note that our video hardware will not work in a computer that only has a single x16 PCI Express slot as this slot is required to host the computer's own graphic card) and a single USB2 or USB3 port to interface the external Control Unit. Please remember that ViSaGe does not replace the Windows graphics card so you still need to have a dedicated graphics card to run your Windows desktop monitor.
The Toolbox for MATLAB works best with MATLAB R2010 or later (64-bit R2010 or later is required for 64 bit Windows installations), but if you have any earlier version please check with us first to find out if there are any known problems.
FAQ 6: What about software, do I have be an expert C programmer or can I use MATLAB?
This is a bit of a long answer, so please be patient! The software for ViSaGe is provided in a number of layers; think of an onion. In the center, or core of the ViSaGe software onion, is our kernel-mode device driver and Real Time Scheduler (AKA "RTS"). This takes care of all the low-level, frame-synchronous operations that are executed by the framestore and by the external Control Unit. The RTS is part of what makes the ViSaGe so special and able to deliver the guaranteed timing that's not always possible with other, software-only, approaches. The next layer up is the VSGv8 Application Programming Interface: think of it like CRS's own proprietary OpenGL or DirectX graphics interface to the ViSaGe hardware. The VSGv8 API is responsible for translating high-level commands (like vsgDrawGrating or vsgDraw2DArray or vsgDrawRect) into assembler-like RTS codes. So, if you want to use a C compiler or a programming tool like Delphi to create a Windows GUI program to control your experiment and the ViSaGe, you can: all you need is to be able to import the VSGv8 DLL into your project and now you can add the VSGv8 functions into your program (if you want to be really clever, you can even program the ViSaGe direct using the RTS codes). The Toolbox for MATLAB that we provide is the outside layer of our software onion; it consists of a collection of M files and MEX files that make it possible to control the ViSaGe, our Video Eyetracker Toolbox family, and our other programmable peripherals, all from a MATLAB script (some commands in the Toolbox are vectorised to make creating complex visual stimuli much easier to display). You don't have to be a C programmer to use the ViSaGe, but you do need to be able to write scripts and functions in MATLAB.