Closed LeeYangLBLBCS closed 4 years ago
What happens if you change to Continuous mode, not Single mode?
I think I have seen a problem with being stuck in Acquiring. It is sufficient to restart the IOC, no need to power cycle the camera or reboot.
I thought I created an issue when I saw the problem, but I guess not. It happens in Internal trigger mode as well, I did not use External trigger mode when I saw the problem.
Please describe exactly what you do to create the problem. I don’t understand why you are in Single mode if you are using a burst of external triggers?
Mark
I havn't had any problem for many weeks using internal trigger, with any mode (single/multiple/continuous). I've also used the external mode prior to that occasionally and didn't have any problems either.
It happened when I used the external trigger at 50 Hz frame rate, 10 msec on, 10 msec off TTL pulse, a burst of 100 pulses. I think the image mode was in "Continuous" but I don't remember. Though I did see error messages in IOC scrolling by quickly, similar to this: 2020/08/22 19:09:57.700 ADSpinnaker::grabImage error GetImageStatus returned 9.
Then I tried to reverted back to the internal trigger to verify the single mode still works as before, but couldn't. I tried these: IOC restart, camera power cycle ethernet port disable/enable computer (ubuntu 18.04) reboot. I can still ping the camera normally though. I also checked the muex, epics> epicsMutexShowAll 1 ellCount(&mutexList) 37584 ellCount(&freeList) 0
So it doesn't appear to have mutex lock as you've seen earlier with PixelFormat=mono12Packed, though the symptom is the same.
I also tried to run spinview on a different windows PC. Everything worked normally.
On Sat, Aug 22, 2020 at 8:09 PM Mark Rivers notifications@github.com wrote:
What happens if you change to Continuous mode, not Single mode?
I think I have seen a problem with being stuck in Acquiring. It is sufficient to restart the IOC, no need to power cycle the camera or reboot.
I thought I created an issue when I saw the problem, but I guess not. It happens in Internal trigger mode as well, I did not use External trigger mode when I saw the problem.
Please describe exactly what you do to create the problem. I don’t understand why you are in Single mode if you are using a burst of external triggers?
Mark
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/areaDetector/ADSpinnaker/issues/6#issuecomment-678723055, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADSYGNGS3IKS46KK7IR5DOTSCCB6PANCNFSM4QIND25A .
-- Lee Yang Lawrence Berkeley National Lab 1 Cyclotron Road, MS 7H210 Berkeley, California 97320 office:(510)486-7320 fax:(510) 486-4633
I've always been getting some error messages all along while everything has been working, so I havn't paid attention to them. I am wondering if EPICS remembers the last bad state and is stuck in it. I attached the IOC start up messages in the file, where the particular errors are shown at the end of it: create_monitor_set("auto_settings.req", 30,"P=13SP1:") 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.
epicsThreadSleep(1.0) save_restore: Can't connect to all status PV(s) save_restore: connect failed for channel '13SP1:cam1:GC_BlackLevelAuto' save_restore: connect failed for channel '13SP1:cam1:GC_SaturationEnabled' save_restore: connect failed for channel '13SP1:cam1:GC_GammaEnabled' save_restore: connect failed for channel '13SP1:cam1:GC_Sharpness' save_restore: connect failed for channel '13SP1:cam1:GC_SharpnessAuto' save_restore: connect failed for channel '13SP1:cam1:GC_SharpnessEnabled' save_restore: connect failed for channel '13SP1:cam1:GC_TriDelayEnabled' auto_settings.sav: 1290 of 1297 PV's connected
epicsThreadSleep(1.0) save_restore: Can't connect to status PV(s) for list 'auto_settings.sav' 2020/08/22 20:26:48.642 Param[ACQ_PERIOD] GenICamFeature::write: node AcquisitionFrameRate is not writable
On Sat, Aug 22, 2020 at 8:25 PM Lee L. Yang llyang@lbl.gov wrote:
I havn't had any problem for many weeks using internal trigger, with any mode (single/multiple/continuous). I've also used the external mode prior to that occasionally and didn't have any problems either.
It happened when I used the external trigger at 50 Hz frame rate, 10 msec on, 10 msec off TTL pulse, a burst of 100 pulses. I think the image mode was in "Continuous" but I don't remember. Though I did see error messages in IOC scrolling by quickly, similar to this: 2020/08/22 19:09:57.700 ADSpinnaker::grabImage error GetImageStatus returned 9.
Then I tried to reverted back to the internal trigger to verify the single mode still works as before, but couldn't. I tried these: IOC restart, camera power cycle ethernet port disable/enable computer (ubuntu 18.04) reboot. I can still ping the camera normally though. I also checked the muex, epics> epicsMutexShowAll 1 ellCount(&mutexList) 37584 ellCount(&freeList) 0
So it doesn't appear to have mutex lock as you've seen earlier with PixelFormat=mono12Packed, though the symptom is the same.
I also tried to run spinview on a different windows PC. Everything worked normally.
On Sat, Aug 22, 2020 at 8:09 PM Mark Rivers notifications@github.com wrote:
What happens if you change to Continuous mode, not Single mode?
I think I have seen a problem with being stuck in Acquiring. It is sufficient to restart the IOC, no need to power cycle the camera or reboot.
I thought I created an issue when I saw the problem, but I guess not. It happens in Internal trigger mode as well, I did not use External trigger mode when I saw the problem.
Please describe exactly what you do to create the problem. I don’t understand why you are in Single mode if you are using a burst of external triggers?
Mark
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/areaDetector/ADSpinnaker/issues/6#issuecomment-678723055, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADSYGNGS3IKS46KK7IR5DOTSCCB6PANCNFSM4QIND25A .
-- Lee Yang Lawrence Berkeley National Lab 1 Cyclotron Road, MS 7H210 Berkeley, California 97320 office:(510)486-7320 fax:(510) 486-4633
-- Lee Yang Lawrence Berkeley National Lab 1 Cyclotron Road, MS 7H210 Berkeley, California 97320 office:(510)486-7320 fax:(510) 486-4633
MEDM Version 3.1.15: Loading aliased fonts................. < envPaths epicsEnvSet("ARCH","linux-x86_64") epicsEnvSet("IOC","iocSpinnaker") epicsEnvSet("TOP","/home/bl832user/epics/modules/synApps_6_1_epics7/support/areaDetector-R3-7/ADSpinnaker/iocs/spinnakerIOC") epicsEnvSet("SUPPORT","/home/bl832user/epics/modules/synApps_6_1_epics7/support") epicsEnvSet("MOTOR","/home/bl832user/epics/modules/synApps_6_1_epics7/support/motor-R7-2-1") epicsEnvSet("ASYN","/home/bl832user/epics/modules/synApps_6_1_epics7/support/asyn-R4-38") epicsEnvSet("CALC","/home/bl832user/epics/modules/synApps_6_1_epics7/support/calc-R3-7-4") epicsEnvSet("EPICS_BASE","/home/bl832user/epics/base-7.0.4") epicsEnvSet("MOTOR_PV","/home/bl832user/epics/modules/motorPV/iocs/pvIOC/../..") epicsEnvSet("ADCORE","/home/bl832user/epics/modules/synApps_6_1_epics7/support/areaDetector-R3-7/ADCore") epicsEnvSet("ADGENICAM","/home/bl832user/epics/modules/synApps_6_1_epics7/support/areaDetector-R3-7/ADGenICam") epicsEnvSet("ADSPINNAKER","/home/bl832user/epics/modules/synApps_6_1_epics7/support/areaDetector-R3-7/ADSpinnaker") epicsEnvSet("HDF5_PLUGIN_PATH","/home/bl832user/epics/modules/synApps_6_1_epics7/support/areaDetector-R3-7/ADSupport/lib/linux-x86_64") epicsEnvSet("EPICS_DISPLAY_PATH","/home/bl832user/epics/modules/synApps_6_1_epics7/support/areaDetector-R3-7/ADCore/ADApp/op/adl/") errlogInit(20000) dbLoadDatabase("/home/bl832user/epics/modules/synApps_6_1_epics7/support/areaDetector-R3-7/ADSpinnaker/iocs/spinnakerIOC/dbd/spinnakerApp.dbd") spinnakerApp_registerRecordDeviceDriver(pdbbase)
epicsEnvSet("CAMERA_ID", "19333188")
epicsEnvSet("GENICAM_DB_FILE", "/home/bl832user/epics/modules/synApps_6_1_epics7/support/areaDetector-R3-7/ADGenICam/db/FLIR_ORX_10G_51S5M.template") < st.cmd.base
epicsEnvSet("PREFIX", "13SP1:")
epicsEnvSet("PORT", "SP1")
epicsEnvSet("QSIZE", "2000")
epicsEnvSet("XSIZE", "2048")
epicsEnvSet("YSIZE", "2048")
epicsEnvSet("NCHANS", "2048")
epicsEnvSet("CBUFFS", "500")
epicsEnvSet("EPICS_DB_INCLUDE_PATH", "/home/bl832user/epics/modules/synApps_6_1_epics7/support/areaDetector-R3-7/ADCore/db:/home/bl832user/epics/modules/synApps_6_1_epics7/support/areaDetector-R3-7/ADGenICam/db:/home/bl832user/epics/modules/synApps_6_1_epics7/support/areaDetector-R3-7/ADSpinnaker/db")
epicsEnvSet("NELEMENTS", "12592912")
ADSpinnakerConfig("SP1", 19333188, 0x1, 0) asynSetTraceIOMask(SP1, 0, 2)
dbLoadRecords("/home/bl832user/epics/modules/synApps_6_1_epics7/support/areaDetector-R3-7/ADSpinnaker/db/spinnaker.template", "P=13SP1:,R=cam1:,PORT=SP1")
dbLoadRecords("/home/bl832user/epics/modules/synApps_6_1_epics7/support/areaDetector-R3-7/ADGenICam/db/FLIR_ORX_10G_51S5M.template", "P=13SP1:,R=cam1:,PORT=SP1")
NDStdArraysConfigure("Image1", 5, 0, "SP1", 0, 0)
dbLoadRecords("/home/bl832user/epics/modules/synApps_6_1_epics7/support/areaDetector-R3-7/ADCore/db/NDStdArrays.template", "P=13SP1:,R=image1:,PORT=Image1,ADDR=0,TIMEOUT=1,NDARRAY_PORT=SP1,TYPE=Int16,FTVL=SHORT,NELEMENTS=12592912")
< /home/bl832user/epics/modules/synApps_6_1_epics7/support/areaDetector-R3-7/ADCore/iocBoot/commonPlugins.cmd
NDFileNetCDFConfigure("FileNetCDF1", 2000, 0, "SP1", 0) dbLoadRecords("NDFileNetCDF.template","P=13SP1:,R=netCDF1:,PORT=FileNetCDF1,ADDR=0,TIMEOUT=1,NDARRAY_PORT=SP1")
NDFileTIFFConfigure("FileTIFF1", 2000, 0, "SP1", 0) dbLoadRecords("NDFileTIFF.template", "P=13SP1:,R=TIFF1:,PORT=FileTIFF1,ADDR=0,TIMEOUT=1,NDARRAY_PORT=SP1")
NDFileJPEGConfigure("FileJPEG1", 2000, 0, "SP1", 0) dbLoadRecords("NDFileJPEG.template", "P=13SP1:,R=JPEG1:,PORT=FileJPEG1,ADDR=0,TIMEOUT=1,NDARRAY_PORT=SP1")
NDFileNexusConfigure("FileNexus1", 2000, 0, "SP1", 0) dbLoadRecords("NDFileNexus.template", "P=13SP1:,R=Nexus1:,PORT=FileNexus1,ADDR=0,TIMEOUT=1,NDARRAY_PORT=SP1")
NDFileHDF5Configure("FileHDF1", 2000, 0, "SP1", 0) dbLoadRecords("NDFileHDF5.template", "P=13SP1:,R=HDF1:,PORT=FileHDF1,ADDR=0,TIMEOUT=1,XMLSIZE=2048,NDARRAY_PORT=SP1")
NDROIConfigure("ROI1", 2000, 0, "SP1", 0, 0, 0, 0, 0, 5) dbLoadRecords("NDROI.template", "P=13SP1:,R=ROI1:, PORT=ROI1,ADDR=0,TIMEOUT=1,NDARRAY_PORT=SP1") NDROIConfigure("ROI2", 2000, 0, "SP1", 0, 0, 0, 0, 0, 5) dbLoadRecords("NDROI.template", "P=13SP1:,R=ROI2:, PORT=ROI2,ADDR=0,TIMEOUT=1,NDARRAY_PORT=SP1") NDROIConfigure("ROI3", 2000, 0, "SP1", 0, 0, 0, 0, 0, 5) dbLoadRecords("NDROI.template", "P=13SP1:,R=ROI3:, PORT=ROI3,ADDR=0,TIMEOUT=1,NDARRAY_PORT=SP1") NDROIConfigure("ROI4", 2000, 0, "SP1", 0, 0, 0, 0, 0, 5) dbLoadRecords("NDROI.template", "P=13SP1:,R=ROI4:, PORT=ROI4,ADDR=0,TIMEOUT=1,NDARRAY_PORT=SP1")
NDROIStatConfigure("ROISTAT1", 2000, 0, "SP1", 0, 8, 0, 0, 0, 0, 5) dbLoadRecords("NDROIStat.template", "P=13SP1:,R=ROIStat1: ,PORT=ROISTAT1,ADDR=0,TIMEOUT=1,NDARRAY_PORT=SP1,NCHANS=2048") dbLoadRecords("NDROIStatN.template", "P=13SP1:,R=ROIStat1:1:,PORT=ROISTAT1,ADDR=0,TIMEOUT=1,NCHANS=2048") dbLoadRecords("NDROIStatN.template", "P=13SP1:,R=ROIStat1:2:,PORT=ROISTAT1,ADDR=1,TIMEOUT=1,NCHANS=2048") dbLoadRecords("NDROIStatN.template", "P=13SP1:,R=ROIStat1:3:,PORT=ROISTAT1,ADDR=2,TIMEOUT=1,NCHANS=2048") dbLoadRecords("NDROIStatN.template", "P=13SP1:,R=ROIStat1:4:,PORT=ROISTAT1,ADDR=3,TIMEOUT=1,NCHANS=2048") dbLoadRecords("NDROIStatN.template", "P=13SP1:,R=ROIStat1:5:,PORT=ROISTAT1,ADDR=4,TIMEOUT=1,NCHANS=2048") dbLoadRecords("NDROIStatN.template", "P=13SP1:,R=ROIStat1:6:,PORT=ROISTAT1,ADDR=5,TIMEOUT=1,NCHANS=2048") dbLoadRecords("NDROIStatN.template", "P=13SP1:,R=ROIStat1:7:,PORT=ROISTAT1,ADDR=6,TIMEOUT=1,NCHANS=2048") dbLoadRecords("NDROIStatN.template", "P=13SP1:,R=ROIStat1:8:,PORT=ROISTAT1,ADDR=7,TIMEOUT=1,NCHANS=2048")
NDProcessConfigure("PROC1", 2000, 0, "SP1", 0, 0, 0) dbLoadRecords("NDProcess.template", "P=13SP1:,R=Proc1:, PORT=PROC1,ADDR=0,TIMEOUT=1,NDARRAY_PORT=SP1")
NDFileTIFFConfigure("PROC1TIFF", 2000, 0, "SP1", 0) dbLoadRecords("NDFileTIFF.template", "P=13SP1:,R=Proc1:TIFF:,PORT=PROC1TIFF,ADDR=0,TIMEOUT=1,NDARRAY_PORT=SP1")
NDScatterConfigure("SCATTER1", 2000, 0, "SP1", 0, 0, 0) dbLoadRecords("NDScatter.template", "P=13SP1:,R=Scatter1:, PORT=SCATTER1,ADDR=0,TIMEOUT=1,NDARRAY_PORT=SP1")
NDGatherConfigure("GATHER1", 2000, 0, 8, 0, 0) dbLoadRecords("NDGather.template", "P=13SP1:,R=Gather1:, PORT=GATHER1,ADDR=0,TIMEOUT=1,NDARRAY_PORT=SP1") dbLoadRecords("NDGatherN.template", "P=13SP1:,R=Gather1:, N=1, PORT=GATHER1,ADDR=0,TIMEOUT=1,NDARRAY_PORT=SP1") dbLoadRecords("NDGatherN.template", "P=13SP1:,R=Gather1:, N=2, PORT=GATHER1,ADDR=1,TIMEOUT=1,NDARRAY_PORT=SP1") dbLoadRecords("NDGatherN.template", "P=13SP1:,R=Gather1:, N=3, PORT=GATHER1,ADDR=2,TIMEOUT=1,NDARRAY_PORT=SP1") dbLoadRecords("NDGatherN.template", "P=13SP1:,R=Gather1:, N=4, PORT=GATHER1,ADDR=3,TIMEOUT=1,NDARRAY_PORT=SP1") dbLoadRecords("NDGatherN.template", "P=13SP1:,R=Gather1:, N=5, PORT=GATHER1,ADDR=4,TIMEOUT=1,NDARRAY_PORT=SP1") dbLoadRecords("NDGatherN.template", "P=13SP1:,R=Gather1:, N=6, PORT=GATHER1,ADDR=5,TIMEOUT=1,NDARRAY_PORT=SP1") dbLoadRecords("NDGatherN.template", "P=13SP1:,R=Gather1:, N=7, PORT=GATHER1,ADDR=6,TIMEOUT=1,NDARRAY_PORT=SP1") dbLoadRecords("NDGatherN.template", "P=13SP1:,R=Gather1:, N=8, PORT=GATHER1,ADDR=7,TIMEOUT=1,NDARRAY_PORT=SP1")
NDStatsConfigure("STATS1", 2000, 0, "SP1", 0, 0, 0, 0, 0, 5) dbLoadRecords("NDStats.template", "P=13SP1:,R=Stats1:, PORT=STATS1,ADDR=0,TIMEOUT=1,HIST_SIZE=256,XSIZE=2048,YSIZE=2048,NCHANS=2048,NDARRAY_PORT=SP1") NDTimeSeriesConfigure("STATS1_TS", 2000, 0, "STATS1", 1, 23) dbLoadRecords("/home/bl832user/epics/modules/synApps_6_1_epics7/support/areaDetector-R3-7/ADCore/db/NDTimeSeries.template", "P=13SP1:,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=13SP1:,R=Stats2:, PORT=STATS2,ADDR=0,TIMEOUT=1,HIST_SIZE=256,XSIZE=2048,YSIZE=2048,NCHANS=2048,NDARRAY_PORT=SP1") NDTimeSeriesConfigure("STATS2_TS", 2000, 0, "STATS2", 1, 23) dbLoadRecords("/home/bl832user/epics/modules/synApps_6_1_epics7/support/areaDetector-R3-7/ADCore/db/NDTimeSeries.template", "P=13SP1:,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=13SP1:,R=Stats3:, PORT=STATS3,ADDR=0,TIMEOUT=1,HIST_SIZE=256,XSIZE=2048,YSIZE=2048,NCHANS=2048,NDARRAY_PORT=SP1") NDTimeSeriesConfigure("STATS3_TS", 2000, 0, "STATS3", 1, 23) dbLoadRecords("/home/bl832user/epics/modules/synApps_6_1_epics7/support/areaDetector-R3-7/ADCore/db/NDTimeSeries.template", "P=13SP1:,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=13SP1:,R=Stats4:, PORT=STATS4,ADDR=0,TIMEOUT=1,HIST_SIZE=256,XSIZE=2048,YSIZE=2048,NCHANS=2048,NDARRAY_PORT=SP1") NDTimeSeriesConfigure("STATS4_TS", 2000, 0, "STATS4", 1, 23) dbLoadRecords("/home/bl832user/epics/modules/synApps_6_1_epics7/support/areaDetector-R3-7/ADCore/db/NDTimeSeries.template", "P=13SP1:,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=13SP1:,R=Stats5:, PORT=STATS5,ADDR=0,TIMEOUT=1,HIST_SIZE=256,XSIZE=2048,YSIZE=2048,NCHANS=2048,NDARRAY_PORT=SP1") NDTimeSeriesConfigure("STATS5_TS", 2000, 0, "STATS5", 1, 23) dbLoadRecords("/home/bl832user/epics/modules/synApps_6_1_epics7/support/areaDetector-R3-7/ADCore/db/NDTimeSeries.template", "P=13SP1:,R=Stats5:TS:, PORT=STATS5_TS,ADDR=0,TIMEOUT=1,NDARRAY_PORT=STATS5,NDARRAY_ADDR=1,NCHANS=2048,ENABLED=1")
NDTransformConfigure("TRANS1", 2000, 0, "SP1", 0, 0, 0, 0, 0, 5) dbLoadRecords("NDTransform.template", "P=13SP1:,R=Trans1:, PORT=TRANS1,ADDR=0,TIMEOUT=1,NDARRAY_PORT=SP1")
NDOverlayConfigure("OVER1", 2000, 0, "SP1", 0, 8, 0, 0, 0, 0, 5) dbLoadRecords("NDOverlay.template", "P=13SP1:,R=Over1:, PORT=OVER1,ADDR=0,TIMEOUT=1,NDARRAY_PORT=SP1") dbLoadRecords("NDOverlayN.template","P=13SP1:,R=Over1:1:,NAME=ROI1, SHAPE=1,O=Over1:,XPOS=13SP1:ROI1:MinX_RBV,YPOS=13SP1:ROI1:MinY_RBV,XSIZE=13SP1:ROI1:SizeX_RBV,YSIZE=13SP1:ROI1:SizeY_RBV,PORT=OVER1,ADDR=0,TIMEOUT=1") dbLoadRecords("NDOverlayN.template","P=13SP1:,R=Over1:2:,NAME=ROI2, SHAPE=1,O=Over1:,XPOS=13SP1:ROI2:MinX_RBV,YPOS=13SP1:ROI2:MinY_RBV,XSIZE=13SP1:ROI2:SizeX_RBV,YSIZE=13SP1:ROI2:SizeY_RBV,PORT=OVER1,ADDR=1,TIMEOUT=1") dbLoadRecords("NDOverlayN.template","P=13SP1:,R=Over1:3:,NAME=ROI3, SHAPE=1,O=Over1:,XPOS=13SP1:ROI3:MinX_RBV,YPOS=13SP1:ROI3:MinY_RBV,XSIZE=13SP1:ROI3:SizeX_RBV,YSIZE=13SP1:ROI3:SizeY_RBV,PORT=OVER1,ADDR=2,TIMEOUT=1") dbLoadRecords("NDOverlayN.template","P=13SP1:,R=Over1:4:,NAME=ROI4, SHAPE=1,O=Over1:,XPOS=13SP1:ROI4:MinX_RBV,YPOS=13SP1:ROI4:MinY_RBV,XSIZE=13SP1:ROI4:SizeX_RBV,YSIZE=13SP1:ROI4:SizeY_RBV,PORT=OVER1,ADDR=3,TIMEOUT=1") dbLoadRecords("NDOverlayN.template","P=13SP1:,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=13SP1:,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=13SP1:,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=13SP1:,R=Over1:8:,NAME=Box2, SHAPE=1,O=Over1:,XPOS=junk, YPOS=junk, XSIZE=junk, YSIZE=junk, PORT=OVER1,ADDR=7,TIMEOUT=1")
NDColorConvertConfigure("CC1", 2000, 0, "SP1", 0, 0, 0, 0, 0, 5) dbLoadRecords("NDColorConvert.template", "P=13SP1:,R=CC1:, PORT=CC1,ADDR=0,TIMEOUT=1,NDARRAY_PORT=SP1") NDColorConvertConfigure("CC2", 2000, 0, "SP1", 0, 0, 0, 0, 0, 5) dbLoadRecords("NDColorConvert.template", "P=13SP1:,R=CC2:, PORT=CC2,ADDR=0,TIMEOUT=1,NDARRAY_PORT=SP1")
NDCircularBuffConfigure("CB1", 2000, 0, "SP1", 0, 500, 0) dbLoadRecords("NDCircularBuff.template", "P=13SP1:,R=CB1:, PORT=CB1,ADDR=0,TIMEOUT=1,NDARRAY_PORT=SP1")
NDAttrConfigure("ATTR1", 2000, 0, "SP1", 0, 8, 0, 0, 0) dbLoadRecords("NDAttribute.template", "P=13SP1:,R=Attr1:, PORT=ATTR1,ADDR=0,TIMEOUT=1,NCHANS=2048,NDARRAY_PORT=SP1") dbLoadRecords("NDAttributeN.template", "P=13SP1:,R=Attr1:1:, PORT=ATTR1,ADDR=0,TIMEOUT=1,NCHANS=2048") dbLoadRecords("NDAttributeN.template", "P=13SP1:,R=Attr1:2:, PORT=ATTR1,ADDR=1,TIMEOUT=1,NCHANS=2048") dbLoadRecords("NDAttributeN.template", "P=13SP1:,R=Attr1:3:, PORT=ATTR1,ADDR=2,TIMEOUT=1,NCHANS=2048") dbLoadRecords("NDAttributeN.template", "P=13SP1:,R=Attr1:4:, PORT=ATTR1,ADDR=3,TIMEOUT=1,NCHANS=2048") dbLoadRecords("NDAttributeN.template", "P=13SP1:,R=Attr1:5:, PORT=ATTR1,ADDR=4,TIMEOUT=1,NCHANS=2048") dbLoadRecords("NDAttributeN.template", "P=13SP1:,R=Attr1:6:, PORT=ATTR1,ADDR=5,TIMEOUT=1,NCHANS=2048") dbLoadRecords("NDAttributeN.template", "P=13SP1:,R=Attr1:7:, PORT=ATTR1,ADDR=6,TIMEOUT=1,NCHANS=2048") dbLoadRecords("NDAttributeN.template", "P=13SP1:,R=Attr1:8:, PORT=ATTR1,ADDR=7,TIMEOUT=1,NCHANS=2048") NDTimeSeriesConfigure("ATTR1_TS", 2000, 0, "ATTR1", 1, 8) dbLoadRecords("/home/bl832user/epics/modules/synApps_6_1_epics7/support/areaDetector-R3-7/ADCore/db/NDTimeSeries.template", "P=13SP1:,R=Attr1:TS:, PORT=ATTR1_TS,ADDR=0,TIMEOUT=1,NDARRAY_PORT=ATTR1,NDARRAY_ADDR=1,NCHANS=2048,ENABLED=1")
NDFFTConfigure("FFT1", 2000, 0, "SP1", 0, 0, 0, 0, 0, 5) dbLoadRecords("NDFFT.template", "P=13SP1:, R=FFT1:, PORT=FFT1, ADDR=0, TIMEOUT=1, NDARRAY_PORT=SP1, NAME=FFT1, NCHANS=2048")
NDCodecConfigure("CODEC1", 2000, 0, "SP1", 0, 0, 0, 0, 0, 5) dbLoadRecords("NDCodec.template", "P=13SP1:, R=Codec1:, PORT=CODEC1, ADDR=0, TIMEOUT=1, NDARRAY_PORT=SP1") NDCodecConfigure("CODEC2", 2000, 0, "SP1", 0, 0, 0, 0, 0, 5) dbLoadRecords("NDCodec.template", "P=13SP1:, R=Codec2:, PORT=CODEC2, ADDR=0, TIMEOUT=1, NDARRAY_PORT=SP1")
set_requestfile_path("./") set_requestfile_path("/home/bl832user/epics/modules/synApps_6_1_epics7/support/areaDetector-R3-7/ADCore/ADApp/Db") set_requestfile_path("/home/bl832user/epics/modules/synApps_6_1_epics7/support/areaDetector-R3-7/ADCore/iocBoot") set_savefile_path("./autosave") set_pass0_restoreFile("auto_settings.sav") set_pass1_restoreFile("auto_settings.sav") save_restoreSet_status_prefix("13SP1:") )acLib: macro AUTOSAVE is undefined (expanding string dbLoadRecords("$(AUTOSAVE)/asApp/Db/save_restoreStatus.db", "P=$(PREFIX)")
callbackSetQueueSize(5000) set_requestfile_path("/home/bl832user/epics/modules/synApps_6_1_epics7/support/areaDetector-R3-7/ADGenICam/GenICamApp/Db") set_requestfile_path("/home/bl832user/epics/modules/synApps_6_1_epics7/support/areaDetector-R3-7/ADSpinnaker/spinnakerApp/Db") iocInit() Starting iocInit ############################################################################
############################################################################ reboot_restore: entry for file 'auto_settings.sav' reboot_restore: Found filename 'auto_settings.sav' in restoreFileList. restoring from './autosave/auto_settings.sav' at initHookState 6 (before record/device init) 7 PVs had no saved value. reboot_restore: done with file 'auto_settings.sav'
reboot_restore: entry for file 'auto_settings.sav' reboot_restore: Found filename 'auto_settings.sav' in restoreFileList. restoring from './autosave/auto_settings.sav' at initHookState 7 (after record/device init) 7 PVs had no saved value. reboot_restore: done with file 'auto_settings.sav'
iocRun: All initialization complete
create_monitor_set("auto_settings.req", 30,"P=13SP1:") 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.
epicsThreadSleep(1.0) save_restore: Can't connect to all status PV(s) save_restore: connect failed for channel '13SP1:cam1:GC_BlackLevelAuto' save_restore: connect failed for channel '13SP1:cam1:GC_SaturationEnabled' save_restore: connect failed for channel '13SP1:cam1:GC_GammaEnabled' save_restore: connect failed for channel '13SP1:cam1:GC_Sharpness' save_restore: connect failed for channel '13SP1:cam1:GC_SharpnessAuto' save_restore: connect failed for channel '13SP1:cam1:GC_SharpnessEnabled' save_restore: connect failed for channel '13SP1:cam1:GC_TriDelayEnabled' auto_settings.sav: 1290 of 1297 PV's connected
epicsThreadSleep(1.0) save_restore: Can't connect to status PV(s) for list 'auto_settings.sav' 2020/08/22 20:26:48.642 Param[ACQ_PERIOD] GenICamFeature::write: node AcquisitionFrameRate is not writable
epics> 2020/08/22 20:26:59.426 ADSpinnaker::grabImage error GetImageStatus returned 9
One more piece of information I forgot to mention:I left TIFF and HDF5 file plugin turned on, with autosave enabled. This could be the reason to cause the problem as the disk is not able to write full size image at 50 Hz, esp. with both files written at the same time.I attached screen shots for both of these file setup screens:
It turns out the parameter "DeviceLinkThroughputLimit" lost its value for some reason. It defaults to 848175339 (800M?) after any power loss, or maybe some other hiccups. Only if I set it to about 300M (348175339) will it work again.
This parameter is on Feature screen #2.
I can't find a way to save its value, either from EPICS or Spinview (v1.20).
On Sat, Aug 22, 2020 at 8:32 PM Lee L. Yang llyang@lbl.gov wrote:
I've always been getting some error messages all along while everything has been working, so I havn't paid attention to them. I am wondering if EPICS remembers the last bad state and is stuck in it. I attached the IOC start up messages in the file, where the particular errors are shown at the end of it: create_monitor_set("auto_settings.req", 30,"P=13SP1:") 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) save_restore: Can't connect to all status PV(s) save_restore: connect failed for channel '13SP1:cam1:GC_BlackLevelAuto' save_restore: connect failed for channel '13SP1:cam1:GC_SaturationEnabled' save_restore: connect failed for channel '13SP1:cam1:GC_GammaEnabled' save_restore: connect failed for channel '13SP1:cam1:GC_Sharpness' save_restore: connect failed for channel '13SP1:cam1:GC_SharpnessAuto' save_restore: connect failed for channel '13SP1:cam1:GC_SharpnessEnabled' save_restore: connect failed for channel '13SP1:cam1:GC_TriDelayEnabled' auto_settings.sav: 1290 of 1297 PV's connected
Wait for callbacks on the property limits (DRVL, DRVH) to complete
epicsThreadSleep(1.0) save_restore: Can't connect to status PV(s) for list 'auto_settings.sav' 2020/08/22 20:26:48.642 Param[ACQ_PERIOD] GenICamFeature::write: node AcquisitionFrameRate is not writable
On Sat, Aug 22, 2020 at 8:25 PM Lee L. Yang llyang@lbl.gov wrote:
I havn't had any problem for many weeks using internal trigger, with any mode (single/multiple/continuous). I've also used the external mode prior to that occasionally and didn't have any problems either.
It happened when I used the external trigger at 50 Hz frame rate, 10 msec on, 10 msec off TTL pulse, a burst of 100 pulses. I think the image mode was in "Continuous" but I don't remember. Though I did see error messages in IOC scrolling by quickly, similar to this: 2020/08/22 19:09:57.700 ADSpinnaker::grabImage error GetImageStatus returned 9.
Then I tried to reverted back to the internal trigger to verify the single mode still works as before, but couldn't. I tried these: IOC restart, camera power cycle ethernet port disable/enable computer (ubuntu 18.04) reboot. I can still ping the camera normally though. I also checked the muex, epics> epicsMutexShowAll 1 ellCount(&mutexList) 37584 ellCount(&freeList) 0
So it doesn't appear to have mutex lock as you've seen earlier with PixelFormat=mono12Packed, though the symptom is the same.
I also tried to run spinview on a different windows PC. Everything worked normally.
On Sat, Aug 22, 2020 at 8:09 PM Mark Rivers notifications@github.com wrote:
What happens if you change to Continuous mode, not Single mode?
I think I have seen a problem with being stuck in Acquiring. It is sufficient to restart the IOC, no need to power cycle the camera or reboot.
I thought I created an issue when I saw the problem, but I guess not. It happens in Internal trigger mode as well, I did not use External trigger mode when I saw the problem.
Please describe exactly what you do to create the problem. I don’t understand why you are in Single mode if you are using a burst of external triggers?
Mark
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/areaDetector/ADSpinnaker/issues/6#issuecomment-678723055, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADSYGNGS3IKS46KK7IR5DOTSCCB6PANCNFSM4QIND25A .
-- Lee Yang Lawrence Berkeley National Lab 1 Cyclotron Road, MS 7H210 Berkeley, California 97320 office:(510)486-7320 fax:(510) 486-4633
-- Lee Yang Lawrence Berkeley National Lab 1 Cyclotron Road, MS 7H210 Berkeley, California 97320 office:(510)486-7320 fax:(510) 486-4633
-- Lee Yang Lawrence Berkeley National Lab 1 Cyclotron Road, MS 7H210 Berkeley, California 97320 office:(510)486-7320 fax:(510) 486-4633
It is easy to save its value. You just need to add this line to auto_settings.req
in the iocSpinnaker directory (or whatever you have called your IOC boot directory).
$(P)$(R)GC_DevLinThrLimit
However, it appears to me that something must be wrong with your system or some other settings. 848175339 should work fine. In fact if you set it to less than this then you will not be able to run the camera at its maximum speed.
I just tested it on my Oryx camera. If I set GC_DevLinThrLimit to 848175339 and then request 164 frames/s for the FrameRate I get the maximum supported frame rate of 163.121 frames/s. However, if I set GC_DevLinThrLimit to 348175339 then I can only get 69.072 frames/s when I request 164 frames/s.
Have you set the system Ethernet buffer settings large enough, and did they persist through a reboot?
Here are the screen shots of my Oryx screens when I am running the camera at its maximum rate of 163.121 frames/s.
This is the main screen. Note that PixelFormat is Mono8, and FrameRate_RBV is 163.121.
This is the Features #2 screen. Note that AdcBitDepth is Bit8, and GC_DevLinThrLimit is 1250000000. That is the full bandwidth of 10 GigE. The current throughput being used (GC_DevLinCurThr_RBV) is 822399201.
I am not getting any error messages on the IOC console when streaming at that rate (no dropped frames).
The error message you were getting was:
2020/08/22 19:09:57.700 ADSpinnaker::grabImage error GetImageStatus returned 9.
From SpinnakerDefs.h this is what ImageStatus=9 means:
IMAGE_DATA_INCOMPLETE = 9, /**< Image data is incomplete. */
That means you are dropping packets when you increase your network bandwidth above some value. That should not happen. Something is wrong with your system, it is not happening for me.
Indeed, there is something wrong with this particular computer. After reinstalling the same software, with the same 10G NIC, I got the same frame rate, 162 f/s.
On Mon, Aug 24, 2020 at 3:57 PM Mark Rivers notifications@github.com wrote:
It is easy to save its value. You just need to add this line to auto_settings.req in the iocSpinnaker directory (or whatever you have called your IOC boot directory).
$(P)$(R)GC_DevLinThrLimit
However, it appears to me that something must be wrong with your system or some other settings. 848175339 should work fine. In fact if you set it to less than this then you will not be able to run the camera at its maximum speed.
I just tested it on my Oryx camera. If I set GC_DevLinThrLimit to 848175339 and then request 164 frames/s for the FrameRate I get the maximum supported frame rate of 163.121 frames/s. However, if I set GC_DevLinThrLimit to 348175339 then I can only get 69.072 frames/s when I request 164 frames/s.
Have you set the system Ethernet buffer settings large enough, and did they persist through a reboot?
Here are the screen shots of my Oryx screens when I am running the camera at its maximum rate of 163.121 frames/s.
This is the main screen. Note that PixelFormat is Mono8, and FrameRate_RBV is 163.121.
[image: image] https://user-images.githubusercontent.com/6115534/91103572-6d508180-e631-11ea-9b4a-fe4370345545.png
This is the Features#2 screen. Note that AdcBitDepth is Bit8, and GC_DevLinThrLimit is 1250000000. That is the full bandwidth of 10 GigE. The current throughput being used (GC_DevLinCurThr_RBV) is 822399201.
[image: image] https://user-images.githubusercontent.com/6115534/91104221-f320fc80-e632-11ea-9b9b-08a5814c18b1.png
I am not getting any error messages on the IOC console when streaming at that rate (no dropped frames).
The error message you were getting was:
2020/08/22 19:09:57.700 ADSpinnaker::grabImage error GetImageStatus returned 9.
From SpinnakerDefs.h this is what ImageStatus=9 means:
IMAGE_DATA_INCOMPLETE = 9, /**< Image data is incomplete. */
That means you are dropping packets when you increase your network bandwidth above some value. That should not happen. Something is wrong with your system, it is not happening for me.
If you cannot achieve this performance.
— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/areaDetector/ADSpinnaker/issues/6#issuecomment-679407331, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADSYGNG73Q7OM7Y2JNC3DC3SCLV5BANCNFSM4QIND25A .
-- Lee Yang Lawrence Berkeley National Lab 1 Cyclotron Road, MS 7H210 Berkeley, California 97320 office:(510)486-7320 fax:(510) 486-4633
What software did you reinstall?
One possible cause for your problems is that some other parameter was set incorrectly and saved in iocSpinnaker/iocBoot/auto_settings.req. Each time you restart the IOC that bad parameter would be reloaded, even after rebooting the computer and power-cycling the camera. To eliminate that possibility you can do the following:
You now have a "clean start" where all parameters will have their default values from the camera or from the EPICS database, with no autosaved values being restored.
@LeeYangLBLBCS here are some comments on other errors you posted above:
)acLib: macro AUTOSAVE is undefined (expanding string dbLoadRecords("$(AUTOSAVE)/asApp/Db/save_restoreStatus.db", "P=$(PREFIX)")
That error is happening because AUTOSAVE is not defined in the envPaths file in your iocSpinnaker directory. Here is what is defined, judging from the output you posted above.
epicsEnvSet("ARCH","linux-x86_64")
epicsEnvSet("IOC","iocSpinnaker")
epicsEnvSet("TOP","/home/bl832user/epics/modules/synApps_6_1_epics7/support/areaDetector-R3-7/ADSpinnaker/iocs/spinnakerIOC")
epicsEnvSet("SUPPORT","/home/bl832user/epics/modules/synApps_6_1_epics7/support")
epicsEnvSet("MOTOR","/home/bl832user/epics/modules/synApps_6_1_epics7/support/motor-R7-2-1")
epicsEnvSet("ASYN","/home/bl832user/epics/modules/synApps_6_1_epics7/support/asyn-R4-38")
epicsEnvSet("CALC","/home/bl832user/epics/modules/synApps_6_1_epics7/support/calc-R3-7-4")
epicsEnvSet("EPICS_BASE","/home/bl832user/epics/base-7.0.4")
epicsEnvSet("MOTOR_PV","/home/bl832user/epics/modules/motorPV/iocs/pvIOC/../..")
epicsEnvSet("ADCORE","/home/bl832user/epics/modules/synApps_6_1_epics7/support/areaDetector-R3-7/ADCore")
epicsEnvSet("ADGENICAM","/home/bl832user/epics/modules/synApps_6_1_epics7/support/areaDetector-R3-7/ADGenICam")
epicsEnvSet("ADSPINNAKER","/home/bl832user/epics/modules/synApps_6_1_epics7/support/areaDetector-R3-7/ADSpinnaker")
This is what is defined in my iocSpinnaker/envPaths:
epicsEnvSet("IOC","iocSpinnaker")
epicsEnvSet("TOP","/corvette/home/epics/devel/areaDetector-3-9/ADSpinnaker/iocs/spinnakerIOC")
epicsEnvSet("ADSPINNAKER","/corvette/home/epics/devel/areaDetector-3-9/ADSpinnaker/iocs/spinnakerIOC/../..")
epicsEnvSet("SUPPORT","/corvette/home/epics/devel")
epicsEnvSet("ASYN","/corvette/home/epics/devel/asyn-4-40")
epicsEnvSet("AREA_DETECTOR","/corvette/home/epics/devel/areaDetector-3-9")
epicsEnvSet("ADSUPPORT","/corvette/home/epics/devel/areaDetector-3-9/ADSupport")
epicsEnvSet("ADCORE","/corvette/home/epics/devel/areaDetector-3-9/ADCore")
epicsEnvSet("AUTOSAVE","/corvette/home/epics/devel/autosave-5-10")
epicsEnvSet("BUSY","/corvette/home/epics/devel/busy-1-7-2")
epicsEnvSet("CALC","/corvette/home/epics/devel/calc-3-7-3")
epicsEnvSet("SNCSEQ","/corvette/home/epics/devel/seq-2-2-5")
epicsEnvSet("SSCAN","/corvette/home/epics/devel/sscan-2-11-3")
epicsEnvSet("DEVIOCSTATS","/corvette/home/epics/devel/devIocStats-3-1-16")
epicsEnvSet("EPICS_BASE","/corvette/usr/local/epics-devel/base-7.0.4")
epicsEnvSet("ADGENICAM","/corvette/home/epics/devel/areaDetector-3-9/ADGenICam")
Note that the following are defined for me but not for you:
It gets these definitions from the areaDetector/configure/RELEASE_PRODS.local. Did you comment out BUSY and AUTOSAVE in that file? You should not, they are needed. And if they are not commented out they should be in envPaths.
Did you edit envPaths? I see that you have an entry MOTOR_PV that is unique to your site. How did you add that?
save_restore:readReqFile: unable to open file sseq_settings.req. Exiting.
That error is coming because you have left this line in your st.cmd commented out:
#set_requestfile_path("$(CALC)/calcApp/Db")
NDPluginStats uses the sseq record, so I suggest uncommenting that line.
save_restore: connect failed for channel '13SP1:cam1:GC_BlackLevelAuto'
save_restore: connect failed for channel '13SP1:cam1:GC_SaturationEnabled'
save_restore: connect failed for channel '13SP1:cam1:GC_GammaEnabled'
save_restore: connect failed for channel '13SP1:cam1:GC_Sharpness'
save_restore: connect failed for channel '13SP1:cam1:GC_SharpnessAuto'
save_restore: connect failed for channel '13SP1:cam1:GC_SharpnessEnabled'
save_restore: connect failed for channel '13SP1:cam1:GC_TriDelayEnabled'
Those error are normal. They are happening because many FLIR cameras have those features, but the Oryx does not, so they are not defined. You can ignore them.
auto_settings.sav: 1290 of 1297 PV's connected
All 1297 should have connected. It may be because AUTOSAVE is not defined.
2020/08/22 20:26:48.642 Param[ACQ_PERIOD] GenICamFeature::write: node AcquisitionFrameRate is not writable
That error is normal. It tried to restore the FrameRate but that feature is not writable in the current camera mode.
epics> 2020/08/22 20:26:59.426 ADSpinnaker::grabImage error GetImageStatus returned 9
That is the streaming error discussed above. It means something is wrong with your network connection to the camera.
envPaths is not auto generated. I created it somehow manually.
I must have made some mistakes in config files. I added ADSpinnaker entry in RELEASE.local under areaDetector/config: ADSIMDETECTOR=$(AREA_DETECTOR)/ADSimDetector ADSUPPORT=$(AREA_DETECTOR)/ADSupport ADGENICAM=$(AREA_DETECTOR)/ADGenICam ADSPINNAKER=$(AREA_DETECTOR)/ADSpinnaker -include $(TOP)/configure/RELEASE_PRODS.local -include $(TOP)/configure/RELEASE.local.$(EPICS_HOST_ARCH)
Should I also add something in RELEASE_PRODS.local for ADSpinnaker?
On Tue, Aug 25, 2020 at 6:50 AM Mark Rivers notifications@github.com wrote:
@LeeYangLBLBCS https://github.com/LeeYangLBLBCS here are some comments on other errors you posted above:
)acLib: macro AUTOSAVE is undefined (expanding string dbLoadRecords("$(AUTOSAVE)/asApp/Db/save_restoreStatus.db", "P=$(PREFIX)")
That error is happening because AUTOSAVE is not defined in the envPaths file in your iocSpinnaker directory. Here is what is defined, judging from the output you posted above.
epicsEnvSet("ARCH","linux-x86_64") epicsEnvSet("IOC","iocSpinnaker") epicsEnvSet("TOP","/home/bl832user/epics/modules/synApps_6_1_epics7/support/areaDetector-R3-7/ADSpinnaker/iocs/spinnakerIOC") epicsEnvSet("SUPPORT","/home/bl832user/epics/modules/synApps_6_1_epics7/support") epicsEnvSet("MOTOR","/home/bl832user/epics/modules/synApps_6_1_epics7/support/motor-R7-2-1") epicsEnvSet("ASYN","/home/bl832user/epics/modules/synApps_6_1_epics7/support/asyn-R4-38") epicsEnvSet("CALC","/home/bl832user/epics/modules/synApps_6_1_epics7/support/calc-R3-7-4") epicsEnvSet("EPICS_BASE","/home/bl832user/epics/base-7.0.4") epicsEnvSet("MOTOR_PV","/home/bl832user/epics/modules/motorPV/iocs/pvIOC/../..") epicsEnvSet("ADCORE","/home/bl832user/epics/modules/synApps_6_1_epics7/support/areaDetector-R3-7/ADCore") epicsEnvSet("ADGENICAM","/home/bl832user/epics/modules/synApps_6_1_epics7/support/areaDetector-R3-7/ADGenICam") epicsEnvSet("ADSPINNAKER","/home/bl832user/epics/modules/synApps_6_1_epics7/support/areaDetector-R3-7/ADSpinnaker")
This is what is defined in my iocSpinnaker/envPaths:
epicsEnvSet("IOC","iocSpinnaker") epicsEnvSet("TOP","/corvette/home/epics/devel/areaDetector-3-9/ADSpinnaker/iocs/spinnakerIOC") epicsEnvSet("ADSPINNAKER","/corvette/home/epics/devel/areaDetector-3-9/ADSpinnaker/iocs/spinnakerIOC/../..") epicsEnvSet("SUPPORT","/corvette/home/epics/devel") epicsEnvSet("ASYN","/corvette/home/epics/devel/asyn-4-40") epicsEnvSet("AREA_DETECTOR","/corvette/home/epics/devel/areaDetector-3-9") epicsEnvSet("ADSUPPORT","/corvette/home/epics/devel/areaDetector-3-9/ADSupport") epicsEnvSet("ADCORE","/corvette/home/epics/devel/areaDetector-3-9/ADCore") epicsEnvSet("AUTOSAVE","/corvette/home/epics/devel/autosave-5-10") epicsEnvSet("BUSY","/corvette/home/epics/devel/busy-1-7-2") epicsEnvSet("CALC","/corvette/home/epics/devel/calc-3-7-3") epicsEnvSet("SNCSEQ","/corvette/home/epics/devel/seq-2-2-5") epicsEnvSet("SSCAN","/corvette/home/epics/devel/sscan-2-11-3") epicsEnvSet("DEVIOCSTATS","/corvette/home/epics/devel/devIocStats-3-1-16") epicsEnvSet("EPICS_BASE","/corvette/usr/local/epics-devel/base-7.0.4") epicsEnvSet("ADGENICAM","/corvette/home/epics/devel/areaDetector-3-9/ADGenICam")
Note that the following are defined for me but not for you:
- AREA_DETECTOR
- ADSUPPORT
- AUTOSAVE
- BUSY
- SNCSEQ
- SSCAN
- DEVIOCSTATS
It gets these definitions from the areaDetector/configure/RELEASE_PRODS.local. Did you comment out BUSY and AUTOSAVE in that file? You should not, they are needed. And if they are not commented out they should be in envPaths.
Did you edit envPaths? I see that you have an entry MOTOR_PV that is unique to your site. How did you add that?
save_restore:readReqFile: unable to open file sseq_settings.req. Exiting.
That error is coming because you have left this line in your st.cmd commented out:
set_requestfile_path("$(CALC)/calcApp/Db")
NDPluginStats uses the sseq record, so I suggest uncommenting that line.
save_restore: connect failed for channel '13SP1:cam1:GC_BlackLevelAuto' save_restore: connect failed for channel '13SP1:cam1:GC_SaturationEnabled' save_restore: connect failed for channel '13SP1:cam1:GC_GammaEnabled' save_restore: connect failed for channel '13SP1:cam1:GC_Sharpness' save_restore: connect failed for channel '13SP1:cam1:GC_SharpnessAuto' save_restore: connect failed for channel '13SP1:cam1:GC_SharpnessEnabled' save_restore: connect failed for channel '13SP1:cam1:GC_TriDelayEnabled'
Those error are normal. They are happening because many FLIR cameras have those features, but the Oryx does not, so they are not defined. You can ignore them.
auto_settings.sav: 1290 of 1297 PV's connected
All 1297 should have connected. It may be because AUTOSAVE is not defined.
2020/08/22 20:26:48.642 Param[ACQ_PERIOD] GenICamFeature::write: node AcquisitionFrameRate is not writable
That error is normal. It tried to restore the FrameRate but that feature is not writable in the current camera mode.
epics> 2020/08/22 20:26:59.426 ADSpinnaker::grabImage error GetImageStatus returned 9
That is the streaming error discussed above. It means something is wrong with your network connection to the camera.
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/areaDetector/ADSpinnaker/issues/6#issuecomment-680037723, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADSYGNFANNCJZV5KYSGGK5TSCO6UBANCNFSM4QIND25A .
-- Lee Yang Lawrence Berkeley National Lab 1 Cyclotron Road, MS 7H210 Berkeley, California 97320 office:(510)486-7320 fax:(510) 486-4633
envPaths is not auto generated. I created it somehow manually.
That is not the right way to do it. If you run "make" at the top-level of ADSpinnaker it should rebuild envPaths for you. You might need to make sure that iocSpinnaker/Makefile has the correct ARCH for your build, e.g. linux-x86_64 or whatever you are using.
Should I also add something in RELEASE_PRODS.local for ADSpinnaker?
No, you just copy EXAMPLE_RELEASE_PRODS.local to RELEASE_PRODS.local and edit it.
problem solved. Makefile is left with: ARCH = linux-x86_64-ub18 from the original download. (Probably from Github). No envPaths is generated as a result.
On Tue, Aug 25, 2020 at 7:43 AM Mark Rivers notifications@github.com wrote:
envPaths is not auto generated. I created it somehow manually.
That is not the right way to do it. If you run "make" at the top-level of ADSpinnaker it should rebuild envPaths for you. You might need to make sure that iocSpinnaker/Makefile has the correct ARCH for your build, e.g. linux-x86_64 or whatever you are using.
Should I also add something in RELEASE_PRODS.local for ADSpinnaker?
No, you just copy EXAMPLE_RELEASE_PRODS.local to RELEASE_PRODS.local and edit it.
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/areaDetector/ADSpinnaker/issues/6#issuecomment-680068932, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADSYGNF5RQG2UGCFCRFJMOLSCPE2XANCNFSM4QIND25A .
-- Lee Yang Lawrence Berkeley National Lab 1 Cyclotron Road, MS 7H210 Berkeley, California 97320 office:(510)486-7320 fax:(510) 486-4633
ARCH = linux-x86_64-ub18
Yes, that is the setting for me. I build linux-x86_64 on a Centos 7 system, which cannot build ADSpinnaker because gcc is too old. So I have to give my Ubuntu 18 system a different EPICS_HOST_ARCH name.
Is everything working OK so I can close this issue?
Yes. Thanks for the help.
On Thu, Aug 27, 2020, 6:41 AM Mark Rivers notifications@github.com wrote:
Is everything working OK so I can close this issue?
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/areaDetector/ADSpinnaker/issues/6#issuecomment-681956320, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADSYGNALDQLUZL6VQL64CI3SCZPBRANCNFSM4QIND25A .
My FLIR camera has been working well for a few week in self trigger mode "i.e. Trigger Mode=Off". Today I tried the external trigger mode (line0) with a 50Hz TTL trigger pulses x 100 and file output turned on. When I noticed error from IOC: 2020/08/22 19:07:01.924 ADSpinnaker::grabImage error GetImageStatus returned 9 I thought the file write must not be able to keep up with the external trigger rate. I reverted back to internal trigger mode. The camera "Acquire Start" shows "Collecting" forever. Screen shot attached. I restarted the computer, power cycled the camera. Problem persists. I attached the camera to a different computer (Windows 10), using Spinview software from FLIR. It can reach good frame rate (~70 Hz Mono16). So I am confident the camera itself is still working fine. Have you ever seen this problem before? Is there a way to clear up the error? 2020/08/22 19:07:01.924 ADSpinnaker::grabImage error GetImageStatus returned 9