Matrox Imaging Library (MIL) 10 Update 87
Matrox Rapixo CXP release notes
March 2020
(c) Copyright Matrox Electronic Systems Ltd., 1992-2020.
This document outlines what is new with the MIL 10 driver for Matrox Rapixo CXP and explains the current limitations and particularities.
It also presents last-minute information that did not make it into the manual or on-line help. Note that this help file serves to complement your manual. The information found in this file overrides your formally documented material.
Contents
1. MIL 10 Driver for Matrox Rapixo CXP
1.1 What’s new in MIL 10 Update 87
1.1.3 API enhancements to control trigger (M_GRAB_TRIGGER_ACTIVATION)
1.1.4 API enhancements to timer controls
1.1.5 New API to inquire the CXP connection topology
1.1.6 New API to use CXP test mode
1.1.7 Software bug fixes and changes
1.1.8 Known limitations and particularities
1.2 What’s new in MIL 10 Update 84
1.2.3 API enhancements to control Power over CXP (PoCXP)
1.2.4 API enhancements to monitor CXP link errors
1.2.6 Software bug fixes and changes
1.3 What’s new in MIL 10 Update 75
1.3.2 Known limitations and particularities
2. Supported operating systems
3. Location of examples (in the help file)
Matrox Rapixo CXP supports the following standards:
· JIIA CoaXPress® Standard version 2.0, 1.1.1 and 1.0
· GenICam™ GenApi version 3.1.0
· GenICamTM Standard Feature Naming Convention (SFNC) version 2.5
· GenICamTM GenTL version 1.5
The following features are new for this release:
· Added support for Matrox Rapixo CXP Single/Dual.
· Added support for Matrox FPGA Development Kit (FDK) version 19.1.10 and later.
· Added support for CXP device tap geometry.
· Added new API to inquire CXP connection topology (see M_CONNECTION* below)
· Added new API to use CXP test mode.
· Added new MdigControls of M_TIMER_ARM.
· Added new MdigControls of M_TIMER_RESET_SOURCE.
MdigControl / MdigInquire |
Control Value |
Description |
M_GRAB_TRIGGER_ACTIVATION |
M_LEVEL_LOW_END_WHEN_INACTIVE |
Specifies that triggered grabs are initiated by a low trigger signal polarity, and completed when the trigger signal goes high. |
M_LEVEL_HIGH_END_WHEN_INACTIVE |
Specifies that triggered grabs are initiated by a high trigger signal polarity, and completed when the trigger signal goes low. |
MdigControl / MdigInquire |
Control Value |
Description |
M_TIMER_RESET_SOURCE + M_TIMERn |
Same values as existing for M_TIMER_TRIGGER_SOURCE (see MdigControl reference) |
Specifies how the timer reset is triggered, for example by an auxiliary input signal or after a specified period of time.
Resetting the timer sets it to 0 and immediately restarts the clock. |
M_TIMER_ARM + M_TIMERn |
M_ENABLE M_DISABLE M_DEFAULT (value from DCF or M_DISABLE) |
Specifies whether to enable the timer arming mechanism. If timer arming is enabled, then the timer will ignore its trigger signal until a signal transition specified using M_TIMER_ARM_ACTIVATION occurs on the signal specified using M_TIMER_ARM_SOURCE. |
M_TIMER_ARM_SOURCE + M_TIMERn |
Same values as M_TIMER_TRIGGER_SOURCE |
Specifies which input source will arm the timer, if timer arming is enabled. Use M_TIMER_ARM to enable timer arming. |
M_TIMER_ARM_ACTIVATION + M_TIMERn |
M_LEVEL_LOW M_LEVEL_HIGH M_EDGE_RISING M_EDGE_FALLING M_DEFAULT (value from DCF or M_EDGE_RISING) |
Specifies which state, or transition, of the signal from the input source will arm the timer, if timer arming is enabled. Use M_TIMER_ARM to enable timer arming. |
MdigInquire |
Inquired Value |
Description |
M_CONNECTION_COUNT |
MIL_INT |
Specifies the number of connections between the system and the camera. |
M_CONNECTION_STATE + M_CONNECTIONn |
M_DETECTED M_UNDETECTED |
Specifies the state of the connection. |
M_CONNECTION_TYPE + M_CONNECTIONn |
M_MASTER M_SLAVE |
Specifies the CXP connection type. Typically, a camera only has one master connection. |
M_CONNECTION_ID + M_CONNECTIONn |
MIL_INT |
Specifies which physical CXP connector on the camera is connected to CXP connector n on your board. For example, CXP connector 3 might be connected to CXP connector 1 on your camera (in which case this inquiry will return 1) |
MdigControl/MdigInquire |
Control Value and Type |
Description |
M_CONNECTION_TEST_MODE + M_CONNECTIONn |
M_OFF M_MODE1 |
Use to enable or disable the CXP test mode. |
M_CONNECTION_TEST_ERROR_COUNT + M_CONNECTIONn |
MIL_INT64 |
Returns the current connection error count for test packets. Can be set to 0 to reset counter. |
M_CONNECTION_TEST_PACKET_TRANSMITTED_COUNT + M_CONNECTIONn |
MIL_INT64 |
Return the number of test packet transmitted. Can be set to 0 to reset counter. |
M_CONNECTION_TEST_PACKET_RECEIVED_COUNT + M_CONNECTIONn |
MIL_INT64 |
Return the number of test packet received. Can be set to 0 to reset counter. |
· Improved camera detection reliability and speed.
· Added support for grabbing from 14-bit monochrome and Bayer cameras.
o The Bayer conversion hardware supports a maximum line width of 16KB on Rapixo CXP-6 models and 32KB on Rapixo CXP-12 models.
· Improve error messages when settings digitizer LUTs.
· Fixed possible crash when freeing the digitizer while the feature browser is open.
· Fixed possible crash when using DataLatches while grabbing on-board.
· Fixed issue when using CXP trigger from camera.
· Fixed issues with GenTL Producer related to camera discovery and camera vendor/model name reporting.
· Increased default time period from PoCXP voltage application where over-current condition is ignored, from 256ms to 512ms.
o At the initial period following PoCXP application, the voltage may induce a punctual over-current due to the initial in-rush current (to charge the line capacitance), which may be followed by secondary over-currents caused by the activation of a camera’s power-supplies.
· For the Matrox Rapixo CXP Single/Dual, the system board type shown in the Feature Browser is incorrect and results in an error message that can be ignored.
Matrox Rapixo CXP supports the following standards:
· JIIA CoaXPress® Standard version 1.0 and 1.1.1
· GenICam™ GenApi version 3.1.0
· GenICamTM Standard Feature Naming Convention (SFNC) version 2.5
· GenICamTM GenTL version 1.5
· This is the first release that supports the Matrox FPGA Development Kit (FDK) for the Matrox Rapixo CXP Pro, which is available in a separate installation package.
· A new tool has been added in MILConfig to display board information and details of the PUs (processing units) and TUs (transfer units) implemented, with the Matrox FDK, in the firmware for a Matrox Rapixo CXP Pro. The Board Information utility can be found in MILConfig, under Boards / Rapixo CXP.
· Added support of GenICamTM GenTL Producer with support for Data Stream and Buffer modules.
· Improved digitizer allocation speed.
MsysControl / MsysInquire |
Control Value |
Description |
M_POWER_OVER_CABLE + M_CONNECTIONn / M_ALL (n is the CXP port number from 0 to 3) |
M_ON |
Specifies to force power on the port. |
M_OFF |
Specifies to disable power on the port. |
|
M_AUTOMATIC |
Activates auto detection of PoCXP cameras. |
|
M_RESET |
Resets an error condition (over or under current) on the PoCXP port. |
|
M_DEFAULT |
Same as M_AUTOMATIC. |
MsysInquire |
Inquired Value |
Description |
M_POWER_OVER_CABLE_STATUS + M_CONNECTIONn (n is the CXP port number from 0 to 3) |
M_ON |
Power is currently sent to the camera. |
M_OFF |
No power is sent to the camera. |
|
M_SENSE |
Currently sensing for a PoCXP camera. |
|
M_OVER_CURRENT |
An over-current error condition was detected; power is disabled. To restore power, use MsysControl(…, M_POWER_OVER_CABLE + M_CONNECTIONn, M_RESET).
|
|
M_UNDER_CURRENT |
An under-current error condition was detected; power is disabled. To restore power, use MsysControl(…, M_POWER_OVER_CABLE + M_CONNECTIONn, M_RESET). |
MsysControl / MsysInquire |
Type |
Description |
M_TL_ERROR_LOCK_LOSS_COUNT + |
MIL_INT64 |
Returns the number of loss of lock. To reset this error, set this control to 0. |
M_TL_ERROR_CORRECTED_COUNT + |
MIL_INT64 |
Returns the number of corrected errors in the duplicated characters in CXP control words. To reset this error, set this control to 0. |
M_TL_ERROR_UNCORRECTED_COUNT + |
MIL_INT64 |
Returns the number of uncorrected errors in the duplicated characters in CXP control words. To reset this error, set this control to 0. |
M_TL_ERROR_DATA_CRC_COUNT + |
MIL_INT64 |
Returns the number of CRC errors detected in a data packet. To reset this error, set this control to 0. |
M_TL_ERROR_CTRL_CRC_COUNT + |
MIL_INT64 |
Returns the number of CRC errors detected in a control packet. To reset this error, set this control to 0. |
M_TL_ERROR_EVENT_CRC_COUNT + |
MIL_INT64 |
Returns the number of CRC errors detected in an event packet. To reset this error, set this control to 0. |
M_TL_ERROR_ENCODING_COUNT + |
MIL_INT64 |
Returns the number of protocol encoding errors detected. To reset this error, set this control to 0. |
M_TL_ERROR_COUNT + |
MIL_INT64 |
Returns the sum of all error counters. Setting this control to 0 resets all of the above errors. |
The combination values for all M_TL_ERROR_* controls can be M_CONNECTIONn (n is the CXP port number from 0 to 3) or M_ALL for an aggregation of all the ports.
· MfpgaSetDestination: changed the returned value from void to MIL_INT. It now returns the stream route number to be programmed in the PU to reach the specified destination.
Additions to MfpgaInquire and MfpgaCommandInquire:
MfpgaInquire |
Type |
Description |
M_PU_NAME + n |
MIL_STRING |
Used with M_NUMBER_OF_PU to get the name of the PU at index n. |
M_PU_FID + n |
MIL_INT |
Returns the function ID of the PU at index n. |
M_TU_NAME + n |
MIL_STRING |
Returns the name of the TU at index n. |
M_TU_FID + n |
MIL_INT |
Returns the function ID of the TU at index n. |
MfpgaCommandInquire |
Type |
Description |
M_NUMBER_OF_INPUTS |
MIL_INT |
Returns the number of stream input ports. |
M_NUMBER_OF_OUTPUTS |
MIL_INT |
Returns the number of stream output ports. |
M_PORT_NAME + M_INPUTn |
MIL_STRING |
Returns the name (as a string) of the nth stream input port. |
M_PORT_NAME + M_OUTPUTn |
MIL_STRING |
Returns the name (as a string) of the nth stream output port. |
· Changed PoCXP camera start-up time, in which over-currents are tolerated, from 32ms to 256ms.
· Changed on-board default buffer pitch from 64 bytes to 128 bytes.
· Fixed issue when using data latch with boards that have more then 4GB of memory.
· Fixed buffer allocation with cameras reporting mono10p pixel format.
· This is the first release of the Matrox Rapixo CXP.
Matrox Rapixo CXP supports the following standards:
· JIIA CoaXPress® Standard version 1.0 and 1.1.1.
· GenICamTM Standard Version 3.1.0
· GenICamTM Standard Feature Naming Convention (SFNC) Version 2.0.
· GenICamTM GenTL Standard version 1.5 producer:
Ø System, Interface and Device modules are supported.
Ø Data Stream and Buffer modules are not supported.
· Installing this update removes Matrox Intellicam’s support for the Matrox CronosPlus, Matrox Vio and IEEE 1394 IIDC devices.
· Building the MIL examples using Visual Studio 2015 or 2017 also requires the presence of Windows SDK version 8.1, which is installed from the Visual Studio setup.
· The Bayer conversion hardware supports a maximum line width of 8196 bytes.
This section lists all the operating systems that the Matrox Rapixo CXP MIL 10 driver supports.
· 64-bit Windows® 7.
· 64-bit Windows® 10.
In the help file, the location information written at the top of examples might not be up-to-date. Use MIL Example Launcher to find an example on disk.