Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Introduction

This setup is tested for the following camera

  • pco.edge 5.5 M CLHS rolling shutter

System Environment

Hardware

The frame grabber card (microEnable V MA-AF2) is installed in the PCI-E slot.

Working Environments

Debian 9

NOTE : On Debian 9, the kernel should be booted with option iomem = relaxed, otherwise the card cannot be recognized.

Code Block
edit 
/etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT="iomem=relaxed"
then
$ update-grub

Softwares can be fetched from /nfs/fs/fsec/pco_driver/pcoclhsdriver10203.tar

  • OS : Debian 9  Kernel:4.17.0

  • driver : menable 4.2.5 (in menable425)
  • SISO run time : 5.5.0 (in siso550)
  • Firmware version of Frame grabber card  : 2.00
  • PCO SDK: 1.02.03 (in pcosdk)
  • pco_clhs_mgr : needed for running the third-party program ( in bin)

NOTE : For this camera, the firmware libAcq_DualCLHSx1AreaRAW needs to be flashed to the frame grabber card.

Debian Package installation

The camera type can be fetched by checking the property (CamInterface : 0 CLHS; 1 CamLink; 2 USB) in Jive or asking the beamline scientist.

Code Block
languagetext
For CLHS cameras:
$ apt-get install siso550-devel pcosdk-dev libfsdaqwriter pco

The reason is CLHS camera needs siso550 runtime instead of siso560.

Installing vendor software (it is installed in /opt/pco/bin):
$ apt-get install pco-vendor-bin

Following packages are installed:

Expand

<package name> : <description ( software/src location)>

menable-dkms : drivers ( /nfs/fs/fsec/pco_driver )

siso560 : runtime ( /nfs/fs/fsec/pco_driver )

siso560-devel  : dev package of runtime ( /nfs/fs/fsec/pco_driver )

pcosdk-dev : camera SDK( https://stash.desy.de/scm/fsec/pcosdk.git )

libfsdaqwriter : data writer for the tango server ( https://stash.desy.de/scm/tan/libfsdaqwriter.git )

pco : pco tango server ( https://stash.desy.de/scm/tan/pco.git )


Manual installation

Drivers

Run following commands with root to install the drivers:


Code Block
languagetext
$ make
$ make install
$ modprobe menable

If everything runs without problem. The card should be recognized by the OS. Run 
$ dmesg|grep menable

the example output is:
$ dmesg|grep menable
[    7.410353] menable: probing device 0
[    7.410449] menable menable0: device is a microEnable IV VD4-CL

User group

The driver can be only be used by the users in video group. Thus it is necessary to add the user to video group.

Code Block
languagetext
#need root permission
$ usermod -aG video <username>

SISO Runtime

Run the following command to install the SISO runtime. Depends on install path, root permission may be needed:

$ siso-installer.sh -d <install path>

Set environment variable

There is a script called setup-siso-env.sh in the install path of the runtime. Run this script to setup the environment. The runtime cannot work without running this.

Test the card

Once the driver and software runtime is installed for the card. It is possible to run the application microDiagnostics to check if the card is correctly recognized by the OS.

The application is located in <install path of runtime>/bin.

If everything works, it is like (an example taken from Debian 8 system):


Run the camera

Run the tango server

The PCO tango server binary is in /usr/lib/tango/server.

NOTE : for the PCO EDGE CLHS, the pco_clhs_mgr needs to be run before running the tango server, it is installed in /opt/pco/bin.


Code Block
languagetext
Run pco_clhs_mgr
$ /opt/pco/bin/pco_clhs_mgr
Wait until the camera information is shown.

Start the PCO tango server
$ /usr/lib/tango/server/Pco <instance>

If everything works, the following example message is shown(taken from hasmpcoedge01 with PCO Edge 4.2).
init camera
camera type : 4864 - serial number:188
Camera: pco.edge rolling shutter
Camera is ready...
data writer version : 0.2
Ready to accept request


Once the tango server is running, there are following ways to operate the camera.

Operate tango server with ATK panel

Start Jive and ATK panel

Code Block
languagetext
Start jive:
$ jive &

The properties needs to be added to the device entry

CamInterface : 0 CLHS; 1 CamLink; 2 USB

libpath: path of the libpcosdk.so, if it is installed via Debian Package, it is /usr/lib

LogLevel: 2 only error message is printed

memratio : between 0-1, percentage of RAM which is used for buffering the images

After that, as the screenshot shows, click the monitor device, the ATK panel will pop up in a moment

Example settings

Code Block
languagetext
Take one HDF5 file with one image:

ExposureTime=1.0
NbFrames=1
FileSaving=True
FileDir="/file/save/path"
FilePrefix="test"
FilePostfix="nxs"

Then StartAcq. Once the ImageCounter goes to 1. The file is saved in the /file/save/path specified before.


Operate tango sever with script

Example python script (PyTango required)

testpco.py - script for taking one HDF5 file with one image.

Liveview of the camera

During the acquisition, it is possible to view the image. The Liveview data is exported via tango attribute LiveImage.The frame rate of live view is set to 2 frames per second at maximum.

Lavue is recommended as the live view tool. Please read the Manual of Lavue for details.

Code Block
languagetext
Start Lavue
$ lavue

Select source : Tango Attribute
Attribute(example) : hasmpcoedge01:10000/test/pco/1/LiveImage

Example taken from hasmpcoedge01 with PCO Edge 4.2