PCO.Edge 2560×2160 (5×16, Output Mode D, Freerun)
#
# CAMERA_MODEL "PCO.edge"
#
# camera description, for camera selection GUI and apps
# camera_class should be the manufacturer's name
#
camera_class: "PCO"
camera_model: "Edge"
camera_info: "2560x2160 (5-tap, 16-bit, Output Mode D, freerun)"
# actual width/height (total pixels) and depth of data from camera
# to only grab high 8-bits, set depth to 8 but leave extdepth set
# to actual depth, and adjust shift and mask accordingly
#
width: 2560
height: 2160
depth: 16
extdepth: 16
# camera link data path register bits (argument is a 2-digit hex value):
# sets the expected input data size and #taps
# bits 0-3: number of bits per pixel minus 1
# bits 4-7: number of taps minus 1
#
CL_DATA_PATH_NORM: 4f # 5-tap, 16-bit
# camera link config register bits
# (argument is a 2-digit hex value, hexval shown in parens):
# 0 (01): RGB (set for RGB (except bayer). Applies to older/PCI, ignored on newer/PCIe)
# 1 (02): ignore data valid (on for most cameras though not all)
# 2 (04): generate an FVAL on every LVAL or vactv lines if bit 4 is set, for line scan cameras
# 3 (08): disable ROI (rarely set)
# 4 (10): generate an FVAL after every vactv lines if bit 2 is also set, for line scan cameras
# 5 (20): data valid invert (rare)
# 6 (40): RGB swap -- swap red/blue
# 7 (80): enable roi pad: if ROI > img output, will pad missing bytes
#
CL_CFG_NORM: 00
# htaps/vtaps: if multiple taps, set either htaps or vtaps to match the number
# of taps and whether they represent horizontal or vertical. Most common it's
# htaps (that is, pixels in parallel taps are from pixels next to each other on
# the same line) For example with a 2-tap 8-bit camera (CL_DATA_PATH_NORM: 17)
# where the two taps are from adjacent pixels on the same line, you would uncomment
# htaps and leave it at 2.
#
htaps: 5
#vtaps: 5
# interlace method
# only for interleaved and some dual tap cameras
# determines how image is deinterleaved for display -- BYTE_INTLV is only
# one of many available methods -- see *_INTLV in pdv_dependent.h and
# camera configuration guide for more
#
method_interlace: WORD_INTLV_HILO_LINE
# PCO serial commands
#
# all commands are hex bytes, but sent LSB to MSB which is reversed from PCO's
# documentation.
#
# for instance, the "start output" command below is shown in PCO's documentation as follows:
# COMMAND LENGTH DATA CHKSUM
# 0614 0007 0001 22
#
# the command going out our board is transmitted as:
# COMMAND LENGTH DATA CHKSUM
# 1406 0700 0100 22
#
# COMMAND = group code, message code
# LENGTH = length of complete message including the checksum byte
# DATA = data needed to execute command (set specific parameter)
# CHKSUM = checksum byte, calculated as sum of all previous bytes
#
# Use string below for the following settings:
# CMND LENG DATA CHKSUM DESCRIPTION OF COMMAND
# 1406 0700 0000 21 stop output, needed to setup camera if left in "record"
# 1610 0d00 0200 0004 0000 0000 39 output format, D (line from top and bottom to center)
# 1115 0700 0000 2d standard sensor format (2560x2160)
# 1103 0d00 0100 0100 000a 7008 a5 AOI = 2560 x 2160
# 1107 0900 d5ab ae05 54 set pixelrate to 95.3 MHz
# 1204 0700 0000 1d auto trigger, freerun
# 1635 0c00 40ff 1005 0005 01 b1 Camera Link mode, 85MHz, 5-tap/16-bit, continuous
# 140a 0500 23 arm camera, enables next output command
# 1406 0700 0010 22 start output, camera is set to "record"
serial_binit: "14060700000021 16100d00020000040000000039 1115070000002d 11030d0001000100000a7008a5 11070900d5abae0554 1204070000001d 16350c0040ff1005000501b1 140a050023 14060700010022"
# Mode Control register (hex)
# Hex value -- the left-most nibble determines which CC line is toggled for
# the EXPOSE pulse (if method_camera_shutter_timing is other than AIA_SERIAL).
# The right-most nibble determines which of the CC lines are held permanently
# high or low. Typically this is set automatically by merthod_camera_timing
# (to 10 hex for triggered and MCL modes, 00 otherwise). However if your
# camera needs it set otherwise, use this directive to do so.
#
# MODE_CNTL_NORM: 10
# Region of Interest start and area (decimal)
# vskip/hskip is how many pixels to skip before ROI, vert and horiz
# vactv/hactv is how many pixels to DMA to memory after skip, vert and horiz
# if full frame is desired, you can leave these commented out or make them the
# same as the camera width/height. hskip/hactv can also be used to trim columns
# for cameras that output non-4-byte-aligned data to multiple of 4 bytes (in
# width) to ensure proper operation of windows applications that depend on
# 4-byte alignment, e.g. pdvshow
#
#hskip: 0
#hactv: 2560
#vskip: 0
#vactv: 2160
# enable fast re-arm of acquisition block
# re-arm when FVAL goes low
#
CL_CFG2_NORM: 40