LV-SDS Support and Troubleshooting Guide

How to get effective support and other troubleshooting options

Leutron Vision

Revision: 1.0. Leutron Vision documentation set.

All Information in this document is subject to change without notice and does not represent a commitment on the part of Leutron Vision. The software products described in this document are furnished under a license agreement or nondisclosure agreement. The software may be used or copied only in accordance with the terms of agreement.

It is against the law to copy the software on any medium except as specifically allowed in the license or nondisclosure agreement. The licensee may make one copy of the software for backup purposes. No part of this manual may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying, recording, or information storage and retrieval systems, for any purpose other than the licensee’s personal use, without the express written permission of Leutron Vision.

Product names mentioned in this manual may be trademarks or registered trademarks of their respective companies and are hereby acknowledged.

04 July 2009


Table of Contents

General information
Scope of the manual
Related documents
1. Getting support for Leutron Vision products
1.1. Before you contact the support team
1.2. Contact options
1.3. Gathering information about the problem
1.4. Reporting the problem
1.5. Return Material Authorization (RMA)
1.6. Customer registration
2. Troubleshooting Leutron Vision products
2.1. Troubleshooting common issues
2.2. Known problems and limitations
2.2.1. Linux
2.3. LV-SDS logging
2.3.1. LV-SDS core log file
2.3.1.1. Overview of the log contents
2.3.1.2. Hints for inspecting the file
2.3.2. Dedicated log files
2.3.2.1. Log files related to PicSight®-GigE cameras
2.3.2.2. Log file of the Camera Link API Library
2.3.2.3. PicPort® and PicProdigy® demo log file
2.3.3. High level logging infrastructure
2.3.3.1. Enabling sending the log messages
2.3.3.2. Using the Log Messages Receiver application (Windows)
2.3.3.3. Reusing the infrastructure in user applications
Contacting Leutron Vision
Headquarters (Switzerland)
Germany and Austria
North America
Czech Republic and Slovakia
Other countries
Useful links

General information

Scope of the manual

This manual provides all important information regarding the support and troubleshooting LV-SDS products. It gives hints how support should be contacted effectively, and what information is needed to resolve your problems. It also contains advice how you can read LV-SDS log files and troubleshoot possible problems yourself.

Related documents

1. Getting support for Leutron Vision products

1.1. Before you contact the support team

To get the most effective support for your problems, please make sure that you

Following these guidelines will guarantee that your problem can be solved effectively, in the shortest possible time.

1.2. Contact options

Following list should help to identify the e-mail contact to be used for your problem report:

1.3. Gathering information about the problem

When collecting information about your problem, please follow the steps listed hereafter:

  1. Be sure you use the latest version of LV-SDS. It may be that you have an old version of LV-SDS installed and you are experiencing a bug, which was already removed in the meantime. The version of currently installed LV-SDS is visible in the PicPort® and PicProdigy® demo main window (under Windows). The latest LV-SDS beta version can be downloaded from the LV-SDS download area. If you have not registered yet for LV-SDS download on our website, you will have to do so first.

  2. Enable logging. Before attempting to reproduce the problem, enable additional logging depending on the tools and software components you are using:

    • The most important log is usually the prvphlib.log file (see Section 2.3.1, “LV-SDS core log file”) generated by the low-level LV-SDS libraries. Be sure the LogLevel is set to 0 in the leutron.ini file in both the [PVP.Options] and the [DSY.Options] sections, so that the full log is created (these are the default settings). In case you experience a hang of the whole system, it is important that the writes to prvphlib.log file are not buffered. To disable buffering, set the LogBufferSize to 0 in the [PVP.Options] section (and also check that no semicolon is before the identifier). More information about the configuration options is provided in the Installation and configuration guide.

    • Under Windows start the Log Messages Receiver application (StartProgramsLeutron VisionLog Messages Receiver). This will enable the logging subsystem used by most higher level LV-SDS interfaces (Orchid library, multimedia drivers, etc.). Note that the receiver must be already running before you start the application you want to inspect. In the Log Messages Receiver check the Save messages to a file option and leave the receiver running during all your test session. If the problem causes a crash of the system, uncheck the Buffered logging option, so that all data is written to the log file before the system hangs. Details are provided in Section 2.3.3, “High level logging infrastructure”.

    • In case of troubles with the communication via the serial port embedded in the Camera Link frame grabbers, you can switch on creation of a dedicated log file, clser.log. To do so, you need to edit the win.ini file (under Windows) or leutron.ini (under Linux). In this file edit or create following section:

      [Leutron Vision]
      clserLog=1

      The clser.log file will be generated in the directory from which you started the application. See also Section 2.3.2.2, “Log file of the Camera Link API Library”.

      When the communication goes over the Camera Link “roof”API Library (clallserial.dll), especially when communicating with PicSight®-CL cameras over 3rd party frame grabbers or when using 3rd party camera control tools, you can switch on also logging for this library. The log file is named clall.log and similarly as in case of the clser.log, you can switch it on in the win.ini file (under Windows) or leutron.ini (under Linux):

      [Leutron Vision]
      clallLog=1

      The clall.log file will be generated in the directory from which you started the application. See also Section 2.3.2.2, “Log file of the Camera Link API Library”.

    • If you are using PicSight®-GigE cameras, switch on GigE Vision related logging in the leutron.ini file:

      [LvBusCamNet]
      EnableLog=1
      
      [LvGvp]
      EnableLog=1

      The lvgvp.log and lvbusnet.log files will be created in the bin directory of your LV-SDS installation, see Section 2.3.2.1, “Log files related to PicSight®-GigE cameras”.

    • When troubleshooting a Halcon or ActivVisionTools application, switch on additional Halcon related logging in the leutron.ini file:

      [Halcon]
      EnableLog=1

      The logs will go to the standard prvphlib.log file mentioned above.

    • When using PicPort® and PicProdigy® demo for your tests, the pp_demo.log file will be always automatically created, it needs no special actions to get enabled.

  3. Test the hardware functionality with a supplied demo program (such as PicPort® and PicProdigy® demo). As the first step use a “standard” demo program supplied by Leutron Vision. Under Windows use the PicPort® and PicProdigy® demo (or PicSight® demo), which covers many of the possibilities of Leutron Vision hardware usage. If you are working on Linux (or other non-Windows operating system), use one of the samples delivered with LV-SDS.

    If you are able to reproduce the problem in a supplied demo program (e.g. PicPort® and PicProdigy® demo), then the problem is probably not in your code. However, it still need not be a bug, a problem can be also caused by an improper configuration.

  4. Camera configuration. Check especially whether the camera is set in a proper working mode. Most cameras can be configured using serial communication over a RS-232 port (Camera Link), by accessing camera registers (GigE Vision, USB) or using DIP switches (all camera types). Leutron Vision PicSight®-GigE and PicSight®-USB cameras are adjusted automatically to proper working mode by LV-SDS, however, for Camera Link cameras you might need to do the configuration “manually”. See camera documentation and “camera info” listed in LV-SDS camera database to learn how the camera should be adjusted. The camera info for each particular camera type and working mode (free-running or asynchronous reset) can be displayed either in the Camera Editor (its manual describes all the info-fields available for a camera) or alternatively directly in the PicPort® and PicProdigy® demo.

    PicPort® DemoPicPort® and PicProdigy® demo, viewing camera info

    Figure 1.1. PicPort® and PicProdigy® demo, viewing camera info


  5. Check with another hardware. Sometimes the problem can be caused by the HW/SW environment or by a defective piece of hardware. If it is in your possibilities, try if the same problem happens on another PC. If you have another frame grabberr and/or camera of the same type available, try if the problem happens also after the frame grabber or camera replacement. In case you are using a frame grabber try plugging it to a different PCI slot (this applies especially to problems related to board recognition, interrupt delivery and other PCI related issues).

  6. When using Orchid or multimedia drivers. If you are using Orchid library or one of the LV-SDS multimedia drivers, try to reproduce the problem with the application dedicated to the specific environment:

    • If you write an application in Orchid, try to reproduce the problem in Orchid demo.

    • If you are using the DirectShow filter, use the Graph Editor supplied with DirectX SDK or the AmCap sample application (also supplied with DirectX SDK).

    • If you are using Video for Windows driver, use the supplied VfW Driver Test Application (VidCap).

    • If you are using TWAIN driver, test its functionality with some graphical editor, which is able to use TWAIN, such as Corel Photo-Paint or similar.

    • If you are using the MCI driver, test with the supplied MCI Driver Test Application.

  7. Check with your application. If the problem could not be reproduced in the previous steps, reproduce the problem in your application. If it is possible, extract and send us the smallest part of your code that can demonstrate where the problem occurs. Even better is if you can make the extracted code fragment compilable, so that the problem can be reproduced with a small application that you can send to us. Make sure that your application does proper error handling when accessing LV-SDS functions. Ignoring the error status of LV-SDS functions can lead to unexpected behavior of your application.

  8. Linux specific files. If you are working under Linux, some additional information might be very helpful:

    • In case any problems appeared during LV-SDS installation, send us the complete output (both stdout and stderr). To run the setup script, collecting all the output to a file, use command ./lvsds-VERSION &>setup.log.

    • In case the problems lead to a crash (segmentation fault), provide us with information about location of the crash. To do so, you can debug your application with the gdb debugger and when the crash happens, print the stack backtrace with the backtrace (bt, where) command. Refer to gdb documentation for more help if needed.

    • In many cases the kernel message buffer can provide important clues. These messages can be retrieved for example using the dmesg command.

    If Leutron Vision provided you with a debugging version of Linux LV-SDS, please generate the Linux specific logs described above with this debugging version installed.

  9. Custom camera definitions. If you made your own camera definition in the Camera Editor, send us also the lvcamusr.bin file. It holds all the user defined cameras of the LV-SDS camera database.

  10. Screenshots. In case of disturbances in the acquired images, make and send us the screenshots of them, either as bitmaps with lossless compression (.bmp, .png) or as .jpg with a high quality (small compression).

  11. Collecting log files in PicPort® and PicProdigy® demo. If you ran your tests using PicPort® and PicProdigy® demo, you can easily collect all the log files mentioned in Step 2 by pressing the button located in the bottom right corner of the dialog windows of some PicPort® and PicProdigy® demo “tasks”.

    This only applies for tests made entirely with PicPort® and PicProdigy® demo under Windows. If you made your tests with other software, you still need to collect the files manually.

  12. Send us the report. Send all the collected information (and especially all the log files enabled in Step 2) to us, following guidelines from Section 1.4, “Reporting the problem”.

1.4. Reporting the problem

Each problem report should contain following information:

  • The e-mail subject should give a brief but specific description of the problem and your company name (separated by a “@” character). The subject will be used to identify evolution of the support case, so if you need to submit a different problem, create a new subject string, do not reuse the old one.

    • Example of a good subject: Changing exposure time has no effect @ My Company Inc.

    • Example of a bad subject: Problem with camera

  • With each new support case, please list your LV-SDS registration number in the e-mail (note that no support is provided for development with the free LV-Driver Kit).

  • Describe your problem in detail, including all its symptoms, conditions under which it occurs and all other information that can help resolving the problem. List all the information you gathered while testing and reproducing the problem, as described in Section 1.3, “Gathering information about the problem”.

  • Attach all the required .log files listed in Section 1.3, “Gathering information about the problem”. These are absolutely essential for our support team and failing to attach them will usually only lead to a response asking you to collect and send them, which will in effect make the time needed for the resolution longer.

  • If the problem occurs only under some conditions or only with some particular piece of hardware or software, describe the differences between the two cases and attach log files generated during both the successful and problematic sessions. If only a specific sequence of steps leads to the problem, describe this sequence.

1.5. Return Material Authorization (RMA)

If you need to return some (possibly defective) material to Leutron Vision, please use the RMA application on our website. The application will query you for some important information about your product(s) and their defect(s), deciding automatically, whether you should send the material immediately back to Leutron Vision (or your distributor) or whether we will first contact you to do more tests for problem verification.

1.6. Customer registration

Customers willing to get (different level of) access rights to Leutron Vision download area should first register on our website. The registration area provides various registration possibilities from access to freely downloadable data (anyone can get access to it) to access to LV-SDS download (you need to purchase LV-SDS first).

2. Troubleshooting Leutron Vision products

2.1. Troubleshooting common issues

The lists below mention some most common issues that can be faced by customers, but have easy solution. It is a good idea to check this list first when encountering a problem. It is also a good idea to check Section 2.2, “Known problems and limitations” and Section 2.3, “LV-SDS logging” whether some hints can be found there. Finally, the Leutron Vision knowledge base provides answers for some more elaborate or not so frequent issues.

  • If you are not getting any image, if you get different image data than expected or if you have problems with acquisition timing, check again carefully that the camera is set in proper working mode using serial communication interface and that it is not in some error status (see camera manual for possible description of such situations). Also make sure that the working mode used by your application (live video or one of the asynchronous reset modes) corresponds with your camera settings.

  • If you have problems with acquisition from a PicSight®-GigE camera, check whether your firewall settings do not interfere with the acquisition. PicSight®-GigE getting started manual provides more information about this topic.

  • In case of asynchronous reset mode check if you have the proper ARST_Mode_X selected. Note that in PicPort® and PicProdigy® demo automatically the first not-obsolete mode is used (unless you explicitly select another one). If you use in your application the default ARST_Mode_0 and the mode is obsolete, then PicPort® and PicProdigy® demo uses by default the first not-obsolete mode, and it might be the cause of the difference in behavior of PicPort® and PicProdigy® demo and your application.

  • If you use digital camera with Bayer array color coding and the image has totally wrong colors, try to make a copy of the camera definition in the Camera Editor and change the Rxx_BayerSwapLine and Rxx_BayerSwapPixel in Options mode from 0 to 1 or vice versa. Refer to the Camera Editor manual if you need assistance with this task.

  • Multiple applications using LV-SDS can be safely run concurrently only when the MultipleInstance option in the leutron.ini is set to 1. This entry does not synchronize LV-SDS instances, but avoids problems that are dangerous for the system. The synchronization among different instances has to be performed by the application and each instance of LV-SDS should access “its own” devices. If two LV-SDS instances access the same frame grabber, the results are unpredictable.

2.2. Known problems and limitations

The following list enumerates the important known problems and limitations related to Leutron Vision products. Wherever possible, the issues will be solved in one of the next LV-SDS releases.

2.2.1. Linux

No tool to handle camera definitions

LV-SDS for Linux provides no application to handle camera definitions. The camera definition file is under Linux currently uses the same format as Camera Editor (legacy version) application from LV-SDS for Windows. In case you need to create some new (or modify existing) camera definition, you can easily do it with the new Camera Editor under Windows and when finished, export your changes to the .datformat (expected under Linux) using the Export all to old-style DAT... menu item (you need to switch to the Expert mode to have that item available). See Camera Editor manual for more instructions.

The file format of the new Camera Editor (the .sys files) will be supported soon under Linux. It is possible that even a Linux version of Camera Editor will be released in future.

Orchid library does not exist

Orchid library does not exist in a Linux version. The current version of Orchid is due to its nature very tightly bound to Windows operation system, so we do not expect releasing it under Linux soon.

Different behavior of some functions

Few functions of the Daisy and DRAL libraries have slightly different behavior (meaning) between Windows and Linux versions of LV-SDS. These few exceptions occur always in situations where a function is very tightly coupled with an operating system specific interface and they are always clearly marked in reference guide of the respective library.

PicSight®-GigE cameras not supported

The PicSight®-GigE cameras are currently supported only under Windows. Support under Linux will be added in future.

2.3. LV-SDS logging

Several logging mechanisms are used by various LV-SDS components. They are separated to utilize log analysis, to separate domain-specific info from the general purpose logs and to improve performance, logging only what needs to get logged in a given situation. Creation of these log files can usually be controlled by the user.

[Note]

Note however, that all the information in the logs is just informative and its main purpose is to assist the Leutron Vision support team when trying to resolve possible problems. It is not designed as a tool that should be well understandable by users, it might be misleading and all the information is context-specific. If a word “error” appears in the log, it does not necessarily mean a real error occurred, it might be perfectly valid situation in a given context. You don't need to get alarmed because of that and contact support, especially if the application is otherwise working well.

2.3.1. LV-SDS core log file

The most important log file, generated by the low level LV-SDS libraries. Its name is prvphlib.log and it provides essential information about your hardware, operating system, Leutron Vision hardware and software components, including their versions and about the important actions and error conditions that occurred within the low level LV-SDS components. The file is overwritten again during every LV-SDS session, so if you want to store it away for future reference, you need to do it before starting any other LV-SDS application again.

Under Windows the prvphlib.log file is generated by default in the bin directory of your LV-SDS installation.

Under Linux the prvphlib.log file is generated by default in the .LeutronVision subdirectory of the home directory of currently logged user.

The destination and log level can be changed (instructions available in the Installation and configuration guide), although it is highly recommended to use the default values, meaning all the log messages are stored in the file.

To disable log buffering, set the LogBufferSize to 0 in the [PVP.Options] section of leutron.ini. This can be useful to prevent loss of some log messages in case of a crash or system hang, but it has a negative impact on the performance, so use it only when really needed.

2.3.1.1. Overview of the log contents

The contents and formatting of the log file and thus it is not documented in detail. Individual log messages are accompanied with additional information, such as the source file where the log was originated, thread ID and timestamp. The information covered by the log file includes:

  • Basic information about your system (operating system and its version, number and type of the processors, memory info, BIOS, etc.).

  • Information about all PCI devices connected to your PC, including their configuration and assigned resources, including possible IRQ sharing and conflicts info or memory base address(es).

  • Version of installed LV-SDS and its components. Information about locations of LV-SDS data files (such as leutron.ini or lvcamsys.bin) and about the values of individual configuration options.

  • Types and versions of Leutron Vision hardware plugged/connected to the system, including their firmware (FPGA) versions.

  • Important information about LV-SDS startup and run, including possible error conditions.

2.3.1.2. Hints for inspecting the file

Most information in the prvphlib.log file can be reliably interpreted only by Leutron Vision support team. However, some pieces of information can be useful also for the user (the leading parts of the messages showing thread ID, timestamp and other info are omitted in the examples below).

System info

Basic information about your system, including LV-SDS version. You can use it to quickly verify, which version of LV-SDS you are actually using.

Under Windows the system info section can start with lines like

---------------------------------------- System info
LVSDS v. 1.96.181(1)
Running on Windows XP (ACPI HAL) ver. 5.1 Build 2600 Service Pack 2(2)
(1)

Installed LV-SDS version (includes major, minor and build number).

(2)

Version of the Windows operating system

Under Linux the it can look like the following example

LVSDS v. 1.96.146-05(1) (g++ 3.2x)(2)
Running on Linux ver. #1 Tue Oct 12 12:41:57 BST 2004.2.6.8.1-3-386(3)
Distribution: Ubuntu 4.10 "Warty Warthog"(4)                   
(1)

Installed LV-SDS version (includes major, minor, build and fix number).

(2)

The LV-SDS library variant linked to your application. This number is not necessarily the same as your compiler version! LV-SDS is delivered in few variants, intended for different compiler versions. Because for example gcc versions 3.2 and 3.3 are binary compatible, the same LV-SDS variant is used for them. During LV-SDS setup, the links in /usr/lib are created to point to the LV-SDS variant compatible with the gcc version set as default at the time of LV-SDS setup. If you upgrade gcc, these links might become incorrect (to find out your current gcc version, use gcc --version command) and you should either fix them manually, link with particular LV-SDS variant (and not with the generic library link) or simply reinstall LV-SDS so that the links are created again (it is also enough just to run the lvmklinks script again without performing the entire setup).

(3)

The kernel version you are running. Note that you should rebuild the driver every time you upgrade the kernel.

(4)

The installed distribution and its version (the string formatting is distribution specific).

Options and camera database

If the leutron.ini file was properly found, the log file contains message similar to

---------------------------------------- Options
E:\Programs\LVSDS\Bin\leutron.ini            

Followed by the list of options read from the leutron.ini file. On the other side, if the leutron.ini file was not found (see information in the Installation and configuration guide describing where it is searched for), the message states

---------------------------------------- Options
No leutron.ini found. Using defaults            

This is not always a critical problem, however, any settings you might want to set through the leutron.ini file are of course ignored, which can lead to unwanted behavior. You should have a look whether the file really exists in the expected location or why it is not found by LV-SDS.

Similar messages appear when searching/loading the camera database files. If all the files are properly found, the log should contain strings similar to

---------------------------------------- Camera specs
Loading cameras: Trying ....                         
E:\Programs\LVSDS_NT\Bin\LVCAMERA.DAT                
E:\Programs\LVSDS_NT\Bin\lvcamsys.bin                
E:\Programs\LVSDS_NT\Bin\lvcamusr.bin                
IRQ check

LV-SDS performs a check for detecting possible IRQ sharing and conflicts. Search for word “IRQ” appearing multiple times within the log file to find out all the interrupt related information. It might be useful for example if you have problems with delivering notifications from LV-SDS.

PCI devices

All devices connected to the PCI bus on your system are listed in the log file, including their basic configuration.

-------------------------------- Bus 1 Device 0 Fn 0(1)                   
Id    : 10DE 0181.A2(2) nVidia Corporation - NV18 [GeForce4 MX 440 AGP 8x]
OEM Id: 1462 8880    Micro-Star International Co., Ltd. ... 
Class : VGA compatible controller(3)                                      
Status: 02B0                                                           
Cmd   : 0007(4)                                                           
Base 0: DC000000h - 32bit Non-Pref. Memory                             
Base 1: D0000000h(5) - 32bit Pref. Memory                                 
IRQ   : 0Bh(6)                                                           
------------------------------- Bus 2 Device 4 Fn 0(1)              
Id    : 1589 0004.03(2) Atlantek Microsystems Pty Ltd - PicPortPro CL
OEM Id: 1589 0004    Atlantek Microsystems Pty Ltd                
Class : Video device(3)                                              
Status: 0200                                                      
Cmd   : 0006(4)                                                      
Base 0: E1000000h(5) - 32bit Pref. Memory                            
IRQ   : 09h(6)  
                             
(1)

Location of the device on PCI bus.

(2)

Device identifier (vendor and device ID).

(3)

Device type (PCI class).

(4)

PCI command register. This register is set by the PCI BIOS on startup or by the operating system. The most important fields in this register are:

  • bit 2 — Bus master enable

  • bit 1 — Memory space enable

  • bit 0 — IO space enable

Leutron Vision frame grabbers require that the bits 1 and 2 are set to work properly, so the last two digits of its command register must be set to 06. If bus mastering is disabled, probably the PCI slot where frame grabber is plugged does not support this feature. Change the PCI slot. This condition is frequent on CompactPCI systems where not all the slots are enabled for bus mastering. If the memory space is disabled then either the PCI BIOS or the operating system disabled the board. Check the BIOS configuration and the device configuration under your operating system.

(5)

Physical base address of the device. Some devices have no accessible on-board memory so this field is set to 0. For Leutron Vision frame grabber boards this address must be greater that 100000 (1 MB). Note that the last two digits should always be 00 — if not, there is probably a connection problem. If this field is 0 or less than 1MB then probably the board has been disabled either by the PCI BIOS or the operating system. Check the BIOS configuration and the device configuration in your operating system. See the command register information.

If the base address is 0 for the VGA board, then the board does not support linear addressing and cannot be used for direct on-screen live video applications. This can be caused by hardware limitations, in case of old VGAs, or by a non-proper VGA driver has been loaded. Always install the latest driver from the VGA manufacturer, do not trust the drivers delivered with Windows because they might not use or enable all board specific capabilities.

(6)

IRQ used by the device. When it is set to 00 or FF the device does not use any IRQ. Leutron Vision frame grabbers should always have this field set to a valid value to work properly. If the IRQ field is 00 or FF check the BIOS configuration and eventually manually specify an IRQ for the board. IRQs can be safely shared among PCI devices but not with ISA boards. If the log reports conflicts with IRQs used by ISA devices, manually specify IRQ configuration in the BIOS. Possibly, problems could arise when the frame grabber shares the same IRQ with high traffic devices like network boards or disk controllers. Either change the PCI slot where frame grabberis plugged or manually configure the IRQs. The PCI BIOS by default assigns an IRQ to VGA boards. This is normally not used by the board so sharing the same IRQ with a VGA usually does not have any effect on the frame grabber.

Leutron Vision device configuration
----------------------------------- Grabbers(1)
------------------------- PicPortPro Xpress Stereo RTF(2)
RxxPtr sys: 0x0E320000                                
...
----------------------- Novram content(3)                
Novram rev 01                                         
Print Id     :    41 (0x29)                           
Print Rev.   :     1 (0x1)(4)                            
...
Prod.Code    : 10331.1.0011280 [xx]                   
Base ProdCode: 10331.1.0011280                        
Serial Nr.   :    22 (0x16)(5)                           
...
-------------------------                             
FPGA versions:                                        
    PCI  : 0002.0006(6)                                  
    PCI 0: 00000000000000000000000000000000           
    PCI 1: 11111110000000000000000000000000           
    PCI 2: 11101111000000000000000000000000           
...
------------------------- CLP Modules(7)                 
Proc 00: CamOutDF12_0         [-- - 00]               
Proc 01: CamOutDF12_1         [-- - 01]               
Proc 02: FmbIn_QuadFiFo01     [00 0 02] [00 1 02]     
Proc 03: FmbOut_TripleFiFo0   [-- - 03]               
Proc 04: GainOffset           [03 0 04] [03 1 04] [03 
Proc 05: Bayer_5x5            [04 0 05]               
...
-------------------------                             
Detected FMB memory 64 MB(8)  
...
---------------------------------------- Devices Network from lvBusCamNet.dll(9)
10.0.2.5 - 1124 0023                                                         
---------------------------------------- Device configuration                
------------------------- LvCam on network                                   
Reading header                                                               
...                           
(1)

Beginning of the section with Leutron Vision frame grabber configuration.

(2)

Name of a frame grabber detected on the PCI bus of your system.

(3)

Novram content of the board. It contains various unique important information about every board produced by Leutron Vision.

(4)

Revision number of the board.

(5)

Serial number of the board.

(6)

FPGA (firmware) version currently loaded in your board. If this is too old, not all functionality of the board might be enabled. In such case oyu need to get the latest firmware version from the “firmware” section of our download area.

(7)

Additional processing modules loaded on the frame grabber. Please note that these modules area only available on the “RTF” versions of the boards.

(8)

Amount of frame buffer memory provided on your board.

(9)

Beginning of the section with Leutron Vision PicSight®-GigE cameras configuration. Similar kind of information is listed for each camera detected on the network, as in the “grabbers” section described above.

2.3.2. Dedicated log files

2.3.2.1. Log files related to PicSight®-GigE cameras

The LV-SDS components responsible for handling the PicSight®-GigE cameras can create additional log files helping to analyze any GigE Vision specific problems. To switch these logs on, enable following options in the leutron.ini file:

[LvBusCamNet]
EnableLog=1

[LvGvp]
EnableLog=1

The lvgvp.log and lvbusnet.log files will be created in the bin directory of your LV-SDS installation. The first logs activity of the subsystem implementing the GigE Vision standard protocols (GVCP and GVSP), the latter provides information about the library responsible for enumerating, communication and register access for the PicSight®-GigE cameras.

These logs are usually not very explanatory to the user and in case of some problems with the PicSight®-GigE cameras, the logs should be sent directly to our support team.

2.3.2.2. Log file of the Camera Link API Library

All the communication through the Camera Link API Library can be logged to a dedicated log file named clser.log. To switch it on, you need to edit the win.ini file (under Windows) or leutron.ini (under Linux). In this file edit or create following section:

[Leutron Vision]
clserLog=1

The clser.log file will be generated in the directory from which you started the application.

The file contains various debugging information about the communication through the library, but the most interesting part for the users is that all the strings sent through the library in both directions are listed in the log. User can thus observe, whether the communication went as expected or what caused eventually a problem.

---------------------------------- clser Loaded
clser FindRXX(1)
PCIInfo check: 8086 1A30
...
PCIInfo check: 1589 0004
HasSerialCL(2)
...
clSer: Init: Index=0 Id=0x55000000 -> 
clSer: SetParam baud 57600 on 0x55000000(3)
...
Read enter Head=0 Tail=0               
On timeout Head=0 Tail=0 RxValid=0     
clSer: Read: Tout=100 #16384 -> Timeout(4)
             Tout=100 #16384 ->        
...
clSer: Write to 0x55000000
Write enter Head=53 Tail=53
clSer: Write: Tout=1000 #7 -> 6D 6F 64 65 3D 33 0D(5) 
              Tout=1000 #7 -> m  o  d  e  =  3  _(6)  
Write exit Head=53 Tail=53
clSer: Read from 0x55000000
AsyncMode: 1
Read enter Head=53 Tail=53
clSer: Read: Tout=1000 (CR) #16384 -> 53 55 43 43 45 53 53 0D(7) 
             Tout=1000 (CR) #16384 -> S  U  C  C  E  S  S  _  
Discarded: -> 0A(8) 
           -> _  
Read exit Head=62 Tail=62(9)
...
clSer: Closing 0x55000000
---------------------------------- clser Unloaded
(1)

The library is searching for Leutron Vision frame grabbers with Camera Link interface.

(2)

A Leutron Vision frame grabber with Camera Link interface was found.

(3)

A connection was open and baud rate changed (in this case to 57600 baud).

(4)

First attempt to read characters resulted in a timeout (no pending characters sent from the camera were available).

(5)

Log of characters sent to the camera through the grabber and Camera Link API Library. Each character is expressed using its hexadecimal value. This helps to analyze the characters when communicating with cameras using binary (register based) protocols.

(6)

The same set of characters sent to the camera, this time translated to ASCII. This helps to analyze the strings when communicating with cameras using ASCII based protocols.

(7)

Reading camera response (again listed in both binary and ASCII versions).

(8)

A character was discarded during read operation. This happens usually just when the Camera Link API Library is used by other LV-SDS components, using some advanced functionality not (yet) available in the Camera Link standard.

(9)

Head and tail of the input FIFO point to the same offset. This means that the input buffer is empty (no characters are pending because they were not yet read).

When using the Camera Link “roof”API Library (clallserial.dll), an additional log, clall.log, can be created. You can enable it in the very similar way as enabling the clser.log, adding one more line in the same .ini file section:

[Leutron Vision]
clallLog=1

We will not discuss it in detail here as its structure is quite simple. The log contains following information:

  • Values of the configuration options for the library.

  • List of the DLLs loaded, with information whether the load was successful and which manufacturer provided that DLL.

  • Total number of Camera Link ports accessible through the loaded DLLs, with description for each port and information about the Camera Link API version supported by that port.

  • Logs of calls to the most important Camera Link API functions, including some important parameters passed to the functions and including the return values.

This information should help to troubleshoot most problems associated with using the Camera Link “roof”API Library (clallserial.dll).

2.3.2.3. PicPort® and PicProdigy® demo log file

The PicPort® and PicProdigy® demo program creates a pp_demo.log file in the bin directory of your LV-SDS installation. This file is generated each time PicPort® and PicProdigy® demo is executed, it does not need to be switched on. It holds information about all important actions performed by the user while experimenting with PicPort® and PicProdigy® demo, allowing thus to reproduce a sequence of operations leading to a problem.

2.3.3. High level logging infrastructure

Some of the higher level LV-SDS libraries and tools (most notably Orchid library) use a common logging infrastructure (“LvLogFile”) allowing to collect log strings from all these subsystems at one place, storing them in a file and/or displaying them in real time to the user in an application window. This infrastructure is common across all operating systems supported by LV-SDS even if it might be implemented by different means (window messages under Windows, message queues under Linux).

Besides the text itself, each log message sent through this infrastructure can hold additional information, such as its origin, thread ID and more.

2.3.3.1. Enabling sending the log messages

To improve performance of our libraries, the LvLogFile messages are composed and sent only when explicitly required by the user. To enable it, one has simply just to start the “receiver” application designed for displaying, filtering and storing the log messages.

The Windows version of such application is named Log Messages Receiver and can be started using the Windows Start menu: StartProgramsLeutron VisionLog Messages Receiver. Details about using the application are provided in Section 2.3.3.2, “Using the Log Messages Receiver application (Windows)”.

The LvLogFile functionality under Linux is currently used for internal purposes only. Leutron Vision might send you a receiver application with additional instructions whenever it will be helpful for solving possible problems with our products under Linux.

2.3.3.2. Using the Log Messages Receiver application (Windows)

The Log Messages Receiver application is designed to receive log messages from some Leutron Vision libraries and applications (for example from the Orchid library, DirectShow filter etc). The main purpose of this application is to record these messages to a file, which can be then sent to the Leutron Vision support service in case of troubleshooting, namely when developing applications.

Logging takes some processor time (so it may slow down your application) and consumes space on disk — and thus it is switched off by default, if the presence of the Log Messages Receiver program is not detected at your application startup. So to be able to receive log messages, you must start the Log Messages Receiver program before starting your application, which uses LV-SDS libraries.

[Important]

You must leave the Log Messages Receiver running in order to receive the log messages. Terminate it only after you terminate your application.

Log Messages Receiver, application window

Figure 2.1. Log Messages Receiver, application window


The Log Messages Receiver application has simple interface:

Receive log messages

When switched on, the log messages are received and displayed in the Log Window, and optionally saved to the log file.

Hide Log Window

This button serves for displaying or hiding the Log Window.

Clear Log Window

This button clears the content of the Log Window.

Save log messages to a file

When switched on, the log messages will be also saved to the specified file. Switching on does not save messages already received and displayed in the Log Window.

Buffered logging

Buffered access speeds up logging. Uncheck it only in case your application crashes the whole operating system unexpectedly, so that some lines from the Log Messages Receiver would not be saved. If switched off, you may hear noise from frequent head moving in your hard disk and logging becomes slower.

Max log file size in kilobytes

If the size of the file is higher than stated, the log file is erased. This check is done only when opening the log file, not during the run, so the log file size can grow over this limit during recording of the log messages.

View log file

Displays the log file contents in Notepad.

Clear log file now

Deletes the log file.

Full log file name

The name cannot be typed directly. If you want to change it, press the Browse button and specify the proper folder and file name there.

2.3.3.3. Reusing the infrastructure in user applications

In some situations it might be useful to reuse the logging infrastructure in user applications and append thus application specific logging to that generated by LV-SDS tools or capturing/processing the log strings in user applications. The interface of this infrastructure is currently under development, so it is not documented and made available to the users. However, it might happen in future. If you are interested in such possibility, please contact Leutron Vision.

Contacting Leutron Vision

Headquarters (Switzerland)

Address: Industriestrasse 57, CH-8152, Glattbrugg, Switzerland

Phone: ++41 44 809 88 22

Fax: ++41 44 809 88 29

E-mail (sales): , e-mail (support):

Web: www.leutron.com

Germany and Austria

Address: Macairestrasse 3, D-78467 Konstanz, Germany

Phone: ++49 7531 53 42 0

Fax: ++49 7531 59 42 99

E-mail (sales): , e-mail (support):

Web: www.leutron.com/de/

North America

Address: 25 Mall Road - Suite 300, Burlington MA 01803, USA

Phone (sales): ++1 888 442 22 69 (1), phone (support): ++1 888 442 22 69 (2)

Fax: ++1 781 353 39 43

E-mail (sales): , e-mail (support):

Czech Republic and Slovakia

Address: Rokycanska 27, CZ-31200 Plzen, Czech Republic

Phone: ++420 377 260 342

Fax: ++420 377 260 944

E-mail (sales): , e-mail (support):

Other countries

Customers residing in other countries should have a look at the list of our representatives for a distributor in their country. If no distributor exists in their country, they should contact the headquarter office directly.

Useful links