MATRIX VISION - mvBlueLYNX-M7 Technical Documentation
|
wxPropView is an interactive GUI tool to acquire images and to configure the device and to display and modify the device properties of MATRIX VISION GmbH hardware. After the installation you can find wxPropView
"~/mvimpact-acquire/apps/mvPropView/x86"
(Linux).export GENICAM_ROOT=/home/x/tmp export GENICAM_ROOT_V3_0=/home/x/tmp export GENICAM_LOG_CONFIG=/home/x/tmp/share/genicam/log/config/DefaultLogging.properties
"genicam.sh"
before: . /etc/profile.d/genicam.sh
Depending on the driver version, wxPropView starts with the Quick Setup Wizard (as soon as a camera with the right firmware version was selected used or a single camera with the right firmware was found) or without it.
The Quick Setup Wizard is a tiny and powerful single window configuration tool to optimize the image quality automatically and to set the most important parameters, which affect the image quality, in an easy way manually and to get a preview of this changes. Settings will be accepted by clicking ok, otherwise the changes are cancelled.
Depending on the camera spectrum (gray or color sensor), it will automatically pre-set the camera so that image quality is usually as best as possible.
"For all cameras:"
Image format is chosen as 10 bit (if possible) as a good compromise on image quality and speed.
It will further set
"In case of gray:"
The above settings will be also applied whenever the "Gray Preset" button is pressed. For gray cameras it is herewith assumed that image processing prefers a linear camera response.
"In case of color:"
It will additionally set
These settings will also be applied whenever the "Color Preset" button is pressed. It is herewith assumed that color camera image is optimized for best human visual feedback.
There are 3 presets:
Factory can be used as a fall back to quickly skip or remove all presets and load the factory default settings.
All auto modes can be switched off and all settings, such as Gain, Exposure etc. can be subsequently modified by using:
Toggling Gamma button loads or unloads a host based 10 bit Gamma correction with a moderate value of 1.8 into the signal processing path. Switch Gamma on if you require a gray level camera image to appear natural for the human eye.
Toggling Color+ button switches both CCM and sRGB display matrix on and off. This optimizes the sensor color response for the human eye and goes in conjunction with a display color response. Because sRGB displays are mostly used and this is the default color space in Windows OS, these are preselected. If you require other display matrices (e.g. Adobe or WideGamut) feel free to use the tree mode of wxPropView and select ColorTwistOutputCorrection accordingly.
Setting Black Level
Black level can be used if you require dark portions in the image to appear even darker or brighter. Please note that this slider combines analog and digital settings meaningfully.
Setting Gain
Gain settings also combine analog and digital registers into one slider setting.
Setting Saturation
Saturation setting increases the color saturation to make the image appear more colored. It does not change uncolored parts in the image nor changes the color tone or hue.
Uncheck the checkbox "Show This Display When A Device Is Opened" to disable the Quick Setup Wizard to be called automatically. Use the "Wizards" menu and select "Quick Setup" to open the Quick Setup Wizard once again.
Use OK to use the values and settings of the Quick Setup Wizard and go back to the tree mode of wxPropView.
Use Cancel to discard the Quick Setup Wizard values and settings and go back to wxPropView and use the former (or default) settings.
Quick Setup Wizard allows zooming into the image by right clicking in the image area and unchecking "Fit To Screen" mode. Use the mouse wheel to zoom in or out. Check "Fit To Screen" mode, if you want the complete camera image to be sized in the window screen size.
In cases of Tungsten (artificial) light, camera brightness may tend to oscillations if Auto functions are used. This can be minimized or avoided by setting the frame frequency to an integer divisor of the mains frequency.
wxPropView consists of several areas:
By clicking on F1 you will get the HELP dialog.
Now, you can initialize a device by
After having successfully initialized a device the tree control in the lower left part of the "Main Window" will display the properties (settings or parameters) (according to the "interface layout") accessible by the user.
You've also got the possibility to set your "User Experience". According to the chosen experience, the level of visibility is different:
Properties displayed in light grey cannot be modified by the user. Only the properties, which actually have an impact on the resulting image, will be visible. Therefore, certain properties might appear or disappear when modifying another properties.
To permanently commit a modification made with the keyboard the ENTER must be pressed. If leaving the editor before pressing ENTER will restore the old value.
As described earlier, for each recognized device in the system the devices serial number will appear in the drop down menu in the upper left corner of the "Upper Tool Bar". When this is the first time you start the application after the system has been booted this might take some seconds when working with devices that are not connected to the host system via PCI or PCIe.
Once you have selected the device of your choice from the drop down menu click on the "Use" button to open it.
When the device has been opened successfully, the remaining buttons of the dialog will be enabled:
For color sensors, it is recommended to perform a white balance calibration before acquiring images. This will improve the quality of the resulting images significantly.
Now, you can capture an image ("Acquisition Mode": "SingleFrame") or display live images ("Continuous"). Just
The frame rate depends on
If you want to have a fixed frame rate using the "Continuous" mode, GenICam offers the property "Setting -> Base -> Camera -> GenICam -> Acquisition Control -> Acquisition Frame Rate" (from 5 fps to maximum of the camera in 0.1 increments). Just adapt this property to your needs.
Alternatively, if you need frame rates below 5 fps, you can use Timers. Since the mvBlueLYNX-M7 has two sensors, you have to set the image source. In section "Camera" you can define all the parameters used for image acquisition. To change between sensors, go into subsection "Connector" and change property "VideoChannel" to either 0 or 1. wxPropView can only display images from one sensor simultaneously.
Set acquisition parameters suitable for your application and save settings with menu item "Action -> Capture Settings -> Save -> Active Device Settings".
It is also possible to record image sequences using wxPropView.
If you switched on the request info overlay (righ-click on the display area and select the entry to activate this feature), these information will be displayed on the image, too. With the timestamp you can see the interval of the single frames in microseconds.
You can save acquired images to the hard disk the following way:
With the analysis plots you have the possiblity to get image details and to export them.
The spatial noise histogram calculates and evalutates statistically the difference between two neighbouring pixels in vertical and horizontal direction. I.e. it shows the sensor's spatial background pattern like the sensitivity shifts of each pixel. An ideal sensor or camera has a spatial noise of zero. However, you have to keep in mind the temporal noise as well.
Read: Channel::Direction (Mean difference, most frequent value count/ value, Standard deviation)
Example: For a single channel(Mono) image the output of 'C0Hor(3.43, 5086/ 0, 9.25), C0Ver(3.26, 4840/ 0, 7.30) will indicate that the mean difference between pixels in horizontal direction is 3.43, the most frequent difference is 0 and this difference is present 5086 times in the current AOI. The standard deviation in horizontal direction is 9.25. The C0Ver value list contains the same data but in vertical direction.
The temporal noise histogram shows the changes of a pixel from image to image. This method is more stable because it is relatively independent from the image content. By subtracting two images, the actual structure is eliminated, leaving the change of a pixel from image to image, that is, the noise. When capturing images, all parameters must be frozen, all automatic mechanisms have to be turned off and the image may not have underexposed or saturated areas. However, there are no picture signals without temporal noise. Light is a natural signal and the noise always increases with the signal strength. If the noise only follows the natural limits, then the camera is good. Only if additional noise is added the camera or the sensor has errors.
Read: Channel# (Mean difference, most frequent value count/ value, Standard deviation)
Example: For a single channel(Mono) image the output of 'C0(3.43, 5086/ 0, 9.25) will indicate that the mean difference between pixels in 2 consecutive images is 3.43, the most frequent difference is 0 and this difference is present 5086 times in the current AOI. The standard deviation between pixels in these 2 images is 9.25. Please note the impact of the 'Update Interval' in this plot: It can be used to define a gap between 2 images to compare. E.g. if the update interval is set to 2, the differences between image 1 and 3, 3 and 5, 5 and 7 etc. will be calculated. In order to get the difference between 2 consecutive images the update interval must be set to 1!
When wxPropView is started for the first time, the values of properties set to their default values will be displayed in green to indicate that these values have not been modified by the user so far. Modified properties (even if the value is the same as the default) will be displayed in black.
Settings can be stored in several ways (via the "Menu Bar": "Action -> Capture Settings -> Save Active Device Settings"):
During the startup of a device, all these setting possibilities show different behaviors. The differences are described in chapter Settings behaviour during startup
Restoring of settings previously stored works in a similar way. After a device has been opened the settings will be loaded automatically as described in Settings behaviour during startup
However, at runtime the user has different load settings possibilities (via the "Menu Bar": "Action -> Capture Settings -> Load Active Device Settings")
mvIMPACT Acquire Version | Loading a XML settings file created with mvIMPACT Acquire version < 2.9.0 | Loading a XML settings file created with mvIMPACT Acquire version 2.9.0 - 2.10.1 | Loading a XML settings file created with mvIMPACT Acquire version 2.11.0 or later |
---|---|---|---|
< 2.9.0 | YES | NO | NO |
2.9.0 - 2.10.1 | YES | YES | NO |
>= 2.11.0 | YES | YES | YES |
Product
inside the device list (the one device specific property list that is accessible without initializing the device before). Even if a setting can be used with various firmware versions it is recommended to use one setting for multiple devices all updated to the very same firmware version to avoid compatibility problems.All properties and functions can be displayed in the list control on the lower left side of the dialog. To modify the value of a property select the edit control right of the properties name. Property values, which refer to the default value of the device, are displayed in green. A property value once modified by the user will be displayed in black (even if the value itself has not changed). To restore its default value of a single property
To restore the default value for a complete list (which might include sub-lists)
In this case a popup window will be opened and you have to confirm again.
Most properties store one value only, thus they will appear as a single entry in the property grid. However, properties are capable of storing more than one value, if this is desired. A property storing more than one value will appear as a parent list item with a WHITE background color (lists will be displayed with a grey background) and as many child elements as values stored by the property. The PARENT grid control will display the number of values stored by the property, every child element will display its corresponding value index.
If supported by the property, the user might increase or decrease the number of values stored by right clicking on the PARENT grid element. If the property allows the modification the pop up menu will contain additional entries now:
When a new value has been created it will be displayed as a new child item of the parent grid item:
Currently, only the last value can be removed via the GUI and a value can't be removed, when a property stores one value only.
Also the user might want to set all (or a certain range of) values for properties that store multiple values with a single operation. If supported by the property, this can also be achieved by right clicking on the PARENT grid element. If the property allows this modification the pop up menu will again contain additional entries:
It's possible to either set all (or a range of) elements of the property to a certain value OR to define a value range, that then will be applied to the range of property elements selected by the user. The following example will explain how this works:
In this sample the entries 0 to 255 of the property will be assigned the value range of 0 to 255. This will result in the following values AFTER applying the values:
Method appears as entries in the tree control as well. However, their name and behavior differs significantly from the behavior of properties. The names of method objects will appear in 'C' syntax like e.g. "int function( char*, int )". This will specific a function returning an integer value and expecting a string and an integer as input parameters. To execute a method object
Parameters can be passed to methods by selecting the edit control left of a method object. Separate the parameters by blanks. So to call a function expecting a string and an integer value you e.g. might enter "testString 0"
into the edit control left of the method.
The return value (in almost every case an error code as an integer) will be displayed in the lower right corner of the tree control. The values displayed here directly correspond the error codes defined in the interface reference and therefore will be of type TDMR_ERROR or TPROPHANDLING_ERROR.
Since wxPropView version 1.11.0 it is possible to copy analysis data to the clipboard. The data will be copied in CSV style thus can be pasted directly into tools like Open Office™ or Microsoft® Office™.
Just
wxPropView offers a wide range of image formats that can be used for exporting captured image to a file. Some formats e.g. like packed YUV 4:2:2 with 10 bit per component are rather special thus they can't be stored into a file like e.g. offered by the BMP file header. When a file is stored in a format, that does not support this data type wxPropView will convert this image into something that matches the original image format as close as possible. This, however, can result in the loss of data. In order to allow the storage of the complete information contained in a captured image wxPropView allows to store the data in a raw format as well. This file format will just contain a binary dump of the image with no leader or header information. However, the file name will automatically be extended by information about the image to allow the restoring of the data at a later time.
All image formats, that can be exported can also be imported again. Importing a file can be done in 3 different ways:
"wxPropView.exe MyImage.png"
followed by [ENTER])When importing a "*.raw"
image file a small dialog will pop up allowing the user to define the dimensions and the pixel format of the image. When the file name has been generated using the image storage function offered by wxPropView, the file name will be passed and the extracted information will automatically be set in the dialog thus the user simply needs to confirm this information is correct.
wxPropView is capable of
The amount of parallel image displays can be configured via the command line parameter "dcx"
and "dcy"
. In this step by step setup wxPropView has been started like this from the command line:
wxPropView dcx=1 dcy=2
This will result in 1 display in horizontal direction and 2 in vertical direction.
Is is also possible to change the amount of display at runtime via "Settings -> Image Displays -> Configure Image Display Count":
Additional capture settings can be created via "Menu Bar": "Capture -> Capture Settings -> Create Capture Settings". The property grid will display these capture settings either in "Developers" or in "Multiple Settings View".
Now, in order to set up wxPropView to work with 2 instead of one capture setting,
Various additional capture setting can be created. In order to understand what a capture setting actually is please refer to
Creating a capture setting is done via "Capture -> Capture Settings -> Create Capture Setting".
Then, the user is asked for the name of the new setting.
And finally for the base this new setting shall be derived from.
Afterwards, in this example we end up having 2 capture settings:
As "NewSetting1" has been derived from "Base" changing a property in "Base" will automatically change this property in "NewSetting1" if this property has not already been modified in "NewSetting1". Again to get an understanding for this behaviour please refer to
Now, to set up wxPropView to display all images taken using capture setting "Base" in one display and all image taken using capture setting "NewSetting1" in another display the capture settings need to be assigned to image displays via "Capture -> Capture Settings -> Assign To Display(s)".
By default a new setting when created will be assigned to one of the available displays in a round-robin scheme, thus when there are 3 displays, the first (Base) setting will be assigned to "Display 0", the next to "Display 1", the next to "Display 2" and a fourth setting will be assigned to "Display 0" again. The setting to display relationships can be customized via "Capture -> Capture Settings -> Assign to Display(s)".
As each image display keeps a reference to the request, this image belongs to the driver can't re-use the request buffer until a new request is blitted into this display. Thus, it might be necessary to increase the number of request objects the driver is working with if a larger number of displays are involved. The minimum number of requests needed is 2 times the amount of images displays. The number of requests used by the driver can be set up in the drivers property tree:
Finally, wxPropView must be configured in order to use all available capture settings in a round-robin scheme. This can be done by setting the capture setting usage mode to "Automatic" via "Capture -> Capture Settings -> Usage Mode":
That's it. Now, starting a live acquisition will display live images in both displays and each display is using a different set of capture parameters. If a device supports parallel acquisition from multiple input channels, this will increase
as wxPropView now needs to display more images per second. Each display can be configured independently thus e.g. one display can be used scaled while the other displays 1:1 data. The analysis plots can be assigned to a specific display by left-clicking on the corresponding image display, the info plot will plot a graph for each capture setting in parallel.
When only one setting shall be used at a given time, this can be achieved by setting the capture setting usage mode back to "Manual" via "Capture -> Capture Settings -> Usage Mode". Then the setting that shall be used can be manually selected in the request control list:
This can even be changed during a running acquisition.
wxPropView shows snapped or live images in the display area of the GUI. The area, however, shows the most significant bits (msb) of the image in the 8 bit display.
The following image shows how a mid-grey 12 bit pixel of an image is displayed with 8 bit. Additionally, two shifts are shown.
In this particular case, the pixel will be brighter (as the most significant bits are 1’s). Perhaps you already recognized it. Each shift means that each pixel value is multiplied or divided by 2 according to the direction.
Anyway, there is one restriction in the 8 bit display:
If the pixel value is greater than 255, the pixel value will be clipped to 255. To describe this from a programmer’s view; a
represents the pixel value:
a = ( a > 255 ) ? 255 : a
With wxPropView you can shift the bits in the display using the left and right arrow keys. Furthermore you can turn on the monitor display to compare the images synchronously.
With wxPropView it is possible to switch the views between "Standard View" (user-friendly) and "Developers View". While the first (default) view will display the device drivers feature tree in a way that might be suitable for most users of a GUI application it might present the features in a slightly different order as they actually are implemented in the device driver. The developers view switches the tree layout of the application to reflect the feature tree exactly like it is implemented an presented by the SDK. It can be helpful when writing code that shall locate a certain property in the feature tree of the driver using the C, C++, or .NET interface. The feature hierarchy displayed here can directly be used for searching for the features using the "ComponentLocator (C++/.NET)"
objects or "DMR_FindList (C)"
and "OBJ_GetHandleEx (C)"
functions.
Using Windows, it is possible to access the log files generated by MATRIX VISION via the Help menu. Sending us the log files will speed up support cases.
The options are to
As described above, after the device has been initialized successfully in the "Grid" area of the GUI the available properties according to the chosen "interface layout" (e.g. GenICam) are displayed in a hierarchy tree.
The next chapter will show how to set the interface layout and which interface you should use according to your needs.
The mvIMPACT Acquire interface internally uses the GenICam runtime libs, so that it can be considered as an user application written with the GenICam interface. This behavior has several advantages:
You can change the property interfaceLayout with wxPropView to select the preferred interface.
To specify the InterfaceLayout for all devices globally, you can do this via the "Action -> Default Device Interface Layout" in the "Menu Bar":
If you want to specify the InterfaceLayout for the used device, you can do this via "Device Properties" in the section "Device -> InterfaceLayout"
:
Start the wxPropView and initialize the device by clicking "Use" and start a "Continuous" acquisition.
While using a color version of the camera, the PC will calculate a color image from the original gray Bayer mosaic data. For getting correct colors when working with a Bayer mosaic filter you have to calibrate the white balance (this must be performed every time the lighting conditions change).
The "White Balance Control" can be found in "Setting -> Base -> Camera -> GenICam -> Analog Control -> Balance White Auto". Just select "Continuous" and you will get a white balanced image.
To configure a device for a triggered acquisition, in wxPropView the property "Image Setting -> Camera -> TriggerMode" ("DeviceSpecific interface layout") or "Setting -> Base -> Camera -> GenICam -> Acquisition Control -> Trigger Selector" ("GenICam interface layout") is available.
All trigger modes are defined by an enumeration:
There is also a chapter "Getting a triggered image" chapter, which is available in the "mvIMPACT Acquire API" manuals.
For performance reasons, device drivers will not automatically update their digital input properties if nobody is interested in the current state. Therefore, in order to check the current state of a certain digital input, it is necessary to manually refresh the state of the properties. To do this please right-click on the property you are interested in and select "Force Refresh" from the pop-up menu.
GenICam interface layout only:
Some devices might also offer an event notification if a certain digital input changed its state. This event can then be enabled
Whenever an event is send by the device that updates one of the properties a callback has been attached to, the output window will print a message with some information about the detected change.
It is possible to start wxPropView via command line and controlling the starting behavior using parameters. The supported parameter are as follows:
Parameter | Description |
width or w | Defines the startup width of wxPropView. Example: width=640 |
height or h | Defines the startup height of wxPropView. Example: height=460 |
xpos or x | Defines the startup x position of wxPropView. |
ypos or y | Defines the startup x position of wxPropView. |
splitterRatio | Defines the startup ratio of the position of the property grids splitter. Values between > 0 and < 1 are valid. Example: splitterRatio=0.5 |
propgridwidth or pgw | Defines the startup width of the property grid. |
debuginfo or di | Will display debug information in the property grid. |
dic | Will display invisible (currently shadowed) components in the property grid. |
displayCountX or dcx | Defines the number of images displayed in horizontal direction. |
displayCountY or dcy | Defines the number of images displayed in vertical direction. |
fulltree or ft | Will display the complete property tree (including the data not meant to be accessed by the user) in the property grid. Example (Tree will be shown): fulltree=1 |
device or d | Will directly open a device with a particular serial number. * will take the first device. Example: d=GX000735 |
qsw | Will forcefully hide or show the Quick Setup Wizard, regardless of the default settings. Example (Quick Setup Wizard will be shown): qsw=1 |
live | Will directly start live acquisition from the device opened via device or d directly. Example (will start the live acquisition): live=1 |
wxPropView.exe d=* fulltree=1 qsw=0
This will start the first available device, will hide the Quick Setup Wizard, and will display the complete property tree.
mvGigEConfigure is an interactive GUI tool to install the GigE capture filter which adds a service to your Gigabit Ethernet interface
"Resend"
mechanism of GigE Vision.To install the GigE capture filter, please follow these instructions:
After installation of the capture filter, you will see you network devices and the connected devices:
When a GigE compliant device will be initialised, wxPropView it will display the used driver technology:
Once a device has been initialized successfully the property "mvStreamDriverTechnology" will display either "FilterDriver" when the high performance Kernel mode driver is used or "SocketAPI" when the driver is not installed or available. The property is located under "System Settings -> GenTL" in interface layout "DeviceSpecific" or under "Image Settings -> Camera -> GenTL" in interface layout "GenICam".
To remove the GigE capture filter, please follow these instructions:
mvGigEConfigure offers a couple of command-line options to allow driver installation without the need of user interaction. The available command-line options are
Parameter | Description |
install | Will install the driver if it can be located under
|
install_retry_count | Defines the number of retry attempts for the driver installation. This can sometimes be useful when a network component is currently in use/shutting down. 45 seconds will be spent between 2 consecutive attempts. Currently this value will only have an effect, if specified BEFORE the 'install' parameter! |
enable='index' , all or allWithAtLeastOneDevice | Will enable the driver for interface index, all interfaces or all interfaces that have at least on GigE Vision device connected to it. |
disable='index' or all | Will disable the driver for interface index or every interface. |
remove | Will remove the driver. |
welcome | Will display a welcome message to the user explaining what is about to happen. |
postInstallMessage | Will display a message to the user AFTER the filter driver has been installed on the system. |
log_file='file_name' or lf='file_name' | Will write the content of the output window of the application into a file. Passing 'STDLOGDIR' as the initial path (e.g. STDLOGDIR/file_name.log) will write the file into MVIMPACT_ACQUIRE_DATA_DIR/logs thus the file containing the regular mvIMPACT Acquire log-files as well. |
quit | Will automatically terminate the application once all the other command line parameters have been processed. |
So e.g. to automatically install the filter driver and terminate the application afterwards without any additional messages display to the user the following command line is needed:
mvGigEConfigure.exe install quit
This will install the filter driver, but will disable it on all the adapters and then will terminate automatically
mvGigEConfigure install disable=all quit
This will enable the filter driver on adapters 1 and 3
mvGigEConfigure enable=1 enable=3
This will be used during standard installation
mvGigEConfigure welcome install postinstallmessage
mvIPConfigure is an interactive GUI tool to configure the network behaviour of GigE devices. With mvIPConfigure it is possible
The user can select, if the device should
LLA must always be enabled thus this control will never become modifiable in this GUI application.
Every GigE Vision™ compliant device must use the following IP protocol selection algorithm:
To configure the GigE device, please follow these instructions:
Click on the "Configure" button.
Now every feature that is supported by the device and that can be modified will become enabled.
It is also possible to assign a temporary IP address to a certain device with a known MAC address via the "Action" menu item.
Select the "Action" menu item and click on "Manually Assign Temporary IPv4 Address".
A dialog opens, where you can enter the network details.
Because of the activated setting "Use Advanced Device Discovery", by default, incorrectly configured GigE Vision™ compliant devices will be listed within mvIPConfigure even if the IP address does not match the local network.
Just select the device and configure it as described in the chapter above.
mvDeviceConfigure is an interactive GUI tool to configure MATRIX VISION devices. It shows all connected devices. With mvDeviceConfigure it is possible e.g.
Using Linux, the tool is located in "~/mvimpact-acquire/apps/mvPropView/x86"
.
export GENICAM_ROOT_V3_0=/home/x/tmp export GENICAM_LOG_CONFIG=/home/x/tmp/share/genicam/log/config/DefaultLogging.properties
"genicam.sh"
before: . /etc/profile.d/genicam.sh
Various things can also be done without user interaction (e.g. updating the firmware of a device). To find out how to do this please start mvDeviceConfigure and have a look at the available command line options presented in the text window in the lower section (the text control) of the application.
The device ID is used to identify the devices with a self defined ID. The default ID on the device's EEPROM is "0". If the user hasn't assigned unique device IDs to his devices, the serial number can be used to selected a certain device instead. However, certain third-party drivers and interface libraries might rely on these IDs to be set up in a certain way and in most of the cases this means, that each device needs to have a unique ID assigned and stored in the devices non-volatile memory. So after installing the device driver and connecting the devices setting up these IDs might be a good idea.
To set the ID please start the mvDeviceConfigure tool. You will see the following window:
Whenever there is a device that shares its ID with at least one other device belonging to the same device family, mvDeviceConfigure will display a warning and the devices in red color.
Select the device you want to set up. Select the menu item Action and click on Set ID.
In case there has been an ID conflict before that has been resolved now mvDeviceConfigure will no longer highlight the conflict now.
With the mvDeviceConfigure tool it is also possible to update the firmware. In the device list, new firmware versions, if available, will be marked in blue.
To update the firmware on a MATRIX VISION device, the following steps are necessary:
Select the device you want to set up. Select the menu item Action and click on Update firmware.
Ok
.mvBlueCOUGAR-S[MODELNAME]_Update.fpg
mvBlueCOUGAR-P_Update.tgz
mvBlueCOUGAR-X[MODELNAME]_Update.mvu
mvBlueLYNX-M7_Update.tgz
MATRIXVISION_mvBlueCOUGAR-[MODELNAME]_GigE_[VERSIONNUMBER].zip
or MATRIXVISION_mvBlueFOX3_GigE_[VERSIONNUMBER].zip
.If the firmware update is successful, the dialog will disappear.
For devices that are capable of storing UserSet settings on the device itself (mvBlueCOUGAR-X/XD, mvBlueFOX3, etc.) these settings will by default be preserved during firmware updates since mvIMPACT Acquire 2.9.1. This may lead to slightly longer firmware update times. If UserSets are not used, and their persistence during firmware-updates is not desired, the "Persistent UserSet Settings" in the Settings Submenu can be unchecked:
This will also accellerate the firmware update process.
Modern PC's, notebook's, etc. try to save energy by using a smart power management. For this several hardware manufacturers specified the ACPI standard. The standard defines several power states. For example, if processor load is not needed the processor changes to a power saving (sleep) state automatically and vice versa. Every state change will stop the processor for microseconds. This time is enough to cause image error counts!
To disable the power management on the processor level (so-called "C states"), you can use mvDeviceConfigure:
"Settings"
and unselect "CPU Idle States Enabled"
. The sleep states can also be enabled or disabled from a script by calling mvDeviceConfigure like this:
mvDeviceConfigure.exe set_processor_idle_states=1 quit
or
mvDeviceConfigure.exe set_processor_idle_states=0 quit
The additional quit
will result in the application to terminate after the new value has been applied.
It is possible to start mvDeviceConfigure via command line and controlling the starting behavior using parameters. The supported parameter are as follows:
Parameter | Description |
setid or id | Updates the firmware of one or many devices(syntax: 'id=<serial>.<id>' or 'id=<product>.<id>'). |
set_processor_idle_states or spis | Changes the C1, C2 and C3 states for ALL processors in the current system(syntax: 'spis=1' or 'spis=0'). |
set_userset_persistence or sup | Sets the persistency of UserSet settings during firmware updates (syntax: 'sup=1' or 'sup=0'). |
update_fw or ufw | Updates the firmware of one or many devices. |
update_fw_file or ufwf | Updates the firmware of one or many devices. Pass a full path to a text file that contains a serial number or a product type per line. |
custom_genicam_file or cgf | Specifies a custom GenICam file to be used to open devices for firmware updates. This can be useful when the actual XML on the device is damaged/invalid. |
update_kd or ukd | Updates the kernel driver of one or many devices. |
ipv4_mask | Specifies an IPv4 address mask to use as a filter for the selected update operations. Multiple masks can be passed here separated by semicolons. |
fw_file | Specifies a custom name for the firmware file to use. |
fw_path | Specifies a custom path for the firmware files. |
log_file or lf | Specifies a log file storing the content of this text control upon application shutdown. |
quit or q | Ends the application automatically after all updates have been applied. |
force or f | Forces a firmware update in unattended mode, even if it isn't a newer version. |
* | Can be used as a wildcard, devices will be searched by serial number AND by product. The application will first try to locate a device with a serial number matching the specified string and then (if no suitable device is found) a device with a matching product string. |
The number of commands that can be passed to the application is not limited.
mvDeviceConfigure ufw=BF000666
This will update the firmware of a mvBlueFOX with the serial number BF000666.
mvDeviceConfigure update_fw=BF*
This will update the firmware of ALL mvBlueFOX devices in the current system.
mvDeviceConfigure update_fw=mvBlueFOX-2* lf=output.txt quit
This will update the firmware of ALL mvBlueFOX-2 devices in the current system, then will store a log file of the executed operations and afterwards will terminate the application.
mvDeviceConfigure setid=BF000666.5
This will assign the device ID '5' to a mvBlueFOX with the serial number BF000666.
mvDeviceConfigure ufw=*
This will update the firmware of every device in the system.
mvDeviceConfigure ufw=BF000666 ufw=BF000667
This will update the firmware of 2 mvBlueFOX cameras.
mvDeviceConfigure ipv4_mask=169.254.*;192.168.100* update_fw=GX*
This will update the firmware of all mvBlueCOUGAR-X devices with a valid IPv4 address that starts with '169.254.' or '192.168.100.'.