=========================================================================== Vimba for Linux x86_64 - Release Notes Version: 6.0 Date: January 2022 =========================================================================== -------------------------------- Components and Version Reference -------------------------------- Vimba GenICam Transport Layer modules ------------------------------------- GigE Transport Layer (VimbaGigETL.cti) 1.9.0 USB Transport Layer (VimbaUSBTL.cti) 1.4.1* APIs ---- Vimba C API (libVimbaC.so) 1.9.1* Vimba C++ API (libVimbaCPP.so) 1.9.0 Vimba Python API 1.2.1* Image Transform Library (libVimbaImageTransform.so) 1.6.0 Tools ----- Vimba Viewer (VimbaViewer) 2.5.0 Vimba Class Generator (VimbaClassGenerator) 1.0.6 Vimba Firmware Updater (VimbaFirmwareUpdater.exe) 1.2.0 Vimba Firmware Updater Console (FWUpdaterConsole.exe) 1.2.0 Third Party Libraries --------------------- TinyXML (not shipped with Vimba) 2.6.2 Qt 4.8.4 Qwt 6.1.3 libTIFF 4.0.7 OpenCV 3.0.0 * Changed in this release of Vimba --------------------- Hardware Requirements --------------------- Allied Vision GigE cameras require a built-in Gigabit Ethernet network interface or at least one Gigabit Ethernet network card. Note for IP configuration: By default, IP Configuration Mode is set to DHCP. You can also select LLA (link-local address) if you connect just one camera. If multiple cameras are connected at the same time, we recommend using DHCP or Persistent IP Address to enable discovery of all cameras. Furthermore, when using Allied Vision USB cameras, a built-in USB 3.0 controller for PCI Express bus is required. ------------------------ Tested Operating Systems ------------------------ Vimba was tested with Ubuntu 20.04 LTS (64-bit) and Debian 11.2 (64-bit). ------------ Installation ------------ Allied Vision Vimba comes as a tarball. In order to set up Vimba, follow these steps: - Uncompress the archive with the command tar -xf ./Vimba.tgz to a directory you have writing privileges for like /opt. Under this directory Vimba will be installed in its own folder. In the following, we will refer to this path as [InstallDir]. - Go to [InstallDir]/VimbaGigETL and/or [InstallDir]/VimbaUSBTL and execute the shell script Install.sh with super user privileges (e.g., sudo ./Install.sh). This registers the GENICAM_GENTL32_PATH and/or the GENICAM_GENTL64_PATH environment variable through a startup script in /etc/profile.d so that every GenICam GenTL consumer (such as the examples that ship with Allied Vision Vimba) can access the Allied Vision Gigabit Ethernet and USB Transport Layers. Please note that this is a per-user setting. If transport layers are not found, read: https://alliedvision.com/fileadmin/content/documents/products/software/software/Vimba/appnote/Vimba_installation_under_Linux.pdf - Ubuntu 20.04 LTS: Install qt 4.8. For instructions, read the document mentioned above - Reboot computer Vimba Viewer: Vimba Viewer can be found in, for example, [InstallDir]/Tools/Viewer/Bin/x86_64bit/. This program allows you to configure your Allied Vision cameras and capture images. Ubuntu 18.04 LTS: - To build Vimba Viewer, install the libcanberra-gtk-module apt-get install libcanberra-gtk-module In order to change the IP configuration of a camera in a foreign subnet, VimbaViewer must be run with super user privileges (e.g., sudo -E ./VimbaViewer). Note that running it as root user instead of using sudo -E requires the GENICAM_GENTL32_PATH and / or GENICAM_GENTL64_PATH being set for the root user as well. Vimba includes many precompiled examples that can be found in Vimba/VimbaC/Examples/Bin and Vimba/VimbaCPP/Examples/Bin. If you want to compile these examples yourself, please refer to the Vimba Manual for instructions and required packages. For uninstalling Vimba, remove the startup scripts by running the shell scripts Uninstall.sh as super user. This prevents any GenTL consumer from loading the Allied Vision Gigabit Ethernet and USB Transport Layers. Then remove the installation directory. ------------ Known Issues ------------ - When experiencing trouble with image acquisition, try to increase the priority of your application with "sudo -E nice -n -20 ". GigE Transport Layer: - A change of the available camera access modes cannot be reported for cameras in different subnets or with malconfigured IP addresses. These cameras can be accessed in configuration mode from different hosts simultaneously. GigE cameras: - The frame rate may drop to 0 approximately every 60s, so that the expected frame rate is not reached during this time interval. Tranport layers not found (Error -16): - Please follow the instructions in this document: https://alliedvision.com/fileadmin/content/documents/products/software/software/Vimba/appnote/Vimba_installation_under_Linux.pdf Camera detection: - If multiple IP addresses are configured on one physical ethernet adapter, then Vimba sends GVCP discovery requests only to the last added IP address. Therefore, the camera is detected only if its IP address was added last. Vimba Viewer: - If a GigE camera was opened and then closed with Vimba Viewer, it is displayed as locked and Vimba Viewer does not open it again. Workaround: Close and open Vimba Viewer. - When multiple opened GigE cameras are disconnected at the same time while no other camera stays connected to the very same NIC, the Vimba Viewer's camera windows stay open. Vimba Documentation: - Some apps and browsers currently don't support relative links from one document to another document. We have successfully tested relative links with Adobe Acrobat. Vimba APIs: - When API startup and shutdown is performed excessively within the same process, camera initialization may fail sporadically, which may cause exceptions. We recommend to have only one API session during one process. --------------------------- Changes and release history --------------------------- Changes in Vimba 6.0.0: ----------------------- Note: The Vimba version was incremented to 6.0.0 because Vimba for ARM64 contains a CSI-2 transport layer. VimbaC - Fixed: Issue with null terminator for zipped XML files USBTL - Bug fix (relevant for Windows only) VimbaPython: - Less restrictive C API version check Changes in Vimba 5.1.0: ----------------------- VimbaC - New feature: Support for Alloc And Announce frame allocation mode - Feature endianess related fixes (corresponding to GigE TL) VimbaCPP - New feature: Supports Alloc And Announce frame allocation mode VimbaPython - New feature: Supports Alloc And Announce frame allocation mode Vimba Viewer - Supports Alloc And Announce frame allocation mode - Chinese localization - Supports changes of GigE TL and VimbaC - Fixed: IP labels not updated after changing the IP via GevCameraForceAddressSend - Fixed: Auto ROI tab always resets ROI at startup Firmware Updater - Supports Git hash representation Firmware Updater Console - Supports Git hash representation GigETL - Changed behaviour of endianess handling (values must match host endianness in little-endian), for better compatibility with third-party software. Affected features that now have a changed byte order: - Config Mode - IP-related features including MulticastIPAddress - Action Commands - New feature DeviceUpdateTimeout (only applicable if GigE discovery is switched to Broadcast) - New GVSPMaxLookBack default value (0 instead of 1) for improved packet resend handling - Fixed: High memory usage during performance bottleneck (Nonpaged pool growing with multiple GigE cameras) - Fixed: Action commands caused an error message in the console log - Fixed: Multicast IP address range, better compatibility with third-party software USB TL - Fixed: Reset cameras streaming state when opened (Endpoint Halt) - New: Zero-Copy for Linux/libusb for better performance - Updated 3rd-party libraries Changes in Vimba 5.0.0: ----------------------- GigETL - New feature: GVSPHostReceiveBufferSize (SO_RCVBUF, usable with the socket driver only) replaces GVSPHostReceiveBuffers (which is still usable in existing applications). - Fixed for 5 GigE cameras: - Fixed limitations of certain GVSPPacketSize values VimbaC - Fixed: Callbacks after stopping image acquisition caused exceptions in the Python API. - Fixed: ListAncillaryDataFeatures example (error "Could not queue frame") Vimba Firmware Updater - Prepared for CSI-2 support (supported ARM boards only) Vimba Firmware Updater Console - Prepared for CSI-2 support (supported ARM boards only) Vimba Viewer - Prepared for CSI-2 support (supported ARM boards only) Changes in Vimba 4.3.0: ----------------------- GigETL - Prepared for use with 5 GigE Vision cameras VimbaC - Prepared for use with 5 GigE Vision cameras VimbaCPP - Preparations for use with 5 GigE Vision cameras in the underlying VimbaC API Vimba Python - Updated for use with new VimbaC version - Fixed: read_memory now returns all 0_bytes Vimba Firmware Updater - Preparations for use with 5 GigE Vision cameras Vimba Firmware Updater Console - Preparations for use with 5 GigE Vision cameras Vimba Viewer - Preparations for use with 5 GigE Vision cameras Changes in Vimba 4.2.0: ----------------------- Vimba C - Added Standard-compliant ForceIP features instead of Allied Vision custom features, Updated VimbaC ForceIP example to use the standard-compliant ForceIP features Vimba Python - Redirected the used Vimba version to the one delivered in this package - Install.sh suggests compatible Python interpreter versions only - Install.sh and Uninstall.sh: Added support of virtual environments, Added debug flag (-d) GigETL - Standard-compliant ForceIP features instead of Allied Vision custom features (see also Vimba C) - Prepared for use with extended IDs USBTL - Increased default MaxTransferSize value for better performance with current Linux versions - Improved camera detection on Linux systems (plugin event handling) Vimba Viewer - Added a dialog for enforcing IP settings to a GigE Vision camera - Prepared for CSI-2 support (supported ARM boards only) Changes in Vimba 4.1.0: ----------------------- USBTL - Solved conflicts between customers' boost version and the internally used version - Other internal bug fixes Changes in Vimba 4.0.0: ----------------------- Vimba C - Bug fixes Vimba C++ - Bug fixes Vimba Python - New API GigETL - Improved resend handling - By default, packet resends are enabled - Other bug fixes USBTL - Improved visibility of USB camera status - Other bug fixes Vimba GigE Filter Driver - Bug fixes Vimba Viewer - Bug fixes Changes in Vimba 3.1.0: ----------------------- Vimba C - Updated for use with GenTL 1.5 Vimba C++ - Updated for use with GenTL 1.5 GigETL - GenTL 1.5 support USBTL - GenTL 1.5 support Vimba Viewer - Bug fixes Changes in Vimba 3.0: ----------------------- Vimba C - Bug fixes Vimba C++ - Bug fixes Vimba Viewer - Supports Alvium USB cameras - Fixed handling of float increments - Fixed occasional crashes with high frame rates - Several minor bug fixes GigETL - Fixed: GVSPPacketSize now updates as expected USBTL - Bug fixes Changes in Vimba 2.1.3: ----------------------- Vimba C - Added ActionCommands programming example - Vimba C Manual: Updated documentation of Action Commands - Prepared the API for use with GenTL 1.5 - Bug fixes Vimba C++ - Added ActionCommands programming example - Vimba CPP Manual: Updated documentation of Action Commands - Prepared the underlying C API for use with GenTL 1.5 - Vimba CPP Manual: Added chapter Asynchronous image acquisition - overview - Bug fixes Vimba Viewer - New plugin architecture Vima Setup - Removed Vimba Class Generator desktop symbol Vimba Manual - Integrated Vimba Features Manual Changes in Vimba 2.1: --------------------- Vimba C - Added functionality for Action Commands - Bug fixes Vimba C++ - Added functionality for Action Commands - Bug fixes Vimba Image Transform Library - Support for conversion from 10-bit raw source formats to 16-bit color target formats. - Support for conversion from 12-bit raw source formats to 16-bit color target formats. - Support for conversion from 14-bit raw source formats to 16-bit color target formats. - Support for conversion from 10-bit mono source formats to 16-bit mono target formats. - Support for conversion from 12-bit mono source formats to 16-bit mono target formats. - Support for conversion from 14-bit mono source formats to 16-bit mono target formats. Vimba Viewer - Allows now saving of 12-bit and 16-bit images (12-bit images are saved in 16-bit containers). - Added functionality for Action Commands. - Camera list shows the IP address of each device. - Bug fixes GigE Transport Layer - The parameter BUFFER_INFO_DELIVERED_IMAGEHEIGHT is filled correctly. - Added functionality for Action Commands. - Bug fixes Changes in Vimba 2.0: --------------------- Vimba Setup - Added Vimba Viewer Guide document - Improved documents, new layout Vimba C - Added functionality of loading and saving camera settings from / to XML - Bug fixes Vimba C++ - Added functionality of loading and saving camera settings from / to XML - Bug fixes Vimba Image Transform Library - Support for conversion from BayerXX10,12 formats to 2 byte output formats (RGB[A], BGR[A]) - Added interface functions VmbSetImageInfoFromInputParameters and VmbSetImageInfoFromInputImage Vimba Viewer - Enabled load / save settings functionality - Added tabsheet widgets for Brightness, ROI, Autofunction ROI, Trigger IO, Color - Bug fixes USB Transport Layer - Minor bug fixes GigE Transport Layer - Reworked and improved filter driver Vimba Class Generator - Changes for Camera Link support (affects Windows only) Changes in Vimba 1.4.1: ----------------------- Package for ARMv7 - Support of USB Transport Layer Package for other Linux systems - Support of USB Transport Layer - Improved documentation Vimba C - Extended camera support (e.g. float increments) - Stability improvements - Improved some examples - Bug fixes Vimba C++ - Extended camera support (e.g. float increments, needs Vimba C 1.4) - Improved error handling - Improved some examples - Added and improved examples - Bug fixes Vimba Image Transform Library - Added support for PFNC 10p and 12p formats - Improved the documentation GigE Transport Layer - Improved stability on high traffic networks - Bug fixes for multi-camera usage and incomplete cleanup - Fixed range of GevHeartbeatInterval and GevHeartbeatTimeout Vimba Viewer - Added open camera by ID - Added endianness switch in direct register dialog - Many bug fixes Vimba Class Generator - Small improvements Changes in Vimba 1.3.0: ----------------------- Package for ARMv7 (new) - Support of Vimba C API - Support of Vimba C++ API - Support of GigE Transport Layer Package for other Linux systems - Added a Vimba Tour document and a Vimba Quickstart Guide - Improved the other documents - Added examples for Vimba C and C++ - Added an OpenMP version of the Vimba Image Transform Library Vimba C 1.3.0 - Fixed feature access for ancillary data - Made device discovery blocking - Added system feature GeVDiscoveryAllDuration for adjustable waiting time - Fixed issues with mixed feature names - Bug-fixes for improving stability Vimba C++ 1.3.0 - Fixed feature access for ancillary data - Changes caused by bug fixes in Vimba C Vimba Image Transform Library 1.2.0 - Allowed more input for VmbSetImageInfoFromString - Corrected return codes - Removed transformations to Mono10/12/14 and big-endian data Vimba Viewer 1.1.3 - Improved handling for GigE camera list changes - Fixed issues around saving images - GUI usage improvements GigE Transport Layer 1.3.1 - Fixed GenTL compliance: Changed the Device ID from the serial number to a MAC-based ID. This changes the way all APIs (C, C++ and .Net) identify the cameras - Added a document for GigE camera features - Changed the supported GenTL version to 1.3 (e.g. new feature categories BufferHandlingMode and StreamInformation) - Separate features for heartbeat timeout and heartbeat interval - Adjustable device discovery waiting time - Fixed issues with similar serial numbers - Fixed issues with many network interfaces Vimba Class Generator - Minor changes to appearance and documentation Changes in Vimba 1.2.0: ----------------------- Vimba C 1.2.0 - Version 1.2.0 is only compatible to AVT GigE TL Version 1.2.0 onwards - Name independent search for AVT transport layers - Made EnumEntries' "pIsImplemented" condition equivalent to "pIsAvailable" to mimic the behavior of GenICam reference implementation Vimba C++ 1.2.0 - Fix for opening camera by IP address Vimba .NET 1.2.0 - Fix for 64bit version attempting to load 32bit transport layers - Fix for opening camera by IP address Vimba Viewer 1.1.1 - SFNC Features directly beneath the root category get listed - Many new pixel formats available for histogram support GigE Transport Layer 1.2.0 - Improved performance in case of many events - Restriction to eight cameras removed - Corrected Heartbeat feature - Fixed support for small packets ---------------------------------------- Allied Vision Technical Support ---------------------------------------- Contact us: https://www.alliedvision.com/contact