All Ocean Optics spectrometers support a fine degree of access and control via application software. Ocean provides software tools at multiple levels of power, complexity, and programmability to meet a “full spectrum” of spectroscopic analysis and automation needs.
You may use our flagship desktop spectroscopy application, OceanView, to manually configure acquisition parameters and graph the results, or use its built-in “Application Wizards” to walk you through standard spectroscopic techniques such as absorbance measurements or locating Raman peaks. OceanView also allows you to design your own custom measurement procedures using a “visual schematic” view that lets you drag-and-drop spectrometers, transform functions and display nodes to automate your unique post-processing workflow. OceanView is the recommended software for use with Ocean Optics spectrometers.
For complete programmatic control, we offer a range of device drivers providing direct control of every spectrometer function. Our OmniDriver high-level application driver provides convenient wrapper interfaces (DLLs), Java .jar files and sample code for all popular programming languages (including Java, C#, C++, C, LabVIEW, MATLAB and Delphi) and operating systems (Windows XP/7/8, MacOS, Linux). OmniDriver is designed to support every feature of every spectrometer and programmable accessory we produce, and in fact underlies our own OceanView desktop application.
Our device drivers provide dependable means to acquire raw spectra (intensity × wavelength), but spectroscopy is about so much more than raw data! End-user, knowledge-based spectroscopic applications typically apply a lot of post-processing to those raw spectra, turning data into actionable information, accrued measurements into answers. That is where SPAM, our Spectral Processing And Math library comes to the fore. SPAM is jam-packed with pre-tested and validated post-processing functions to help you quickly and accurately compute irradiance, find peaks, convert between colorspaces, generate CCT and CRI, perform linear regressions, compute Raman shifts, splice spectra from disjoint sources and more.
Occasionally a user will want an even finer degree of control: they don’t just want to control the spectrometer through the driver, they want to control every aspect of the driver itself. For the ultimate hacker, we offer SeaBreeze, an open-source device driver in C and C++ which lets you control every byte passing between your application and the spectrometer, from USB enumeration to protocol exchanges to raw reads and writes against control endpoints. This is obviously not a trivial undertaking, and is recommended only for OEMs and microcode enthusiasts for whom the added edge in power and versatility is worth the extra investiture in time.
As you can see, Ocean provides a full stack of software options, from ready-made GUI analysis tools (OceanView) through high-level libraries (OmniDriver and SPAM) to low-level “bare metal” APIs (SeaBreeze). Whatever your comfort level and need for control, Ocean is ready to provide software interfaces tailored to your balance between convenience and control.