Hi, we changed the camera to another server and managed to get images with both the new and old EPICS module, it worked fine as long as the data type was either int16 uint16.
So it's probably just the driver or api installation.
DBF_UCHAR[800]: 94 = 0x5e 101 = 0x65 94 = 0x5e 99 = 0x63 94 = 0x5e
Hi Marco,
I agree, it looks like the SDK is communicating OK and sending frames, but all pixels are 0.
Mark
Hi, Mark, thanks for the help.
I will attach the images as asked but after running it both with the other ADHamamatsu EPICS module that we had here and with the manufacturer's software and getting the same result, we are suspecting some problems in the hardware or firebird card, not anything
wrong with the new EPICS module.
The array counter increases for the plugins, but the statistics doesn't seem to point to any pixel being actually activated.
I sent a message to the manufacturer and will report if I manage to advance.
Hi Marco,
I suggest setting the region size to the full camera size, 2048, 2048. Also change the datatype to Int16.
Please send screenshots of the following when the camera is acquiring:
-
Main ADHamamatsuDCAM screen
-
commonPlugins screen showing all plugins
-
Enable the Stats5 plugin, set its array source to HAMA1 and send a screen of that plugin.
Are you using the CameraLink or USB interface?
Mark
From: Tech-talk <[email protected]>
On Behalf Of Marco Filho via Tech-talk
Sent: Wednesday, July 9, 2025 6:37 AM
To: EPICS Tech Talk <[email protected]>
Subject: Help operating ADHamamatsuDCAM IOC
Good afternoon, all
We are trying out the latest version of the ADHamamatsuDCAM EPICS module (https://github.com/areaDetector/ADHamamatsuDCAM)
to operate a C13440 model.
Everything seems to work out mostly fine, except we get an empty image no matter how we configure the camera.
For now, I tried running the following IOC:
epicsEnvSet("PREFIX", "13HAMA1:")
epicsEnvSet("PORT", "HAMA1")
epicsEnvSet("QSIZE", "20")
epicsEnvSet("XSIZE", "1024")
epicsEnvSet("YSIZE", "1024")
epicsEnvSet("NCHANS", "2048")
epicsEnvSet("CBUFFS", "500")
epicsEnvSet("MAX_THREADS", "8")
epicsEnvSet("EPICS_DB_INCLUDE_PATH", "$(ADCORE)/db")
# Create a hamamatsu driver
# hamamatsuConfig(const char *portName, int camIndex, int maxBuffers, int maxMemory, int priority, int stackSize)
hamamatsuConfig("$(PORT)", 0, 0, 0, 99)
# To have the rate calculation use a non-zero smoothing factor use the following line
dbLoadRecords("$(adhamamatsudcam_DB)/hamamatsu.template","P=$(PREFIX),R=cam1:,PORT=$(PORT),ADDR=0,TIMEOUT=1")
NDStdArraysConfigure("Image1", 20, 0, "$(PORT)", 0, 0, 0, 0, 0, 5)
dbLoadRecords("NDStdArrays.template", "P=$(PREFIX),R=image1:,PORT=Image1,ADDR=0,TIMEOUT=1,NDARRAY_PORT=$(PORT),TYPE=Int8,FTVL=UCHAR,NELEMENTS=12000000")
iocInit
dbpf 13HAMA1:image1:EnableCallbacks 1
dbpf 13HAMA1:cam1:HamaRegionReset 1
dbpf 13HAMA1:cam1:AcquirePeriod 1.1
dbpf 13HAMA1:cam1:SizeX 1024
dbpf 13HAMA1:cam1:SizeY 1024
After that, clicking on acquire start I can see the number of images incrementing both on the driver and on the image plugin, but the image is always empty:
> dbgf 13HAMA1:image1:ArrayData
DBF_UCHAR[800]: 0 = 0x0 0 = 0x0 0 = 0x0 0 = 0x0 0 = 0x0 0 = 0x0
0 = 0x0 0 = 0x0 0 = 0x0 0 = 0x0 0 = 0x0 0 = 0x0 0 = 0x0 0 = 0x0 (...)
Does anyone have experience with this camera and knows if we are misconfiguring some parameter?
I attach a picture of the operation screen after acquiring if that is of any help. I noticed the region size X and Y start as 1, so I guessed that putting some bigger value on that would be needed to make the image work...
Thanks in advance for any help,
Marco