I'm trying to get a FLIR/Point grey Grasshopper 3 working in ADSpinnaker. For the most part it is working. I can start the IOC. It connects to the camera. I can set exposure time, change auto exposure on and off, even access all the features in the camera specific features adl screens. The problem is if you actually press acquire I get a segmentation Fault.
Running : Ubuntu 22.04
Latest assemble synApps script
Change withPva = NO
and Areadetector to R3-12-1
Otherwise compiled just fine for the most part
Extracted the Camera xml using aravis.
Got the template file and generated db and adl.
There are a couple errors with parameter values being undefined when the IOC starts and I have a traceback from gdb. I'll paste the backtrace first as it is shorter. Then the IOC boot.
Any ideas on what I am doing wrong would be greatly appreciated!
traceback gdb
Thread 9 "FLIR10x" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7ffff17e8640 (LWP 1438)]
___pthread_mutex_lock (mutex=0x0) at ./nptl/pthread_mutex_lock.c:80
80 ./nptl/pthread_mutex_lock.c: No such file or directory.
(gdb) backtrace
#0 ___pthread_mutex_lock (mutex=0x0) at ./nptl/pthread_mutex_lock.c:80
#1 0x00007ffff7baf9ed in epicsEventTrigger ()
from /opt/epics/base-3.15.9/lib/linux-x86_64/libCom.so.3.15.9
#2 0x00007ffff7ba80dd in epicsEventMustTrigger ()
from /opt/epics/base-3.15.9/lib/linux-x86_64/libCom.so.3.15.9
#3 0x00007ffff7fb1327 in ADSpinnaker::startCapture() ()
from /opt/epics/synApps/support/areaDetector-R3-12-1/ADSpinnaker/lib/linux-x86_64/libADSpinnaker.so
#4 0x00007ffff79283c5 in ADGenICam::writeInt32(asynUser*, int) ()
from /opt/epics/synApps/support/areaDetector-R3-12-1/ADGenICam/lib/linux-x86_64/libADGenICam.so
#5 0x00007ffff7dc0c71 in writeInt32 ()
from /opt/epics/synApps/support/asyn-R4-44-2/lib/linux-x86_64/libasyn.so
#6 0x00007ffff7dd5f49 in processCallbackOutput ()
from /opt/epics/synApps/support/asyn-R4-44-2/lib/linux-x86_64/libasyn.so
#7 0x00007ffff7da07dc in portThread ()
from /opt/epics/synApps/support/asyn-R4-44-2/lib/linux-x86_64/libasyn.so
#8 0x00007ffff7bacfd4 in start_routine ()
from /opt/epics/base-3.15.9/lib/linux-x86_64/libCom.so.3.15.9
#9 0x00007ffff79c6b43 in start_thread (arg=<optimized out>)
at ./nptl/pthread_create.c:442
#10 0x00007ffff7a57bb4 in clone ()
at ../sysdeps/unix/sysv/linux/x86_64/clone.S:100
(gdb)
Wed Sep 13 18:15:56 PDT 2023
IOC Boot
root@mfg-02:/opt/epics/synApps/support/areaDetector-R3-12-1/ADSpinnaker/iocs/spi
nnakerIOC/iocBoot/iocSpinnaker# ../../bin/linux-x86_64/spinnakerApp st.cmd
< envPaths
epicsEnvSet("IOC","iocSpinnaker")
epicsEnvSet("TOP","/opt/epics/synApps/support/areaDetector-R3-12-1/ADSpinnaker/iocs/spinnakerIOC")
epicsEnvSet("ADSPINNAKER","/opt/epics/synApps/support/areaDetector-R3-12-1/ADSpinnaker/iocs/spinnakerIOC/../..")
epicsEnvSet("SUPPORT","/opt/epics/synApps/support")
epicsEnvSet("ASYN","/opt/epics/synApps/support/asyn-R4-44-2")
epicsEnvSet("AREA_DETECTOR","/opt/epics/synApps/support/areaDetector-R3-12-1")
epicsEnvSet("ADSUPPORT","/opt/epics/synApps/support/areaDetector-R3-12-1/ADSupport")
epicsEnvSet("ADCORE","/opt/epics/synApps/support/areaDetector-R3-12-1/ADCore")
epicsEnvSet("AUTOSAVE","/opt/epics/synApps/support/autosave-master")
epicsEnvSet("BUSY","/opt/epics/synApps/support/busy-R1-7-4")
epicsEnvSet("CALC","/opt/epics/synApps/support/calc-R3-7-5")
epicsEnvSet("SNCSEQ","/opt/epics/synApps/support/sequencer-mirror-R2-2-9")
epicsEnvSet("SSCAN","/opt/epics/synApps/support/sscan-master")
epicsEnvSet("DEVIOCSTATS","/opt/epics/synApps/support/iocStats-master")
epicsEnvSet("EPICS_BASE","/opt/epics/base")
epicsEnvSet("ADGENICAM","/opt/epics/synApps/support/areaDetector-R3-12-1/ADGenICam")
errlogInit(20000)
dbLoadDatabase("/opt/epics/synApps/support/areaDetector-R3-12-1/ADSpinnaker/iocs/spinnakerIOC/dbd/spinnakerApp.dbd")
spinnakerApp_registerRecordDeviceDriver(pdbbase)
# Use this line for a specific camera by serial number, in this case a BlackFly GigE
epicsEnvSet("CAMERA_ID", "22246598")
#epicsEnvSet("CAMERA_ID", "0")
epicsEnvSet("GENICAM_DB_FILE", "/opt/epics/synApps/support/areaDetector-R3-12-1/ADGenICam/db/Grasshopper3_GS3_U3_41C6NIR.template")
< st.cmd.base
# Prefix for all records
epicsEnvSet("PREFIX", "FLIR10x:")
# The port name for the detector
epicsEnvSet("PORT", "FLIR10x")
# Really large queue so we can stream to disk at full camera speed
epicsEnvSet("QSIZE", "2000")
# The maximim image width; used for row profiles in the NDPluginStats plugin
epicsEnvSet("XSIZE", "2048")
# The maximim image height; used for column profiles in the NDPluginStats plugin
epicsEnvSet("YSIZE", "2048")
# The maximum number of time series points in the NDPluginStats plugin
epicsEnvSet("NCHANS", "2048")
# The maximum number of frames buffered in the NDPluginCircularBuff plugin
epicsEnvSet("CBUFFS", "500")
# The search path for database files
# This is for Windows
#epicsEnvSet("EPICS_DB_INCLUDE_PATH", "$(ADCORE)/db;$(ADGENICAM)/db;$(ADSPINNAKER)/db")
# This is for Linux
epicsEnvSet("EPICS_DB_INCLUDE_PATH", "/opt/epics/synApps/support/areaDetector-R3-12-1/ADCore/db:/opt/epics/synApps/support/areaDetector-R3-12-1/ADGenICam/db:/opt/epics/synApps/support/areaDetector-R3-12-1/ADSpinnaker/iocs/spinnakerIOC/../../db")
# Define NELEMENTS to be enough for a 2048x2048x1 (mono) image
epicsEnvSet("NELEMENTS", "4194304")
# ADSpinnakerConfig(const char *portName, const char *cameraId, int numSPBuffers,
# size_t maxMemory, int priority, int stackSize)
ADSpinnakerConfig("FLIR10x", 22246598)
2023/09/14 01:27:04.906 ADSpinnaker::connectCamera exception Spinnaker: GenICam::OutOfRangeException= Value = 100 must be equal or smaller than Max = 1. : OutOfRangeException thrown in node 'StreamBufferCountManual' while calling 'StreamBufferCountManual.SetValue()' (file 'IntegerT.h', line 79) [-2002]
2023/09/14 01:27:04.906 ADSpinnaker:ADSpinnaker: camera connection failed (3)
Number of cameras detected: 1
Camera 0
Device Vendor Name (DeviceVendorName):Point Grey Research
Device Model Name (DeviceModelName):Grasshopper3 GS3-U3-41C6NIR
Device Serial Number (DeviceSerialNumber):22246598
Device Version (DeviceVersion):FW:v2.23.3.02 FPGA:v2.02
Device Type (DeviceType):USB3Vision
Report for camera in use:
Feature list
Port: FLIR10x
Timestamp: <undefined>
Input EOS[0]:
Output EOS[0]:
Parameter list 0
Number of parameters is: 103
Parameter 0 type=string, name=PORT_NAME_SELF, value=FLIR10x, status=0
Parameter 1 type=string, name=ADCORE_VERSION, value=3.12.1, status=0
Parameter 2 type=string, name=DRIVER_VERSION, value=3.12.1, status=0
Parameter 3 type=string, name=MANUFACTURER, value is undefined
Parameter 4 type=string, name=MODEL, value is undefined
Parameter 5 type=string, name=SERIAL_NUMBER, value is undefined
Parameter 6 type=string, name=SDK_VERSION, value is undefined
Parameter 7 type=string, name=FIRMWARE_VERSION, value is undefined
Parameter 8 type=asynInt32, name=ACQUIRE, value=0, status=0
Parameter 9 type=asynInt32, name=ACQUIRE_BUSY, value=0, status=0
Parameter 10 type=asynInt32, name=WAIT_FOR_PLUGINS, value is undefined
Parameter 11 type=asynInt32, name=ARRAY_SIZE_X, value=0, status=0
Parameter 12 type=asynInt32, name=ARRAY_SIZE_Y, value=0, status=0
Parameter 13 type=asynInt32, name=ARRAY_SIZE_Z, value=0, status=0
Parameter 14 type=asynInt32, name=ARRAY_SIZE, value=0, status=0
Parameter 15 type=asynInt32, name=ARRAY_NDIMENSIONS, value=0, status=0
Parameter 16 type=asynInt32, name=ARRAY_DIMENSIONS, value is undefined
Parameter 17 type=asynInt32, name=DATA_TYPE, value=1, status=0
Parameter 18 type=asynInt32, name=COLOR_MODE, value=0, status=0
Parameter 19 type=asynInt32, name=UNIQUE_ID, value=0, status=0
Parameter 20 type=asynFloat64, name=TIME_STAMP, value=0, status=0
Parameter 21 type=asynInt32, name=EPICS_TS_SEC, value=0, status=0
Parameter 22 type=asynInt32, name=EPICS_TS_NSEC, value=0, status=0
Parameter 23 type=asynInt32, name=BAYER_PATTERN, value=0, status=0
Parameter 24 type=string, name=CODEC, value is undefined
Parameter 25 type=asynInt32, name=COMPRESSED_SIZE, value is undefined
Parameter 26 type=asynInt32, name=ARRAY_COUNTER, value=0, status=0
Parameter 27 type=string, name=FILE_PATH, value=, status=0
Parameter 28 type=asynInt32, name=FILE_PATH_EXISTS, value is undefined
Parameter 29 type=string, name=FILE_NAME, value=, status=0
Parameter 30 type=asynInt32, name=FILE_NUMBER, value=0, status=0
Parameter 31 type=string, name=FILE_TEMPLATE, value=%s%s_%3.3d.dat, status=0
Parameter 32 type=asynInt32, name=AUTO_INCREMENT, value=0, status=0
Parameter 33 type=string, name=FULL_FILE_NAME, value is undefined
Parameter 34 type=asynInt32, name=FILE_FORMAT, value is undefined
Parameter 35 type=asynInt32, name=AUTO_SAVE, value is undefined
Parameter 36 type=asynInt32, name=WRITE_FILE, value=0, status=0
Parameter 37 type=asynInt32, name=READ_FILE, value=0, status=0
Parameter 38 type=asynInt32, name=WRITE_MODE, value is undefined
Parameter 39 type=asynInt32, name=WRITE_STATUS, value=0, status=0
Parameter 40 type=string, name=WRITE_MESSAGE, value=, status=0
Parameter 41 type=asynInt32, name=NUM_CAPTURE, value is undefined
Parameter 42 type=asynInt32, name=NUM_CAPTURED, value=0, status=0
Parameter 43 type=asynInt32, name=CAPTURE, value=0, status=0
Parameter 44 type=asynInt32, name=DELETE_DRIVER_FILE, value is undefined
Parameter 45 type=asynInt32, name=FILE_LAZY_OPEN, value is undefined
Parameter 46 type=asynInt32, name=CREATE_DIR, value=0, status=0
Parameter 47 type=string, name=FILE_TEMP_SUFFIX, value=, status=0
Parameter 48 type=string, name=ND_ATTRIBUTES_FILE, value=, status=0
Parameter 49 type=asynInt32, name=ND_ATTRIBUTES_STATUS, value=1, status=0
Parameter 50 type=string, name=ND_ATTRIBUTES_MACROS, value=, status=0
Parameter 51 is undefined, name=ARRAY_DATA
Parameter 52 type=asynInt32, name=ARRAY_CALLBACKS, value is undefined
Parameter 53 type=asynInt32, name=POOL_MAX_BUFFERS, value is undefined
Parameter 54 type=asynInt32, name=POOL_ALLOC_BUFFERS, value=0, status=0
Parameter 55 type=asynInt32, name=POOL_FREE_BUFFERS, value=0, status=0
Parameter 56 type=asynFloat64, name=POOL_MAX_MEMORY, value=0, status=0
Parameter 57 type=asynFloat64, name=POOL_USED_MEMORY, value=0, status=0
Parameter 58 type=asynInt32, name=POOL_EMPTY_FREELIST, value is undefined
Parameter 59 type=asynInt32, name=NUM_QUEUED_ARRAYS, value=0, status=0
Parameter 60 type=asynFloat64, name=GAIN, value is undefined
Parameter 61 type=asynInt32, name=BIN_X, value is undefined
Parameter 62 type=asynInt32, name=BIN_Y, value is undefined
Parameter 63 type=asynInt32, name=MIN_X, value=0, status=0
Parameter 64 type=asynInt32, name=MIN_Y, value=0, status=0
Parameter 65 type=asynInt32, name=SIZE_X, value is undefined
Parameter 66 type=asynInt32, name=SIZE_Y, value is undefined
Parameter 67 type=asynInt32, name=MAX_SIZE_X, value=1, status=0
Parameter 68 type=asynInt32, name=MAX_SIZE_Y, value=1, status=0
Parameter 69 type=asynInt32, name=REVERSE_X, value is undefined
Parameter 70 type=asynInt32, name=REVERSE_Y, value is undefined
Parameter 71 type=asynInt32, name=FRAME_TYPE, value is undefined
Parameter 72 type=asynInt32, name=IMAGE_MODE, value is undefined
Parameter 73 type=asynInt32, name=NEXPOSURES, value is undefined
Parameter 74 type=asynInt32, name=NEXPOSURES_COUNTER, value=0, status=0
Parameter 75 type=asynInt32, name=NIMAGES, value is undefined
Parameter 76 type=asynInt32, name=NIMAGES_COUNTER, value=0, status=0
Parameter 77 type=asynFloat64, name=ACQ_TIME, value is undefined
Parameter 78 type=asynFloat64, name=ACQ_PERIOD, value is undefined
Parameter 79 type=asynFloat64, name=TIME_REMAINING, value=0, status=0
Parameter 80 type=asynInt32, name=STATUS, value=0, status=0
Parameter 81 type=asynInt32, name=TRIGGER_MODE, value is undefined
Parameter 82 type=asynInt32, name=SHUTTER_CONTROL, value is undefined
Parameter 83 type=asynInt32, name=SHUTTER_CONTROL_EPICS, value is undefined
Parameter 84 type=asynInt32, name=SHUTTER_STATUS, value=0, status=0
Parameter 85 type=asynInt32, name=SHUTTER_MODE, value is undefined
Parameter 86 type=asynFloat64, name=SHUTTER_OPEN_DELAY, value is undefined
Parameter 87 type=asynFloat64, name=SHUTTER_CLOSE_DELAY, value is undefined
Parameter 88 type=asynFloat64, name=TEMPERATURE, value is undefined
Parameter 89 type=asynFloat64, name=TEMPERATURE_ACTUAL, value is undefined
Parameter 90 type=asynInt32, name=READ_STATUS, value is undefined
Parameter 91 type=string, name=STATUS_MESSAGE, value=, status=0
Parameter 92 type=string, name=STRING_TO_SERVER, value=<not used by driver>, status=0
Parameter 93 type=string, name=STRING_FROM_SERVER, value=<not used by driver>, status=0
Parameter 94 type=asynFloat64, name=GC_FRAMERATE, value is undefined
Parameter 95 type=asynInt32, name=GC_FRAMERATE_ENABLE, value is undefined
Parameter 96 type=asynInt32, name=GC_TRIGGER_SOURCE, value is undefined
Parameter 97 type=asynInt32, name=GC_TRIGGER_OVERLAP, value is undefined
Parameter 98 type=asynInt32, name=GC_TRIGGER_SOFTWARE, value is undefined
Parameter 99 type=asynInt32, name=GC_EXPOSURE_MODE, value is undefined
Parameter 100 type=asynInt32, name=GC_EXPOSURE_AUTO, value is undefined
Parameter 101 type=asynInt32, name=GC_GAIN_AUTO, value is undefined
Parameter 102 type=asynInt32, name=GC_PIXEL_FORMAT, value is undefined
asynSetTraceIOMask(FLIR10x, 0, 2)
# Set ASYN_TRACE_WARNING and ASYN_TRACE_ERROR
#asynSetTraceMask($(PORT), 0, 0xff)
#asynSetTraceFile($(PORT), 0, "asynTrace.out")
#asynSetTraceInfoMask($(PORT), 0, 0xf)
# Main database. This just loads and modifies ADBase.template
dbLoadRecords("/opt/epics/synApps/support/areaDetector-R3-12-1/ADSpinnaker/iocs/spinnakerIOC/../../db/spinnaker.template", "P=FLIR10x:,R=cam1:,PORT=FLIR10x")
# Load the autogenerated file of GenICam features
dbLoadRecords("/opt/epics/synApps/support/areaDetector-R3-12-1/ADGenICam/db/Grasshopper3_GS3_U3_41C6NIR.template", "P=FLIR10x:,R=cam1:,PORT=FLIR10x")
# Transport diagnostics
#dbLoadRecords("$(ADSPINNAKER)/db/spinnakerIntReadback.template", "P=$(PREFIX),R=cam1:,PORT=$(PORT),PROP=TransmitFailureCount,PN=SP_TRANSMIT_FAILURE_COUNT")
#dbLoadRecords("$(ADSPINNAKER)/db/spinnakerIntReadback.template", "P=$(PREFIX),R=cam1:,PORT=$(PORT),PROP=BufferUnderrunCount, PN=SP_BUFFER_UNDERRUN_COUNT")
#dbLoadRecords("$(ADSPINNAKER)/db/spinnakerIntReadback.template", "P=$(PREFIX),R=cam1:,PORT=$(PORT),PROP=FailedBufferCount, PN=SP_FAILED_BUFFER_COUNT")
#dbLoadRecords("$(ADSPINNAKER)/db/spinnakerIntReadback.template", "P=$(PREFIX),R=cam1:,PORT=$(PORT),PROP=FailedPacketCount, PN=SP_FAILED_PACKET_COUNT")
# Create a standard arrays plugin
NDStdArraysConfigure("Image1", 5, 0, "FLIR10x", 0, 0)
# Use this line for 8-bit data only
#dbLoadRecords("$(ADCORE)/db/NDStdArrays.template", "P=$(PREFIX),R=image1:,PORT=Image1,ADDR=0,TIMEOUT=1,NDARRAY_PORT=$(PORT),TYPE=Int8,FTVL=CHAR,NELEMENTS=$(NELEMENTS)")
# Use this line for 8-bit or 16-bit data
dbLoadRecords("/opt/epics/synApps/support/areaDetector-R3-12-1/ADCore/db/NDStdArrays.template", "P=FLIR10x:,R=image1:,PORT=Image1,ADDR=0,TIMEOUT=1,NDARRAY_PORT=FLIR10x,TYPE=Int16,FTVL=SHORT,NELEMENTS=4194304")
# Load all other plugins using commonPlugins.cmd
< /opt/epics/synApps/support/areaDetector-R3-12-1/ADCore/iocBoot/commonPlugins.cmd
# This is an example file for creating plugins
# It uses the following environment variable macros
# Many of the parameters defined in this file are also in commonPlugins_settings.req so if autosave is being
# use the autosave value will replace the value passed to this file.
# $(PREFIX) Prefix for all records
# $(PORT) The port name for the detector. In autosave.
# $(QSIZE) The queue size for all plugins. In autosave.
# $(XSIZE) The maximum image width; used to set the maximum size for row profiles in the NDPluginStats plugin and 1-D FFT
# profiles in NDPluginFFT.
# $(YSIZE) The maximum image height; used to set the maximum size for column profiles in the NDPluginStats plugin
# $(NCHANS) The maximum number of time series points in the NDPluginStats, NDPluginROIStats, and NDPluginAttribute plugins
# $(CBUFFS) The maximum number of frames buffered in the NDPluginCircularBuff plugin
# $(MAX_THREADS) The maximum number of threads for plugins which can run in multiple threads. Defaults to 5.
# Create a netCDF file saving plugin
NDFileNetCDFConfigure("FileNetCDF1", 2000, 0, "FLIR10x", 0)
dbLoadRecords("NDFileNetCDF.template","P=FLIR10x:,R=netCDF1:,PORT=FileNetCDF1,ADDR=0,TIMEOUT=1,NDARRAY_PORT=FLIR10x")
# Create a TIFF file saving plugin
NDFileTIFFConfigure("FileTIFF1", 2000, 0, "FLIR10x", 0)
dbLoadRecords("NDFileTIFF.template", "P=FLIR10x:,R=TIFF1:,PORT=FileTIFF1,ADDR=0,TIMEOUT=1,NDARRAY_PORT=FLIR10x")
# Create a JPEG file saving plugin
NDFileJPEGConfigure("FileJPEG1", 2000, 0, "FLIR10x", 0)
dbLoadRecords("NDFileJPEG.template", "P=FLIR10x:,R=JPEG1:,PORT=FileJPEG1,ADDR=0,TIMEOUT=1,NDARRAY_PORT=FLIR10x")
# Create a NeXus file saving plugin
NDFileNexusConfigure("FileNexus1", 2000, 0, "FLIR10x", 0)
dbLoadRecords("NDFileNexus.template", "P=FLIR10x:,R=Nexus1:,PORT=FileNexus1,ADDR=0,TIMEOUT=1,NDARRAY_PORT=FLIR10x")
# Create an HDF5 file saving plugin
NDFileHDF5Configure("FileHDF1", 2000, 0, "FLIR10x", 0)
dbLoadRecords("NDFileHDF5.template", "P=FLIR10x:,R=HDF1:,PORT=FileHDF1,ADDR=0,TIMEOUT=1,XMLSIZE=2048,NDARRAY_PORT=FLIR10x")
# Create a Magick file saving plugin
#NDFileMagickConfigure("FileMagick1", $(QSIZE), 0, "$(PORT)", 0)
#dbLoadRecords("NDFileMagick.template","P=$(PREFIX),R=Magick1:,PORT=FileMagick1,ADDR=0,TIMEOUT=1,NDARRAY_PORT=$(PORT)")
# Create 4 ROI plugins
NDROIConfigure("ROI1", 2000, 0, "FLIR10x", 0, 0, 0, 0, 0, 5)
dbLoadRecords("NDROI.template", "P=FLIR10x:,R=ROI1:, PORT=ROI1,ADDR=0,TIMEOUT=1,NDARRAY_PORT=FLIR10x")
NDROIConfigure("ROI2", 2000, 0, "FLIR10x", 0, 0, 0, 0, 0, 5)
dbLoadRecords("NDROI.template", "P=FLIR10x:,R=ROI2:, PORT=ROI2,ADDR=0,TIMEOUT=1,NDARRAY_PORT=FLIR10x")
NDROIConfigure("ROI3", 2000, 0, "FLIR10x", 0, 0, 0, 0, 0, 5)
dbLoadRecords("NDROI.template", "P=FLIR10x:,R=ROI3:, PORT=ROI3,ADDR=0,TIMEOUT=1,NDARRAY_PORT=FLIR10x")
NDROIConfigure("ROI4", 2000, 0, "FLIR10x", 0, 0, 0, 0, 0, 5)
dbLoadRecords("NDROI.template", "P=FLIR10x:,R=ROI4:, PORT=ROI4,ADDR=0,TIMEOUT=1,NDARRAY_PORT=FLIR10x")
# Create 8 ROIStat plugins
NDROIStatConfigure("ROISTAT1", 2000, 0, "FLIR10x", 0, 8, 0, 0, 0, 0, 5)
dbLoadRecords("NDROIStat.template", "P=FLIR10x:,R=ROIStat1: ,PORT=ROISTAT1,ADDR=0,TIMEOUT=1,NDARRAY_PORT=FLIR10x,NCHANS=2048")
dbLoadRecords("NDROIStatN.template", "P=FLIR10x:,R=ROIStat1:1:,PORT=ROISTAT1,ADDR=0,TIMEOUT=1,NCHANS=2048")
dbLoadRecords("NDROIStatN.template", "P=FLIR10x:,R=ROIStat1:2:,PORT=ROISTAT1,ADDR=1,TIMEOUT=1,NCHANS=2048")
dbLoadRecords("NDROIStatN.template", "P=FLIR10x:,R=ROIStat1:3:,PORT=ROISTAT1,ADDR=2,TIMEOUT=1,NCHANS=2048")
dbLoadRecords("NDROIStatN.template", "P=FLIR10x:,R=ROIStat1:4:,PORT=ROISTAT1,ADDR=3,TIMEOUT=1,NCHANS=2048")
dbLoadRecords("NDROIStatN.template", "P=FLIR10x:,R=ROIStat1:5:,PORT=ROISTAT1,ADDR=4,TIMEOUT=1,NCHANS=2048")
dbLoadRecords("NDROIStatN.template", "P=FLIR10x:,R=ROIStat1:6:,PORT=ROISTAT1,ADDR=5,TIMEOUT=1,NCHANS=2048")
dbLoadRecords("NDROIStatN.template", "P=FLIR10x:,R=ROIStat1:7:,PORT=ROISTAT1,ADDR=6,TIMEOUT=1,NCHANS=2048")
dbLoadRecords("NDROIStatN.template", "P=FLIR10x:,R=ROIStat1:8:,PORT=ROISTAT1,ADDR=7,TIMEOUT=1,NCHANS=2048")
# Create a processing plugin
NDProcessConfigure("PROC1", 2000, 0, "FLIR10x", 0, 0, 0)
dbLoadRecords("NDProcess.template", "P=FLIR10x:,R=Proc1:, PORT=PROC1,ADDR=0,TIMEOUT=1,NDARRAY_PORT=FLIR10x")
# Create a TIFF file plugin to read dark and flatfield images into the processing plugin
NDFileTIFFConfigure("PROC1TIFF", 2000, 0, "FLIR10x", 0)
dbLoadRecords("NDFileTIFF.template", "P=FLIR10x:,R=Proc1:TIFF:,PORT=PROC1TIFF,ADDR=0,TIMEOUT=1,NDARRAY_PORT=FLIR10x")
# Create a scatter plugin
NDScatterConfigure("SCATTER1", 2000, 0, "FLIR10x", 0, 0, 0)
dbLoadRecords("NDScatter.template", "P=FLIR10x:,R=Scatter1:, PORT=SCATTER1,ADDR=0,TIMEOUT=1,NDARRAY_PORT=FLIR10x")
# Create a gather plugin with 8 ports
NDGatherConfigure("GATHER1", 2000, 0, 8, 0, 0)
dbLoadRecords("NDGather.template", "P=FLIR10x:,R=Gather1:, PORT=GATHER1,ADDR=0,TIMEOUT=1,NDARRAY_PORT=FLIR10x")
dbLoadRecords("NDGatherN.template", "P=FLIR10x:,R=Gather1:, N=1, PORT=GATHER1,ADDR=0,TIMEOUT=1,NDARRAY_PORT=FLIR10x")
dbLoadRecords("NDGatherN.template", "P=FLIR10x:,R=Gather1:, N=2, PORT=GATHER1,ADDR=1,TIMEOUT=1,NDARRAY_PORT=FLIR10x")
dbLoadRecords("NDGatherN.template", "P=FLIR10x:,R=Gather1:, N=3, PORT=GATHER1,ADDR=2,TIMEOUT=1,NDARRAY_PORT=FLIR10x")
dbLoadRecords("NDGatherN.template", "P=FLIR10x:,R=Gather1:, N=4, PORT=GATHER1,ADDR=3,TIMEOUT=1,NDARRAY_PORT=FLIR10x")
dbLoadRecords("NDGatherN.template", "P=FLIR10x:,R=Gather1:, N=5, PORT=GATHER1,ADDR=4,TIMEOUT=1,NDARRAY_PORT=FLIR10x")
dbLoadRecords("NDGatherN.template", "P=FLIR10x:,R=Gather1:, N=6, PORT=GATHER1,ADDR=5,TIMEOUT=1,NDARRAY_PORT=FLIR10x")
dbLoadRecords("NDGatherN.template", "P=FLIR10x:,R=Gather1:, N=7, PORT=GATHER1,ADDR=6,TIMEOUT=1,NDARRAY_PORT=FLIR10x")
dbLoadRecords("NDGatherN.template", "P=FLIR10x:,R=Gather1:, N=8, PORT=GATHER1,ADDR=7,TIMEOUT=1,NDARRAY_PORT=FLIR10x")
# Create 5 statistics plugins
NDStatsConfigure("STATS1", 2000, 0, "FLIR10x", 0, 0, 0, 0, 0, 5)
dbLoadRecords("NDStats.template", "P=FLIR10x:,R=Stats1:, PORT=STATS1,ADDR=0,TIMEOUT=1,HIST_SIZE=256,XSIZE=2048,YSIZE=2048,NCHANS=2048,NDARRAY_PORT=FLIR10x")
NDTimeSeriesConfigure("STATS1_TS", 2000, 0, "STATS1", 1, 23)
dbLoadRecords("/opt/epics/synApps/support/areaDetector-R3-12-1/ADCore/db/NDTimeSeries.template", "P=FLIR10x:,R=Stats1:TS:, PORT=STATS1_TS,ADDR=0,TIMEOUT=1,NDARRAY_PORT=STATS1,NDARRAY_ADDR=1,NCHANS=2048,ENABLED=1")
NDStatsConfigure("STATS2", 2000, 0, "ROI1", 0, 0, 0, 0, 0, 5)
dbLoadRecords("NDStats.template", "P=FLIR10x:,R=Stats2:, PORT=STATS2,ADDR=0,TIMEOUT=1,HIST_SIZE=256,XSIZE=2048,YSIZE=2048,NCHANS=2048,NDARRAY_PORT=FLIR10x")
NDTimeSeriesConfigure("STATS2_TS", 2000, 0, "STATS2", 1, 23)
dbLoadRecords("/opt/epics/synApps/support/areaDetector-R3-12-1/ADCore/db/NDTimeSeries.template", "P=FLIR10x:,R=Stats2:TS:, PORT=STATS2_TS,ADDR=0,TIMEOUT=1,NDARRAY_PORT=STATS2,NDARRAY_ADDR=1,NCHANS=2048,ENABLED=1")
NDStatsConfigure("STATS3", 2000, 0, "ROI2", 0, 0, 0, 0, 0, 5)
dbLoadRecords("NDStats.template", "P=FLIR10x:,R=Stats3:, PORT=STATS3,ADDR=0,TIMEOUT=1,HIST_SIZE=256,XSIZE=2048,YSIZE=2048,NCHANS=2048,NDARRAY_PORT=FLIR10x")
NDTimeSeriesConfigure("STATS3_TS", 2000, 0, "STATS3", 1, 23)
dbLoadRecords("/opt/epics/synApps/support/areaDetector-R3-12-1/ADCore/db/NDTimeSeries.template", "P=FLIR10x:,R=Stats3:TS:, PORT=STATS3_TS,ADDR=0,TIMEOUT=1,NDARRAY_PORT=STATS3,NDARRAY_ADDR=1,NCHANS=2048,ENABLED=1")
NDStatsConfigure("STATS4", 2000, 0, "ROI3", 0, 0, 0, 0, 0, 5)
dbLoadRecords("NDStats.template", "P=FLIR10x:,R=Stats4:, PORT=STATS4,ADDR=0,TIMEOUT=1,HIST_SIZE=256,XSIZE=2048,YSIZE=2048,NCHANS=2048,NDARRAY_PORT=FLIR10x")
NDTimeSeriesConfigure("STATS4_TS", 2000, 0, "STATS4", 1, 23)
dbLoadRecords("/opt/epics/synApps/support/areaDetector-R3-12-1/ADCore/db/NDTimeSeries.template", "P=FLIR10x:,R=Stats4:TS:, PORT=STATS4_TS,ADDR=0,TIMEOUT=1,NDARRAY_PORT=STATS4,NDARRAY_ADDR=1,NCHANS=2048,ENABLED=1")
NDStatsConfigure("STATS5", 2000, 0, "ROI4", 0, 0, 0, 0, 0, 5)
dbLoadRecords("NDStats.template", "P=FLIR10x:,R=Stats5:, PORT=STATS5,ADDR=0,TIMEOUT=1,HIST_SIZE=256,XSIZE=2048,YSIZE=2048,NCHANS=2048,NDARRAY_PORT=FLIR10x")
NDTimeSeriesConfigure("STATS5_TS", 2000, 0, "STATS5", 1, 23)
dbLoadRecords("/opt/epics/synApps/support/areaDetector-R3-12-1/ADCore/db/NDTimeSeries.template", "P=FLIR10x:,R=Stats5:TS:, PORT=STATS5_TS,ADDR=0,TIMEOUT=1,NDARRAY_PORT=STATS5,NDARRAY_ADDR=1,NCHANS=2048,ENABLED=1")
# Create a transform plugin
NDTransformConfigure("TRANS1", 2000, 0, "FLIR10x", 0, 0, 0, 0, 0, 5)
dbLoadRecords("NDTransform.template", "P=FLIR10x:,R=Trans1:, PORT=TRANS1,ADDR=0,TIMEOUT=1,NDARRAY_PORT=FLIR10x")
# Create an overlay plugin with 8 overlays
NDOverlayConfigure("OVER1", 2000, 0, "FLIR10x", 0, 8, 0, 0, 0, 0, 5)
dbLoadRecords("NDOverlay.template", "P=FLIR10x:,R=Over1:, PORT=OVER1,ADDR=0,TIMEOUT=1,NDARRAY_PORT=FLIR10x")
dbLoadRecords("NDOverlayN.template","P=FLIR10x:,R=Over1:1:,NAME=ROI1, SHAPE=1,O=Over1:,XPOS=FLIR10x:ROI1:MinX_RBV,YPOS=FLIR10x:ROI1:MinY_RBV,XSIZE=FLIR10x:ROI1:SizeX_RBV,YSIZE=FLIR10x:ROI1:SizeY_RBV,PORT=OVER1,ADDR=0,TIMEOUT=1")
dbLoadRecords("NDOverlayN.template","P=FLIR10x:,R=Over1:2:,NAME=ROI2, SHAPE=1,O=Over1:,XPOS=FLIR10x:ROI2:MinX_RBV,YPOS=FLIR10x:ROI2:MinY_RBV,XSIZE=FLIR10x:ROI2:SizeX_RBV,YSIZE=FLIR10x:ROI2:SizeY_RBV,PORT=OVER1,ADDR=1,TIMEOUT=1")
dbLoadRecords("NDOverlayN.template","P=FLIR10x:,R=Over1:3:,NAME=ROI3, SHAPE=1,O=Over1:,XPOS=FLIR10x:ROI3:MinX_RBV,YPOS=FLIR10x:ROI3:MinY_RBV,XSIZE=FLIR10x:ROI3:SizeX_RBV,YSIZE=FLIR10x:ROI3:SizeY_RBV,PORT=OVER1,ADDR=2,TIMEOUT=1")
dbLoadRecords("NDOverlayN.template","P=FLIR10x:,R=Over1:4:,NAME=ROI4, SHAPE=1,O=Over1:,XPOS=FLIR10x:ROI4:MinX_RBV,YPOS=FLIR10x:ROI4:MinY_RBV,XSIZE=FLIR10x:ROI4:SizeX_RBV,YSIZE=FLIR10x:ROI4:SizeY_RBV,PORT=OVER1,ADDR=3,TIMEOUT=1")
dbLoadRecords("NDOverlayN.template","P=FLIR10x:,R=Over1:5:,NAME=Cursor1,SHAPE=1,O=Over1:,XPOS=junk, YPOS=junk, XSIZE=junk, YSIZE=junk, PORT=OVER1,ADDR=4,TIMEOUT=1")
dbLoadRecords("NDOverlayN.template","P=FLIR10x:,R=Over1:6:,NAME=Cursor2,SHAPE=1,O=Over1:,XPOS=junk, YPOS=junk, XSIZE=junk, YSIZE=junk, PORT=OVER1,ADDR=5,TIMEOUT=1")
dbLoadRecords("NDOverlayN.template","P=FLIR10x:,R=Over1:7:,NAME=Box1, SHAPE=1,O=Over1:,XPOS=junk, YPOS=junk, XSIZE=junk, YSIZE=junk, PORT=OVER1,ADDR=6,TIMEOUT=1")
dbLoadRecords("NDOverlayN.template","P=FLIR10x:,R=Over1:8:,NAME=Box2, SHAPE=1,O=Over1:,XPOS=junk, YPOS=junk, XSIZE=junk, YSIZE=junk, PORT=OVER1,ADDR=7,TIMEOUT=1")
# Create 2 color conversion plugins
NDColorConvertConfigure("CC1", 2000, 0, "FLIR10x", 0, 0, 0, 0, 0, 5)
dbLoadRecords("NDColorConvert.template", "P=FLIR10x:,R=CC1:, PORT=CC1,ADDR=0,TIMEOUT=1,NDARRAY_PORT=FLIR10x")
NDColorConvertConfigure("CC2", 2000, 0, "FLIR10x", 0, 0, 0, 0, 0, 5)
dbLoadRecords("NDColorConvert.template", "P=FLIR10x:,R=CC2:, PORT=CC2,ADDR=0,TIMEOUT=1,NDARRAY_PORT=FLIR10x")
# Create a circular buffer plugin
NDCircularBuffConfigure("CB1", 2000, 0, "FLIR10x", 0, 500, 0)
dbLoadRecords("NDCircularBuff.template", "P=FLIR10x:,R=CB1:, PORT=CB1,ADDR=0,TIMEOUT=1,NDARRAY_PORT=FLIR10x")
# Create an NDAttribute plugin with 8 attributes
NDAttrConfigure("ATTR1", 2000, 0, "FLIR10x", 0, 8, 0, 0, 0)
dbLoadRecords("NDAttribute.template", "P=FLIR10x:,R=Attr1:, PORT=ATTR1,ADDR=0,TIMEOUT=1,NCHANS=2048,NDARRAY_PORT=FLIR10x")
dbLoadRecords("NDAttributeN.template", "P=FLIR10x:,R=Attr1:1:, PORT=ATTR1,ADDR=0,TIMEOUT=1,NCHANS=2048")
dbLoadRecords("NDAttributeN.template", "P=FLIR10x:,R=Attr1:2:, PORT=ATTR1,ADDR=1,TIMEOUT=1,NCHANS=2048")
dbLoadRecords("NDAttributeN.template", "P=FLIR10x:,R=Attr1:3:, PORT=ATTR1,ADDR=2,TIMEOUT=1,NCHANS=2048")
dbLoadRecords("NDAttributeN.template", "P=FLIR10x:,R=Attr1:4:, PORT=ATTR1,ADDR=3,TIMEOUT=1,NCHANS=2048")
dbLoadRecords("NDAttributeN.template", "P=FLIR10x:,R=Attr1:5:, PORT=ATTR1,ADDR=4,TIMEOUT=1,NCHANS=2048")
dbLoadRecords("NDAttributeN.template", "P=FLIR10x:,R=Attr1:6:, PORT=ATTR1,ADDR=5,TIMEOUT=1,NCHANS=2048")
dbLoadRecords("NDAttributeN.template", "P=FLIR10x:,R=Attr1:7:, PORT=ATTR1,ADDR=6,TIMEOUT=1,NCHANS=2048")
dbLoadRecords("NDAttributeN.template", "P=FLIR10x:,R=Attr1:8:, PORT=ATTR1,ADDR=7,TIMEOUT=1,NCHANS=2048")
NDTimeSeriesConfigure("ATTR1_TS", 2000, 0, "ATTR1", 1, 8)
dbLoadRecords("/opt/epics/synApps/support/areaDetector-R3-12-1/ADCore/db/NDTimeSeries.template", "P=FLIR10x:,R=Attr1:TS:, PORT=ATTR1_TS,ADDR=0,TIMEOUT=1,NDARRAY_PORT=ATTR1,NDARRAY_ADDR=1,NCHANS=2048,ENABLED=1")
# Create an FFT plugin
NDFFTConfigure("FFT1", 2000, 0, "FLIR10x", 0, 0, 0, 0, 0, 5)
dbLoadRecords("NDFFT.template", "P=FLIR10x:, R=FFT1:, PORT=FFT1, ADDR=0, TIMEOUT=1, NDARRAY_PORT=FLIR10x, NAME=FFT1, NCHANS=2048")
# Create 2 Codec plugins
NDCodecConfigure("CODEC1", 2000, 0, "FLIR10x", 0, 0, 0, 0, 0, 5)
dbLoadRecords("NDCodec.template", "P=FLIR10x:, R=Codec1:, PORT=CODEC1, ADDR=0, TIMEOUT=1, NDARRAY_PORT=FLIR10x")
NDCodecConfigure("CODEC2", 2000, 0, "FLIR10x", 0, 0, 0, 0, 0, 5)
dbLoadRecords("NDCodec.template", "P=FLIR10x:, R=Codec2:, PORT=CODEC2, ADDR=0, TIMEOUT=1, NDARRAY_PORT=FLIR10x")
# Create a bad pixel plugin
NDBadPixelConfigure("BADPIX1", 2000, 0, "FLIR10x", 0, 0, 0, 0, 0, 5)
dbLoadRecords("NDBadPixel.template", "P=FLIR10x:, R=BadPix1:, PORT=BADPIX1, ADDR=0, TIMEOUT=1, NDARRAY_PORT=FLIR10x")
set_requestfile_path("./")
set_requestfile_path("/opt/epics/synApps/support/areaDetector-R3-12-1/ADCore/db")
set_requestfile_path("/opt/epics/synApps/support/areaDetector-R3-12-1/ADCore/iocBoot")
set_requestfile_path("/opt/epics/synApps/support/autosave-master/db")
set_savefile_path("./autosave")
set_pass0_restoreFile("auto_settings.sav")
set_pass1_restoreFile("auto_settings.sav")
save_restoreSet_status_prefix("FLIR10x:")
dbLoadRecords("/opt/epics/synApps/support/autosave-master/db/save_restoreStatus.db", "P=FLIR10x:")
dbLoadRecords("/opt/epics/synApps/support/autosave-master/db/configMenu.db", "P=FLIR10x:, CONFIG=ADAutoSave")
# Optional: load NDPluginPva plugin
#NDPvaConfigure("PVA1", $(QSIZE), 0, "$(PORT)", 0, $(PREFIX)Pva1:Image, 0, 0, 0)
#dbLoadRecords("NDPva.template", "P=$(PREFIX),R=Pva1:, PORT=PVA1,ADDR=0,TIMEOUT=1,NDARRAY_PORT=$(PORT)")
# Must start PVA server if this is enabled
#startPVAServer
# Optional: load ffmpegServer plugin
#ffmpegServerConfigure(8081)
#ffmpegStreamConfigure("FfmStream1", 2, 0, "$(PORT)", 0, -1, 0)
#dbLoadRecords("$(FFMPEGSERVER)/db/ffmpegStream.template", "P=$(PREFIX),R=ffmstream1:,PORT=FfmStream1,NDARRAY_PORT=$(PORT)")
#ffmpegFileConfigure("FfmFile1", 16, 0, "$(PORT)", 0, -1, 0)
#dbLoadRecords("$(FFMPEGSERVER)/db/ffmpegFile.template", "P=$(PREFIX),R=ffmfile1:,PORT=FfmFile1,NDARRAY_PORT=$(PORT)")
# Optional: load NDPluginEdge plugin
#NDEdgeConfigure("EDGE1", $(QSIZE), 0, "$(PORT)", 0, 0, 0, 0)
#dbLoadRecords("$(ADPLUGINEDGE)/db/NDEdge.template", "P=$(PREFIX),R=Edge1:, PORT=EDGE1,ADDR=0,TIMEOUT=1,NDARRAY_PORT=$(PORT)")
#set_requestfile_path("$(ADPLUGINEDGE)/db")
# Optional: load NDPluginCV plugin
#NDCVConfigure("CV1", $(QSIZE), 0, "$(PORT)", 0, 0, 0, 0, 0, $(MAX_THREADS=5))
#dbLoadRecords("$(ADCOMPVISION)/db/NDCV.template", "P=$(PREFIX),R=CV1:, PORT=CV1,ADDR=0,TIMEOUT=1,NDARRAY_PORT=$(PORT)")
#set_requestfile_path("$(ADCOMPVISION)/adcvApp/Db")
# Optional: load NDPluginBar plugin
#NDBarConfigure("BAR1", $(QSIZE), 0, "$(PORT)", 0, 0, 0, 0, 0, $(MAX_THREADS=5))
#dbLoadRecords("$(ADPLUGINBAR)/db/NDBar.template", "P=$(PREFIX),R=Bar1:, PORT=BAR1,ADDR=0,TIMEOUT=1,NDARRAY_PORT=$(PORT)")
#set_requestfile_path("$(ADPLUGINBAR)/barApp/Db")
# Optional: load scan records
#dbLoadRecords("$(SSCAN)/sscanApp/Db/scan.db", "P=$(PREFIX),MAXPTS1=2000,MAXPTS2=200,MAXPTS3=20,MAXPTS4=10,MAXPTSH=10")
#set_requestfile_path("$(SSCAN)/sscanApp/Db")
# Optional: load sseq record for acquisition sequence
#dbLoadRecords("$(CALC)/calcApp/Db/sseqRecord.db", "P=$(PREFIX), S=AcquireSequence")
#set_requestfile_path("$(CALC)/calcApp/Db")
# Optional: load devIocStats records (requires DEVIOCSTATS module)
#dbLoadRecords("$(DEVIOCSTATS)/db/iocAdminSoft.db", "IOC=$(PREFIX)")
# Optional: load alive record (requires ALIVE module)
#dbLoadRecords("$(ALIVE)/aliveApp/Db/alive.db", "P=$(PREFIX),RHOST=192.168.1.254")
# Set the callback queue size to 5000, up from default of 2000 in base.
# This can be needed to avoid errors "callbackRequest: cbLow ring buffer full".
callbackSetQueueSize(5000)
set_requestfile_path("/opt/epics/synApps/support/areaDetector-R3-12-1/ADGenICam/GenICamApp/Db")
set_requestfile_path("/opt/epics/synApps/support/areaDetector-R3-12-1/ADSpinnaker/iocs/spinnakerIOC/../../spinnakerApp/Db")
iocInit()
Starting iocInit
############################################################################
## EPICS R3.15.9
## EPICS Base built Sep 13 2023
############################################################################
dbFindRecord for 'FLIR10x:Proc1:LowClipThresh.VAL' failed
dbFindRecord for 'FLIR10x:Proc1:LowClipValue.VAL' failed
dbFindRecord for 'FLIR10x:Proc1:HighClipThresh.VAL' failed
dbFindRecord for 'FLIR10x:Proc1:HighClipValue.VAL' failed
2023/09/14 01:27:04.976 asynPortDriver:drvUserCreate: addr=0, cannot find parameter SP_CONVERT_PIXEL_FORMAT
FLIR10x:cam1:ConvertPixelFormat devAsynInt32::initCommon drvUserCreate
2023/09/14 01:27:04.984 asynPortDriver:drvUserCreate: addr=0, cannot find parameter SP_STARTED_FRAME_COUNT
FLIR10x:cam1:StartedFrameCount devAsynInt32::initCommon drvUserCreate
2023/09/14 01:27:04.984 asynPortDriver:drvUserCreate: addr=0, cannot find parameter SP_DELIVERED_FRAME_COUNT
FLIR10x:cam1:DeliveredFrameCount devAsynInt32::initCommon drvUserCreate
2023/09/14 01:27:04.984 asynPortDriver:drvUserCreate: addr=0, cannot find parameter SP_RECEIVED_FRAME_COUNT
FLIR10x:cam1:ReceivedFrameCount devAsynInt32::initCommon drvUserCreate
2023/09/14 01:27:04.984 asynPortDriver:drvUserCreate: addr=0, cannot find parameter SP_INCOMPLETE_FRAME_COUNT
FLIR10x:cam1:IncompleteFrameCount devAsynInt32::initCommon drvUserCreate
2023/09/14 01:27:04.984 asynPortDriver:drvUserCreate: addr=0, cannot find parameter SP_LOST_FRAME_COUNT
FLIR10x:cam1:LostFrameCount devAsynInt32::initCommon drvUserCreate
2023/09/14 01:27:04.984 asynPortDriver:drvUserCreate: addr=0, cannot find parameter SP_DROPPED_FRAME_COUNT
FLIR10x:cam1:DroppedFrameCount devAsynInt32::initCommon drvUserCreate
2023/09/14 01:27:04.984 asynPortDriver:drvUserCreate: addr=0, cannot find parameter SP_INPUT_BUFFER_COUNT
FLIR10x:cam1:InputBufferCount devAsynInt32::initCommon drvUserCreate
2023/09/14 01:27:04.984 asynPortDriver:drvUserCreate: addr=0, cannot find parameter SP_OUTPUT_BUFFER_COUNT
FLIR10x:cam1:OutputBufferCount devAsynInt32::initCommon drvUserCreate
2023/09/14 01:27:04.984 asynPortDriver:drvUserCreate: addr=0, cannot find parameter SP_RECEIVED_PACKET_COUNT
FLIR10x:cam1:ReceivedPacketCount devAsynInt32::initCommon drvUserCreate
2023/09/14 01:27:04.984 asynPortDriver:drvUserCreate: addr=0, cannot find parameter SP_MISSED_PACKET_COUNT
FLIR10x:cam1:MissedPacketCount devAsynInt32::initCommon drvUserCreate
2023/09/14 01:27:04.984 asynPortDriver:drvUserCreate: addr=0, cannot find parameter SP_RESEND_REQUESTED_PACKET_COUNT
FLIR10x:cam1:ResendRequestedPacketCount devAsynInt32::initCommon drvUserCreate
2023/09/14 01:27:04.984 asynPortDriver:drvUserCreate: addr=0, cannot find parameter SP_RESEND_RECEIVED_PACKET_COUNT
FLIR10x:cam1:ResendReceivedPacketCount devAsynInt32::initCommon drvUserCreate
2023/09/14 01:27:05.005 asynPortDriver:drvUserCreate: addr=0, cannot find parameter SP_TIME_STAMP_MODE
FLIR10x:cam1:TimeStampMode devAsynInt32::initCommon drvUserCreate
2023/09/14 01:27:05.005 asynPortDriver:drvUserCreate: addr=0, cannot find parameter SP_UNIQUE_ID_MODE
FLIR10x:cam1:UniqueIdMode devAsynInt32::initCommon drvUserCreate
2023/09/14 01:27:05.009 asynPortDriver:drvUserCreate: addr=0, cannot find parameter SP_CONVERT_PIXEL_FORMAT
FLIR10x:cam1:ConvertPixelFormat_RBV devAsynInt32::initCommon drvUserCreate
2023/09/14 01:27:05.019 asynPortDriver:drvUserCreate: addr=0, cannot find parameter SP_TIME_STAMP_MODE
FLIR10x:cam1:TimeStampMode_RBV devAsynInt32::initCommon drvUserCreate
2023/09/14 01:27:05.019 asynPortDriver:drvUserCreate: addr=0, cannot find parameter SP_UNIQUE_ID_MODE
FLIR10x:cam1:UniqueIdMode_RBV devAsynInt32::initCommon drvUserCreate
dbFindRecord for 'FLIR10x:Proc1:LowClipThresh.VAL' failed
dbFindRecord for 'FLIR10x:Proc1:LowClipValue.VAL' failed
dbFindRecord for 'FLIR10x:Proc1:HighClipThresh.VAL' failed
dbFindRecord for 'FLIR10x:Proc1:HighClipValue.VAL' failed
iocRun: All initialization complete
# save things every thirty seconds
create_monitor_set("auto_settings.req", 30,"P=FLIR10x:")
save_restore:readReqFile: unable to open file sseq_settings.req. Exiting.
save_restore:readReqFile: unable to open file sseq_settings.req. Exiting.
save_restore:readReqFile: unable to open file sseq_settings.req. Exiting.
save_restore:readReqFile: unable to open file sseq_settings.req. Exiting.
save_restore:readReqFile: unable to open file sseq_settings.req. Exiting.
save_restore:readReqFile: unable to open file sseq_settings.req. Exiting.
save_restore:readReqFile: unable to open file sseq_settings.req. Exiting.
save_restore:readReqFile: unable to open file sseq_settings.req. Exiting.
save_restore:readReqFile: unable to open file sseq_settings.req. Exiting.
save_restore:readReqFile: unable to open file sseq_settings.req. Exiting.
save_restore:readReqFile: unable to open file sseq_settings.req. Exiting.
save_restore:readReqFile: unable to open file sseq_settings.req. Exiting.
save_restore:readReqFile: unable to open file sseq_settings.req. Exiting.
save_restore:readReqFile: unable to open file sseq_settings.req. Exiting.
save_restore:readReqFile: unable to open file sseq_settings.req. Exiting.
# Wait for enum callbacks to complete
epicsThreadSleep(1.0)
~Ben