My Requests

Drivers Manual

Laser Scanning - LEICA P15 / P16 / P20 / P30 - 20


Driver to decode laser data from a Leica ScanStation: an ultra-high speed laser scanner.

The following models are currently supported: P15, P16, P20, P30, P40 and P50 (see special note below).

Main difference between the different models is the physical maximum range limitation: P15 and P16: 40 meters, P20 and P30: 120 meters, P40: 270 meters, P50: 1000 meters.

Another difference is the laser class being used: The P15 and P20 use class 2, which is not eye safe. The other scanners use the eye safe laser class 1.

Profiler Mode

  • The driver supports the Leica ScanStation only in so-called profiler mode , i.e. the laser unit will not turn horizontally.
    Typical application for scanning in profiler mode would be to mount the scanner on the roof of a car, together with a GNSS / INS system, in order to scan roads.
  • The imaging capabilities of this scanner are not supported by this driver.
  • It is important that your laser scanner device uses the latest firmware (v.2.90 Leica release May 2019).
    Contact Leica or your vendor to check if the latest version has been installed.
    See also the Troubleshooting comments under Additional Information,

Special note for P50 model users with Qinsy 8.18:

Select the P40 driver for this one which should work equally.
In the event that you do encounter problems, please contact QPS with details.

The extra long range mode is not supported in this version: for this you should upgrade to Qinsy 9.0.

Driver Information

Driver LEICA Pnn Interface Type Freebase/TCP/IP  Driver Class Type Freebase 
UTC Driver (question) Yes Input / Output  Input/Output Executable DrvLaser.exe LEICA_P20 | LEICA_P40 | LEICA_P50
Related Systems

Related Pages

Decoding Notes

Data is always broadcast via TCP network. Use a fast (Gigabit) network card, due to the enormous amount of data to be expected. Connect the scanner using the dedicated LAN cable to your computer's network card.

The actual raw binary data-stream is Leica's own proprietary format, which is not described by this document.

The driver is configured as a Multibeam System and creates 'multibeam' range/angle observations.

('multibeam' versus 'laser scanning' terminology: ping = scan (i.e. 1 vertical line scan), footprint = pixel = point = pulse, swath = line = scan)

The number of beams (pixels) depends on the on-line used settings, like (user-definable) range mask, vertical angle mask, sector reduction, etc. (see Controller Setup below). The maximum theoretical number of beams per scan is 1 million. Under normal conditions you would expect values of 2000 to 5000 pixels.

The number of scans (lines) per second is also a user-definable setting and can be 50 Hz or 100 Hz, or another value when using the optional scan interval setting.


Besides the range and angle of every laser pixel, the driver also decodes the returned intensity. This intensity is normalized, which means that a surface scanned at close distance should return the same intensity as when being scanned at a distance further away.

A low intensity means a surface with less reflection (e.g. black color) has been scanned and a high intensity value means a highly reflective surface has been scanned (e.g. white color).

Qinsy will store this intensity as follows:

  • The decoded value is stored as Intensity, a floating number between 0.0 and 100.0.
  • The decoded value is also stored as Quality, an integer number between 0 and 255.

So if you color code your point cloud on Intensity, use a color map scale of 0 - 100, and if you color code on Quality, use a range of 0 - 255.

Interfacing Notes


Without external time synchronization, the driver will time-stamp the data when received at the TCP port. However, due to network characteristics in general, this may result in inaccurate timing.

Therefore it is highly recommended to interface the ScanStation with a ZDA time / PPS (Time Synchronization) pulse from an external GPS receiver, in order to time-tag all data with UTC.

  • Use the dedicated synchronization cable GEV275 to connect the scanner with your external GNSS or INS device.
  • Your device should deliver Time Synchronization (PPS) pulses and NMEA ZDA time messages at 1 Hz.
  • Baud rate of the ZDA message is by default set to 4800, 8, 1, none.
    Notice that scanners with firmware v.2.11 (Leica release November 2015) or higher do support higher baud rate values.
  • The message should be sent after the falling edge of the Time Synchronization pulse.
  • Number of decimal digits of the ZDA message must be 2 in case your scanner is using older firmware. Newer firmware (e.g. v2.5) will support automatically a ZDA message with more decimal digits. 
    E.g. an Applanix POS MV will by default output ZDA with four decimal digits.
GEV275 Lemo connector cabling PPS (BNC) Serial DB9 RS232

Time synchronization

Pin 2


Core of coax

PPS pulse

Pin 8 (Ground)


Shield of coax

Pin 5 (Ground) NMEA ZDA message
Pin 9


Pin 3 (Tx)

It is important that Qinsy is also interfaced to a Time Synchronization System (aka PPS system), so all systems will operate in the same time frame.

Network Setup

All communication to and from the laser unit goes via the LAN network.

Use the dedicated GEV228 Ethernet cable to connect the ScanStation to the Ethernet network card of your Qinsy computer.

Network settings are rather easy, the only thing you have to remember is the name of the scanner.

This name will act as the DNS host name of the scanner, and is something like  PXX-18nnnnn (for the P16 / P30 / P40 / P50 model) or P20-184nnnn (for the P15 / P20 model) where 18nnnnn is the serial number of the scanner, which can be found on the silver sticker at the bottom side of the scanner.

It is recommended to check the network connection between your computer and the laser unit before commencing any scan operation.

You may do this by using the ping command from the Windows Command Prompt:

Select Start from the Windows Task bar, Run..., Cmd <Enter>, and 'ping' the host name of your laser unit.

The network connection is okay when you receive a reply three times within a few milliseconds.

It is recommended to use optional parameter '-4': the returned reply will contain the assigned v4 IP address of the scanner, instead of the longer v6 IP address.

Online you may also use this v4 IP address instead of the DNS host name in order to connect to the scanner.

If you can ping the scanner without using parameter '-4' but you don't get a reply when using it ("Request timeout") then please change the Internet Protocol Version 4 (TCP/IPv4) setting of your network card from automatic to match the range of the laser scanner itself:

Failure to do so may result in Error code 6 or 7 when going online with the Controller and trying to start the scanner.

Database Setup

Internally the driver is treated as a multibeam system, creating multibeam 'range/angle' observations, therefore you will find the laser system drivers under category type Multibeam Echosounders.

Edit System Wizard
  • Add a Multibeam Echosounder system to your template setup and select from the list driver "Laser Scanning - LEICA P15 / P16 / P20 / P30" or "Laser Scanning - LEICA P40 / P50".

  • No additional I/O parameters or network settings are needed. 

    Note that the DNS host name of the scanner has to be entered in the Online Setup.

Multibeam Echosounder Parameters 
  • Important are the Transducer Location (Node) and Mounting Angles (offsets) on the second wizard page.

    The exact values for the roll, pitch and heading offsets should be established with a calibration procedure.

    Before such a calibration one should use values as accurate as possible.
    For example when the scanner is mounted up-side down, you can already enter 180° for the roll offset value.

  • Set the maximum beams per ping value to 20000.

Echosounder Accuracy Parameters
  • You may leave all values on the third wizard page at their defaults.

Multibeam Echosounder Corrections
  • You may leave all values on the last wizard page at their defaults.

Windows Firewall

The very first time Windows may pop up a security message:

Just enable all check-boxes!

If you forgot to do this, or if you are not sure if this has been done, you may want to follow the steps as described in the Additional Info or Trouble Shooting section about Windows firewall.


Select Echosounder Settings, click on the Laser System icon, and select the 'Control' tab page.

Control Device Settings

Selected action will be send to the laser unit, immediately after hitting the Apply or OK button. You must have initialized the connection first in order to select any action.

Notice that any selection will always revert back to [None], after each selected action.

Always wait a few moments after each action, until the status in the Event list is updated with a message. It takes some time before the unit handles the requested command (action) and reverts back.

Normal response time of the scanner after the Start action will be between 5 and 10 seconds. The very first time after booting, this period may take up to 30 seconds! In the meantime you can not change any other setting. Just be patient until the scanner starts scanning...

  • [None]
    This will be the selection after each action. Nothing will happen when hitting the Apply or OK button.
  • Start 
    Select this action in order to start scanning in profiler mode.
    Notice that it may take quite some time before the first data is received, so be patient until the scanner starts scanning.
    If scanning could not be started for some reason, check the message in the Event list for a possible solution.
  • Stop
    Select this action in order to stop scanning. Scanning will be stopped immediately, after hitting the Apply or OK button.
    Notice that it takes some seconds before the scanner will acknowledge that all has been stopped. Until then you can not change any other setting.
    On the rare occasion that the scanner does not respond to any command and keeps on spinning, you can go offline by closing the Controller. This will take a little longer than normal, but it will stop the scanner in the end. If this doesn't work, you should stop the scanner using the user interface on the scanner itself.
  • Pause
    This action will stop the data stream from the scanner to Qinsy, but does not stop the mirror from rotating.
    In order to resume scanning again, select the Start action. Or select Stop if you also want to stop the mirror rotating.
  • [ Request Status ]
    This action will return some internal status information from the scanner for the current scan, or for the last scan in case the scanner has been stopped.
    The information is displayed in the Events list, but can also be found in the laser log file. In case of possible problems with your scanner, you can present this information directly to Leica for further analyses. See the status table for detailed information.
    Notice that status 0 Hex is returned when you have not started the scanner yet, so i.e. that you need to start scanning at least once in order to receive valid status information.
  • [ View Daily Log File ]
    This will open the laser log file using the standard Windows text editor, e.g. Notepad.
    More information about the laser log file can be found in the Additional Info pane of this document under section Troubleshooting.
Profiler Scan Mode
  • P15 / P16 / P20 and P30 model
    Select one of the 9 first listed possible combinations of speed/distance and angle resolution.
  • P40 model
    Select one of the 16 first listed possible combinations of speed/distance and angle resolution.
  •  P50 model
    Select one of the 24 listed possible combinations of speed/distance and angle resolution.

Notice that for 100 Hz combinations you need to have the laser scanner connected to an external power supply (GKL123).
If your scanner is running on batteries only, selecting 100 Hz is possible but will only result in 50 Hz.

Scan Interval

Leave at 1 (default) to accept all incoming scans (50 or 100 scans / second).

To use every n-th scan only, use a value greater than 1.

For example, a value of 5, in combination with a profiler scan mode set to 50 Hz, will result in 10 scans / second.

Vertical Area Selection

Scanner head rotates 360 degrees every line at high speed.

0 deg means looking down, 180 deg means looking up, 90 deg means looking starboard and 270 deg means looking port.
The starboard and port direction mentioned here is when you are facing the scanner's display.
Note there is a 70 degrees physical mask from 0 - 35 degrees and from 325 - 360 degrees.

Select the required scheme from the list.

Excluded data due to this setting will not be recorded.

Schemes are defined in the Laser Device Settings XML file.
They are allowed to be added, deleted or modified by the user in order to meet your local survey specifications and conditions.

Do not edit other tags/elements. Contact QPS BV in case modifications are required, and always make a backup before making any modification.
Location of DrvLaser.xml will be the Qinsy program installation folder, subfolder XML.

Notice that the Mask Sector Start / End Angle must be defined using the scanner's local co-ordinate system.

The default predefined schemes are for a scanner which is mounted normally.
The XML file contains also predefined schemes for a scanner mounted up-side down, but they are disabled.
You may enable these schemes using an XML editor, but don't forget to disable the default enabled schemes.

Please contact QPS if you are not familiar with XML file editing.

Sector Reduction

Select the required scheme from the list.

Excluded data due to this setting will not be recorded.

Schemes are defined in the Laser Device Settings XML File.
They are allowed to be added, deleted or modified by the user in order to meet your local survey specifications and conditions.

Do not edit other tags/elements. Contact QPS BV in case modifications are required, and always make a backup before making any modification.
Location of DrvLaser.xml will be the Qinsy program installation folder, subfolder XML.

Notice that the Sector Start / End Angle should be defined using the scanner's local co-ordinate system.

To skip all pixels, set Interval to 0, to use all pixels, set Interval to 1 and to use every n-th pixel only, set Interval greater than 1. Notice that omitting a Sector Interval value means 0 (skip all)

Performance-wise, it is not recommended to use a Sector Reduction scheme to skip all pixels (i.e. Interval 0) for a desired sector. Instead you should use a Mask Scheme of the Vertical Area Selection, see above.

Minimum Range

Set the minimum required range in meters.
Valid values: 0 to 40 meters for the P15 / P16, 0 to 120 meters for the P20 / P30, 0 to 270 meters for the P40 and up to 1000 meters for the P50 model.

Using this setting is recommended, but be careful: Blocked data due to this setting (i.e. all pixels less than this range) will not be recorded!

Maximum Range

Set the maximum allowed range in meters.
Valid values: 0 to 40 meters for the P15 / P16, 0 to 120 meters for the P20 / P30, 0 to 270 meters for the P40 and up to 1000 meters for the P50 model.

Using this setting is recommended, but be careful: Blocked data due to this setting (i.e. all pixels more than this range) will not be recorded!

Minimum Intensity [%] Set the minimum required intensity. Valid values: 0 to 100 percent.

Note that blocked data due to this setting will not be recorded!

This option may not be available in your setup. In that case all signal strength values will be accepted.
Maximum Intensity [%] Set the maximum allowed intensity. Valid values: 0 to 100 percent.

Note that blocked data due to this setting will not be recorded!

This option may not be available in your setup. In that case all signal strength values will be accepted.
Store Laser Location If enabled, an additional pixel with zero range will be added to each line scan, in order to indicate the exact laser scanner location in the resulting point cloud.
This extra pixel will always have beam number 0, and its intensity and quality values will be zero.
Use PPS (Time Synchronization)
  • No
    Not recommended, but can be useful during an office test.
    The decoded laser data will be time stamped when received at the network port.
  • Yes
    This setting is highly recommended, in order to use exact time stamping of the laser data.
    When enabled, the laser unit must receive a valid Time Synchronization pulse and NMEA ZDA time message from an external GNSS receiver, and your Qinsy setup must contain a valid Time Synchronization system.
  • Yes [ With Monitoring ]
    Note that this option is only applicable when using the P40 / P50 scanner.
    When this option is selected, the driver will ask the scanner every 50 received profiles the current (PPS) counter and it will be stored in the recorded data.
    It is recommended not to use this option under normal circumstances. Only if you suspect timing issues you may use this option in order to analyze the recorded data afterwards in combination with additional information from the daily laser log file. The current counter value can also be viewed in a Generic Display with item reserved1 under group RAW DATA, Category Multibeam Echosounder.

See Timing for more information about interfacing to an external time.
Read also the important comments about the Ping Age value which can be monitored using a Generic Display.

ZDA Baudrate

Set the baud rate for the ZDA message from the external GNSS receiver connected to the scanner (using synchronization cable GEV275).

Leica Firmware v2.50 or higher should be installed on the scanner. Scanners with older firmware support only a baud rate of 4800.

There is no user-interface on the scanner itself to set the baud rate so this option instructs the scanner what baud rate the ZDA message has that goes into the scanner.

When you change the baud rate and press the Apply button, it is recommended to watch closely the results in the Events list to see if the scanner has accepted the correct baud rate.

The value displayed in the row with "Current Baudrate (ZDA):" is the one that is reported back from the scanner.

Validation Check

When changing settings, the theoretically expected points/sec will be calculated, which should not exceed the recommended maximum points/sec.

The expected points/sec depends on the selected Profiler Scan Mode, the Scan Interval, the Vertical Area Selection and a possible Sector Reduction selection.

Qinsy handles only approximately 250 thousand measurements per second. However, this value can be safely much higher but depends highly on the used hardware.
Nevertheless it is important to prepare the project prior to the start of the scanning by optimizing all parameters to meet the necessary requirements:
Select the right scan rate, vertical area selection, sector reduction and/or range blocking in order to decrease the number of expected points/second.

An advanced user may overrule this limitation of maximum 250 thousand points per sec: Disable the Validation Check in order to ignore the warning and continue.

Host Name
[, DNS Computer]

Enter the exact Host name of the scanner: Pmm-18nnnnn , with mm being the model of the scanner (e.g. 15 or 20, or XX for newer scanners) and 18nnnnn being the scanner serial number.
See the sticker on the bottom side of your instrument for the correct serial number.
Example: P20-1840403 or PXX-1850358

Notice that this field is only editable when Initialize Connection is 'No'.

After you enter the correct host name, initialize the connection and check for a positive result in the Events list: The DNS host name (Client) of the Qinsy computer will be displayed plus the assigned streaming port number (default 10002).
(Instead of the Host name you may also enter the exact IP v4 address of the scanner, however using the Host name is recommended)

In the rare occasion that the name of DNS of the Qinsy computer (Client) can not be established automatically, or that the wrong network card is automatically selected because of multiple network cards being installed, you can enter the DNS name yourself (or the IP v4 address) of the Qinsy computer network card (physically connected with the scanner). Both fields must be comma separated.
Example: P20-1840403,
In this example is the IP address of the network card inside the Qinsy computer that is connected to the scanner.

In the situation that you need to connect two ScanStations simultaneously, you need to change the default streaming port number for the second scanner.
The first scanner will use default port number 10002, and it is recommended to use for the second scanner port number 10003, by separating the Host Name and the port number value with a ':' colon character:
Example: P20-1840106:10003

Initialize Connection

Inform the scanner SDK with network parameters.

Make sure to set the Host Name of the scanner correctly, otherwise the Start scanning action will fail.

You only have to set the host name and initialize the connection once. The next time you go online with the Controller, it will be done automatically (if successful).

Notice that you can only edit the Host Name when this initialize connection is set to 'No'.

Generic Display

The Generic Display can be used to validate the laser data integrity. It shows the numerical values for the number of beams (pixels) being scanned per ping (scan), the number of beams being scanned per second, the ping rate (scan rate in Hz), range values, etc.

Important value to monitor is the Ping Age, especially when setting 'Use PPS' is enabled. The Ping Age is the difference between the current computer time and the time of the last received data package.

This value should be small, around zero!

There is no feedback from the scanner unit whether it has accepted the incoming Time Synchronization (PPS) pulse and/or ZDA time-tag.

However, a high ping age value (+tive or -tive) is a severe indication that the initial timing inside the laser unit is wrong.
For example, a ping age value of about -25 seconds indicates that the ZDA time message is accepted, but not the Time Synchronization pulse. In this case you should switch off the scanner, re-correct the Time setup and interfacing, and re-boot the scanner.

The Status Flag value indicates whether Time Synchronization is used (value 2) or not (value 0).

You may use the attached example Generic Display Layout file as example: Copy this layout (Use 'Save Link As...') to your current Project's Settings\Display folder and open it using a new Generic Display. You only have to select the correct laser system as defined in your template setup (Select Edit, Layout…, go to RAW DATA, Multibeam Echosounder (2), and select your laser system for both parent items).

Additional Information


The ScanStation has the following features and limitations:

  • Minimum vertical angle resolution 0.018°
  • Vertical spin rate of the mirror is 50 Hz (running on batteries) or 100 Hz (external power supply)
  • Scan rate can be up to 1 million points per second.
  • Vertical field of view is 290°. There is a physical scanning mask of 70°. Scanners with old firmware (< v2.50) have a mask of 90°.
  • Maximum range is 40 meters for the P15 / P16, 120 meters for the P20 / P30, 270 meters for the P40 and up to 1000 meters for the P50. Minimum range is 0.4 meter for all models.
  • The decoded intensity will be a normalized value between 0 (black surface) and 100 (white surface). The value is stored in a Qinsy database as Intensity (0.0 - 100.0) and as Quality (0 - 255).
  • Laser class 2 is used by the P15 and P20, which is not eye-safe. The P30, P40 and P50 use laser class 1, which is eye safe.

Important Information

Note that the driver uses external SDK files from the manufacturer in order to communicate with the scanner.
It is important that the firmware installed on your laser scanner device uses the same version as the version of the SDK being used by the driver.
The firmware of the scanner can be found on the scanners Main menu, Status menu, System Information.
You can check which SDK version the driver is using: it will be mentioned in the top of the Events list when coming online with the Controller:

Both versions should be the same, especially for the first part of the number (in this example v2.80).
In order to upgrade the firmware or check if you already have the latest installed you should contact Leica or your vendor.

If you are still using Qinsy 8.18 the firmware of your scanner should be v2.80 but if you are using Qinsy 9.0 make sure the firmware of your scanner is v2.90.


It may happen that an error message appears in the Events list with an error code:

Code SDK meaning
0 No Error
1 Error
2 Marshalling Error
3 Bad Request Error
4 Bad License
5 Not Connected
6 Bad Host

Bad Connection

When error code 6 or 7 appears please check the instructions in paragraph System Interfacing, section Network Setup for a possible solution.

Highly Recommended

It is important to prepare the project prior to the start of the scanning by optimizing all parameters to meet the necessary requirements:
Make the appropriate Vertical and/or Horizontal Area selection and/or range blocking in order to decrease the number of expected points per second.

Improve Performance

Due to the enormous amount of data to be expected while scanning and recording, it is recommended to keep the system overhead as low as possible.

Here you'll find some tips and tricks in order to fine-tune your setup.

However, these are not strict rules, because each project is different and depends on the current situation and hardware being used. Your goal should be to keep your system CPU usage as low as possible.



Make use of Solid State Drive (SSD), or fast SATA hard drive (7200 - 10000 rpm).


Your network card speed should never be lower than the scanner's network speed. Use a network card that can be configured for 100Mbit or 1Gbit speed. Do not use USB Networking Adapters, because this may result in loss of data when huge amounts of data are being broadcast.

Virus Scanner

Disable Virus Scanner, or at least the setting 'Scan Files when Writing/Reading to/from disk'.

Task Manager CPU

General Task Manager CPU Usage should be less than 50%. CPU load of each display must be less than 10-15%.

Make sure that the 'Working Set (Memory)' column for process Multibeamer.exe and/or DrvResultOut.exe is not constantly increasing, especially during recording.
For detailed information about this see the section Real-time Performance Monitoring below.


Laser Device Settings

During project preparation, establish the optimum settings in order to achieve the required results.

The most benefit you will gain from setting the Scan Speed, Scan Rate, Scan Resolution, Angle Resolution, Vertical Area Selection, Scan Area Selection and Sector Reduction as well as possible.

Especially the Vertical or Scan Area Selection is very important. Make use of Mask schemes to define areas which you don't want to scan.


Raw Multibeam Display

Open only one Raw Multibeam Display.

Disable the options 'Show Big Dots' and 'Draw Lines'.

Navigation Display

Open only one Navigation Display.

Preferably disable DXF and TIFF layers or other big background files. These layers should only be used during project preparation.

When 'object tracking' is enabled, do not zoom in too close. Keep in mind that the display should not be 'refreshed' more than 1x per second.

3D Point Cloud Display

It is not recommended to use a 3D Point Cloud Display.

If you do so, make sure your hardware contains a high-spec video card.

Under Sensor settings set the Time window setting to a short period, e.g. 10 sec

- Sounding Grid

- Dynamic Surface

Storage to a Sounding Grid is not recommended, and should be purely for display purposes: e.g. for checking the scan coverage or for showing the 95% Confidence Level statistics.

If you do want to see the scan coverage then it is advisable to store to a sounding grid and not to the dynamic surface

Do not use a small cell-size, preferably not less than 1.0 meter.

If you notice in the Navigation Display that the real-time sounding grid is drawn/updated with a delay, then please increase the cell-size or disable the storage completely.

Offline (Replay) there are no limitations and you may use small cell-sizes, e.g. 0.10 meter.



In Replay there are no limitations as mentioned above: use as many displays as you like, store to sounding grids with small cell-sizes, update the dynamic surface, etc.

All this may only affect the replay speed, but the data integrity of your final DTM processing files should be fine.

Controller Computation Setup

While working online, disabling the laser system in your Computation Setup will have the most effect on the performance

Footprints will not be geo-referenced, nor corrected for motion, heading or timing in real-time. This will save a tremendous amount of CPU power and memory usage.

This tip allows you to get the most out of your scanner: maximum scanning speed and maximum scanning rate, without the risk of losing scans due to performance issues.

Drawback is that no DTM file (e.g. QPD) is created, nor a sounding grid is filled, while working online.

To create a final DTM and/or Sounding Grid file you need to Replay the recorded databases afterwards.

Real-time Performance Monitoring

When the scan data rate is too high, the other core Qinsy processes may not be able to handle the amount of data published by the driver (too many pixels/sec.) and in the past it would eventually crash the system.

An extra safety check has been implemented in order to prevent crashing of Qinsy: abnormal memory usage will be detected and when it exceeds a certain threshold limit a Stop command will be sent automatically to the scanner.

When that happens, the following message is displayed in the Events list in order to inform the user:


Whether such an event may occur is very much hardware dependent and/or on which settings are used.

You can check yourself if your setup is vulnerable: open the Windows Task Manager and monitor process Multibeamer.exe and/or DrvResultOut.exe while scanning. Under normal conditions the memory used by these processes should be constant.
If you notice that column Working Set (Memory) is constantly increasing, then the process will eventually crash when it exceeds 2GB and you will have to restart Qinsy. Note that 2GB is the maximum memory allowed for a 32bit process.

There may be situations that the default 1.7GB threshold is a little too low, or that the Stop scanning command must be sent earlier, e.g after exceeding a memory usage of 1GB.
So as an advanced user you may modify the following registry key in order to increase this threshold:


  • If you enter a value (in bytes) higher than 2GB it won't be accepted and the default will be used. You may try the following key value: 2000000000
  • If the value is set to zero, no monitoring of the Multibeamer.exe or DrvResultOut.exe process memory usage will be done. This is at your own risk because it may cause a crash when the memory usage exceeds 2GB.

But most important

Try to prevent having such events happening in your setup:

  • Check all your hardware and upgrade where possible. (Especially CPU power, Memory installed, Network card, Hard disk storage, etc.)
  • Read carefully the Improve Performance paragraph and try to follow up all the tips.

Network Problems

If you experience problems using your laser scanner in combination with this driver or if you need additional information or support, then please attach the daily laser log-file when submitting your JIRA support ticket.

At the bottom of this page you'll find the information on where to find this daily laser log file.

Windows Firewall

A commonly reported problem is that network data is blocked by the Windows Firewall.
When this happens you may see that data does come in using other utilities (like the I/O Tester or the manufacturer's own software), but that the Qinsy driver does not accept any data.

The following (Windows 10) steps may solve this:

  1. Go offline, open the PC Settings (Start menu, Settings)
  2. Select Windows Firewall (Update & Security, Windows Security, Firewall & network protection)
  3. Select Advanced settings
  4. Select Inbound Rules, highlight all 'Driver for Laser Scanning' entries and delete them using the right mouse popup menu (or Del key)
  5. If you now go online, the Windows Security Alert message will pop up: It is important to tick all three check boxes!

Multiple Network Cards

Another possible problem could be that your computer has more than one network card installed (e.g. LAN and WIFI), but within the same sub-net mask range (
It is recommended to make the first three digits unique for each network card IP address.
You may check the daily laser log-file, it will show the IP addresses for all available network adapters and indicates which one the driver will use:

Please check that the driver is using the correct one!

Missing Data

If you occasionally experience gaps in your data, this may be caused by a general Windows setting that affects the data throughput of your network card.

Change the following registry key: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Multimedia\SystemProfile\NetworkThrottlingIndex

Set the new value to ffffffff (which will tell Windows to disable network throttling) and restart the computer.

Note that disabling network throttling may affect playing multimedia on your computer, but for laser scanning operations it is advisable to have a maximum data throughput of your network.

Daily Laser Log File

All user actions, system information and reported errors are logged in a daily laser log file which can be found in the current project's LogFiles subfolder.

The filename convention for this ASCII log-file is <System Name> DD-MM-YYYY.log, so every day there will be a new one.

Note that all time stamps in this log file are by default in UTC. An advanced user may change this to local time zone (LTZ) by changing the registry key:
HKEY_CURRENT_USER\Software\QPS\QINSy\8.0\Drivers\DrvLaser\Settings\TimeLogFileUtc value from 1 to 0.

Status Table 

Action [Request Status] will return some internal status information from the scanner for the current scan, or for the last scan in case the scanner has been stopped.

Value Status
0 Undetermined or Failure
1 Calculating
2 Imaging
3 Paused
4 Calibrating Tilt Sensor
5 Preparing Scan
6 Scanning
7 Scanning No Rec
8 Ready
9 Initializing
10 Running

Advanced User Registry Options


Although the ScanStation may output 1 million points per second, be aware that Qinsy handles only approximately 250 thousand measurements per second. This value can be safely much higher but depends highly on the used hardware.
Nevertheless it is important to prepare the project prior the start of the scanning by optimizing all parameters to meet the necessary requirements: 
Select the right profiler scan mode, vertical area selection, sector reduction and/or range blocking in order to decrease the number of expected points per second.

An advanced user may overrule this limitation of max 250 thousand points per sec. 
The best reason for doing this is to by-pass the check which is done by the driver every time prior to the Start command to see if the theoretically expected number of points per sec does not exceed the limitation.

In order to change the key value go offline and find the following key using the Windows registry editor:
HKEY_CURRENT_USER\Software\QPS\QINSy\8.0\Drivers\DrvLaser\LEICA_SCANSTATION\<System Name>\Settings\QINSyMaxPixelPerSecond
You may enter a value up to 1 000 000. Please notice that when you do use a higher value, it is highly recommended to store only to db, and not to DTM nor Sounding Grid file, and only have a limited number of displays open.
A DTM file (QPD) can always safely be created with Replay.

See also the comments in the Troubleshooting section and in the Qinsy Online section the Validation Check option in the Controller settings.


As explained in the Troubleshooting section, Real-time Performance Monitoring, the laser driver will continuously monitor external core processes to prevent possible crashes.
In case your setup contains multiple laser scanners, it may be useful that only one laser driver of your setup does this check instead of all together checking the same core processes.

As an advanced user you can disable the Real-time Performance Monitoring for this particular driver.

Go offline and find the following key using the Windows registry editor:
HKEY_CURRENT_USER\Software\QPS\QINSy\8.0\Drivers\DrvLaser\LEICA_SCANSTATION\<System Name>\Settings\AllowCoreProcessMonitoring
The default value will be '0 1' (true). Change it to '0 0' (false) in order to stop it.