-
Notifications
You must be signed in to change notification settings - Fork 1
slac-epics/spectrometer
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
spectrometer EPICS module ========================== An epics support module for spectrometers and related devices. This module supports the following OceanOptics APIs: - OceanDirect (newest) - tested with SR-6 - SeaBreezeAPI (old) - tested with STS, HR2000 - SeaBreezeWrapper (oldest) - tested with HR2000 See https://www.oceanoptics.com/software/ To add this module to an IOC application: - Add release path to configure/RELEASE - Add package to configure/CONFIG_SITE: SEABREEZE_PACKAGE_NAME = seabreeze SEABREEZE_VERSION = 3.0.11 SEABREEZE_TOP = $(PACKAGE_SITE_TOP)/$(SEABREEZE_PACKAGE_NAME)/$(SEABREEZE_VERSION) SEABREEZE_LIB = $(SEABREEZE_TOP)/$(PKG_ARCH)/lib SEABREEZE_INCLUDE = $(SEABREEZE_TOP)/$(PKG_ARCH)/include - Add to src/Makefile: seabreeze_DIR = $(SEABREEZE_LIB) $(PROD_NAME)_DBD += base.dbd $(PROD_NAME)_DBD += asyn.dbd $(PROD_NAME)_DBD += spectrometer.dbd # PROD_LIBS += seabreeze $(PROD_NAME)_LIBS += spectrometer $(PROD_NAME)_LIBS += asyn $(PROD_NAME)_SYS_LIBS_Linux += usb - For Ocean Optics spectrometers, optionally install db files, e.g.: DB_INSTALLS += $(SPECTROMETER)/db/seabreezeAPI.template See $(TOP)/iocBoot/iocspectrometer/st.cmd for an example IOC startup script. --------------------------------------------------------------------------------------- Note regarding Seabreeze API and EPICS drivers: There are two different versions of the API and thus two different EPICS drivers: 1) SeaBreezeAPI (newer) --> drvSeaBreezeAPI 2) SeaBreezeWrapper (older) --> drvSeaBreezeWrapper Try the newer driver first. If this does not work with your particular device, try the older one. For more see: https://www.oceaninsight.com/globalassets/catalog-blocks-and-images/software-downloads-installers/javadocs-api/seabreeze/html/index.html CAUTION: Some functions in the seabreeze API are not thread safe. This can crash the IOC when running multiple spectrometers per IOC. ---------------------------------------------------------------------------------------