3.1. GSI Editor

The GSI Editor is a tab-based tool for viewing, editing, and converting Leica GSI survey data files. It provides a decoded, human-readable grid view of the binary-style GSI format, making it straightforward to inspect and modify field measurements before further processing.

3.1.1. Overview

GSI Editor main window showing decoded measurement data in a grid

The GSI Editor supports:

  • Opening multiple GSI files simultaneously in separate tabs

  • Viewing decoded GSI data in a 24-column grid covering all standard Word Index codes (WI 11–88)

  • Editing field values with real-time validation (angle range 0–400 gon, distance >= 0, point name length limits)

  • Saving and exporting to GSI8, GSI16, XLSX, and CSV formats with automatic file extension

  • Importing measurement data from CSV or XLSX spreadsheets via a 3-step column mapping wizard

  • Visual row coloring: station setup lines (light blue), set-of-angles result lines (light gray)

  • Invalid cells highlighted in red for quick identification of data problems

  • Auto-detection of GSI8 vs GSI16 format on file open

3.1.1.1. Leica GSI Format Reference

3.1.2. Overview

GSI (GEO Serial Interface) is an ASCII text format used by Leica total stations (TPS series) and digital levels (DNA series). Each line in a GSI file represents one measurement or station record, composed of space-separated data words.

Two format variants exist:

  • GSI8 – 8-character data portion (15 characters per word total)

  • GSI16 – 16-character data portion (23 characters per word total)

The first word on each line starts with an asterisk (*) to mark the beginning of a new record.

*110001+0000000000000101 21.022+0000000009521400 22.022+0000000009876300 31..00+0000000000125340
*110002+0000000000000102 21.022+0000000012345600 22.022+0000000010012500 31..00+0000000000098760

3.1.3. Word Structure

Each data word in GSI16 format is exactly 23 characters long. In GSI8 format, each word is 15 characters long. The structure is identical; only the data portion length differs.

GSI16 Word Structure (23 characters)

Position

Name

Description

1–2

Word Index (WI)

Two-digit code identifying the data type (see Word Index Table below)

3

Auto-index info

0 = auto-increment OFF, 1 = auto-increment OPERATING

4

Input mode

0 = measured by instrument, 1 = entered via keyboard, 2 = Hz-corrected value

5

Additional info

Instrument-specific additional information

6

Units indicator

Specifies the measurement unit and decimal precision (see Units table)

7

Sign

+ or -

8–23

Data

16-character zero-padded numeric value (8 characters in GSI8)

Note

The leading asterisk (*) that marks the first word of each line is not counted in the 23-character word length. The parser strips it before decoding.

3.1.4. Units Indicator

Position 6 of each data word encodes the measurement unit and implied decimal precision:

Units Indicator Codes

Code

Unit

Decimals

Description

0

Meters (mm)

3

Millimeter resolution

1

US Feet (1/1000 ft)

3

Thousandths of a foot

2

Gradians (gon)

5

400 gon = full circle

3

Degrees (decimal)

5

360 degrees decimal

6

Meters (1/10 mm)

4

Sub-millimeter resolution

8

Meters (1/100 mm)

5

High-precision distance

3.1.5. Word Index Table

The Word Index (WI) is the two-digit code at positions 1–2 of each data word. It identifies what type of data the word contains.

Complete Word Index Reference

WI

Name

Description

11

Point Number

Target point name or identifier

12

Serial Number

Instrument serial number

13

Instrument Type

Instrument model identifier

16

Station Point Number

Station (instrument) point name

17

Date

Date stamp of measurement

18

Time format 1

Year, seconds, milliseconds

19

Time format 2

Month, day, hour, minute

21

Hz Angle

Horizontal circle reading (gradians)

22

Vz Angle

Vertical/zenith angle (gradians)

25

Hz Circle Diff

Horizontal circle difference

31

Slope Distance

Slope distance (meters)

32

Horiz Distance

Horizontal distance (meters)

33

Height Diff

Height difference (meters)

41

Code Number

Code block number

42–49

Info 1–8

General information fields

51

PPM/Constants

Parts per million + prism constant

52

Measurements

Number of measurements + standard deviation

53

Deviation

Deviation value (sub-codes: 531 = atmospheric correction/pressure, 538 = coefficient of refraction)

58

Signal Strength

EDM signal strength / prism constant

59

Prism Constant

Reflector constant (1/10 mm) / PPM

71

Point Code

Feature code

72–79

Attributes 1–8

User-defined attribute fields

81

Target Easting

E coordinate of target point

82

Target Northing

N coordinate of target point

83

Target Elevation

H (height) of target point

84

Station Easting

E coordinate of instrument station

85

Station Northing

N coordinate of instrument station

86

Station Elevation

H (height) of instrument station

87

Reflector Height

Prism/target height above ground mark

88

Instrument Height

Instrument height above ground mark

3.1.6. Special Record Types

Station setup records

A line that contains station coordinate words (WI 84, 85, 86) but does not contain horizontal or vertical angle words (WI 21, 22) is interpreted as a station setup record. This marks the beginning of a new instrument station. In the grid, station setup rows are highlighted with a light blue background.

Set-of-angles (SOA) result lines

Lines starting with WI 41 that contain names such as HZ-RESLT, HZ-MEAN0, or HZ-DIFF0 are Leica’s internal averaging results from set-of-angles measurements. These lines are displayed in the grid with a light gray background and are read-only (not editable).

Face I / Face II detection

The editor determines the telescope face from the vertical angle (WI 22):

  • Face I: Vz < 200 gon

  • Face II: Vz >= 200 gon

3.1.6.1. Opening the GSI Editor

The GSI Editor is accessed from the application sidebar:

  1. In the main SurveyTools window, expand the Tools section in the left sidebar.

  2. Click GSI Editor.

The editor opens with an empty grid and two tabs at the top: Data (the measurement grid) and Options (format and unit settings).

3.1.6.2. Opening GSI Files

To load a GSI file into the editor:

  1. Click the Open button in the toolbar at the top of the editor.

  2. In the file dialog, select one or more .gsi files. The dialog accepts both GSI8 and GSI16 files.

  3. Click Open. The file contents are decoded and displayed in the grid.

The editor automatically detects whether each file uses GSI8 or GSI16 encoding based on the word length (15 or 23 characters per word). The detected format is shown in the Options tab under the GSI Format radio group.

Note

You can open multiple GSI files. Each file loads into the same data grid. Use the Options tab to verify that the detected format matches your expectations.

3.1.6.3. Understanding the Grid

The data grid presents decoded GSI data in a spreadsheet-like view with 22 columns. Each row corresponds to one line (record) in the original GSI file.

GSI Editor grid with column headers

The columns, listed in display order, are:

Grid Columns

Column Header

WI Code

Data Type

Contents

Point Name

11

Text

Target point identifier (leading zeros stripped)

Station Point Number

16

Text

Station point name

Horizontal Angle

21

Float

Horizontal circle reading (gon)

Vertical Angle

22

Float

Zenith/vertical angle (gon)

Slope Distance

31

Float

Slope distance (m)

Horizontal Distance

32

Float

Horizontal distance (m)

Height Difference

33

Float

Height difference (m)

Atmos.Correction: pressure

531

Float

Atmospheric correction (pressure)

Coefficient refraction

538

Float

Refraction coefficient

Prism Constant

58

Float

EDM signal strength / prism constant

PPM

59

Float

Parts per million correction

X (Easting)

81

Float

Target easting coordinate

Y (Northing)

82

Float

Target northing coordinate

Z (Elevation)

83

Float

Target elevation

Station Easting

84

Float

Station easting coordinate

Station Northing

85

Float

Station northing coordinate

Station Height

86

Float

Station elevation

Reflector Height

87

Float

Target/prism height above mark

Instrument Height

88

Float

Instrument height above mark

Date

17

Text

Measurement date

Time

19

Text

Measurement time

The footer row at the bottom of each column displays the GSI word index code for reference.

3.1.6.3.1. Grid Features

The grid supports several built-in operations via keyboard shortcuts:

Keyboard Shortcuts

Shortcut

Action

Ctrl+F

Open the Find dialog to search within the grid

Ctrl+G

Show/hide column visibility dialog

Ctrl+T

Open the filter dialog

Ctrl+S

Open the sort dialog

Ctrl+A

Select all rows

Ctrl+K

Optimize (auto-fit) column widths

Ctrl+C

Copy the value of the current cell

3.1.6.4. Editing Values

The grid supports direct in-cell editing. To modify a value:

  1. Click on the cell you want to edit. The cell enters edit mode.

  2. Type the new value.

  3. Press Enter or Tab to confirm, or Escape to cancel.

Pressing Tab advances the cursor to the next column (left to right, then down to the next row).

3.1.6.4.1. Validation Rules

The editor validates input according to the data type:

Validation Rules

Field Type

Rule

Horizontal Angle (WI 21)

Must be a number in the range 0 to 400 gon

Vertical Angle (WI 22)

Must be a number in the range 0 to 400 gon

Distances (WI 31, 32, 33)

Must be a non-negative number (>= 0)

Point Names (WI 11, 16)

Text; maximum length depends on format (8 chars for GSI8, 16 chars for GSI16)

Coordinates (WI 81–88)

Must be a valid floating-point number

Warning

Cells that fail validation are highlighted with a red background. You must correct invalid values before saving or exporting the file. The editor will not prevent you from navigating away from an invalid cell, but the red highlight serves as a persistent reminder.

3.1.6.5. Row Colors

The grid uses background colors to distinguish different record types at a glance:

Row Color Legend

Color

Meaning

Light blue

Station setup record. This row defines a new instrument station (contains WI 84/85/86 but no WI 21/22).

Light gray

Set-of-angles (SOA) result. Leica internal averaging line (e.g., HZ-RESLT, HZ-MEAN0, HZ-DIFF0). These rows are read-only.

White

Normal measurement observation. Fully editable.

Red cell

Individual cell with an invalid value that fails validation.

3.1.6.6. Saving and Exporting

To save or export the current data:

  1. Click the Export button in the toolbar.

  2. In the Save dialog, choose the output location and filename.

  3. Select the desired format from the file type dropdown:

    • GSI16 (.gsi) – Leica GSI-16 format

    • GSI8 (.gsi) – Leica GSI-8 format

    • XLSX (.xlsx) – Microsoft Excel spreadsheet

    • CSV (.csv) – Comma-separated values

  4. Click Save.

The file extension is set automatically based on the selected format.

Note

When exporting to XLSX or CSV, all columns in the grid are included. Column headers are written as the first row. This is useful for creating reports or importing the data into other software.

3.1.6.7. Importing from a Spreadsheet

The GSI Editor can import measurement data from CSV or XLSX files and convert them to GSI format using a 3-step wizard.

3.1.6.7.1. Step 1: File Selection

  1. Launch the import wizard from the toolbar.

  2. Browse to and select the source CSV or XLSX file.

  3. A preview of the first few rows is displayed so you can verify the file was read correctly.

3.1.6.7.2. Step 2: Column Mapping

Map each column in the source spreadsheet to the corresponding GSI word index:

  • Use the dropdown menus to assign each source column to a GSI field (Point Name, Hz Angle, Vz Angle, Slope Distance, etc.).

  • Columns that do not correspond to a GSI field can be left unmapped (skipped).

3.1.6.7.3. Step 3: Summary and Import

  • Review the mapping summary showing which source columns map to which GSI fields.

  • Confirm the import. The data is loaded into the grid.

  • You can then edit the imported data and export it in any supported format.

3.1.6.8. Working with Multiple Files

The editor supports opening multiple files into the same data grid. Each call to Open appends the new file’s records to the existing grid contents.

Note

To start with a clean grid, close and reopen the GSI Editor before loading a new file.

3.1.6.9. Typical Workflows

3.1.6.9.1. Convert GSI to Excel

  1. Open the GSI Editor from Tools > GSI Editor.

  2. Click Open and select your .gsi file.

  3. Verify the decoded data in the grid. Check the Options tab to confirm the correct format and units were detected.

  4. Click Export, choose XLSX as the format, and save.

3.1.6.9.2. Edit Point Names

  1. Open the GSI file in the editor.

  2. Navigate to the Point Name column (first column).

  3. Click on the cell for the point you want to rename and type the new name.

  4. Repeat for additional points as needed.

  5. Click Export and save as GSI16 or GSI8 to write the updated file.

3.1.6.9.3. Convert GSI8 to GSI16

  1. Open a GSI8 file. The editor auto-detects the format.

  2. Go to the Options tab and select GSI 16.

  3. Click Export and save. The output file uses 16-character data words.

3.1.6.9.4. Import CSV and Save as GSI

  1. Open the GSI Editor.

  2. Launch the import wizard and select your CSV file.

  3. Map the CSV columns to GSI fields (e.g., column A = Point Name, column B = Hz Angle).

  4. Confirm the import. The data appears in the grid.

  5. Go to the Options tab and select the desired GSI format (GSI8 or GSI16) and units.

  6. Click Export and save as .gsi.

3.1.6.9.5. Inspect Station Setups

  1. Open a GSI file containing multiple station setups.

  2. Scan the grid for rows highlighted in light blue – these are station setup records.

  3. Check the Station Easting, Station Northing, and Station Height columns (WI 84, 85, 86) to verify station coordinates.

  4. The Instrument Height column (WI 88) shows the height of instrument above the ground mark for each station.

3.1.6.9.6. Verify Face I / Face II Observations

  1. Open the GSI file and examine the Vertical Angle column (WI 22).

  2. Values less than 200 gon indicate Face I observations.

  3. Values of 200 gon or greater indicate Face II observations.

  4. Use this to confirm that dual-face measurements are present before processing set-of-angles reductions.

3.1.6.10. GSI Format Worked Example

Below is a sample GSI16 file with three records: one station setup and two target observations.

*110001+0000000000STNA01 84..06+0000000004578321 85..06+0000000002345678 86..06+0000000000123456 88..06+0000000000015230
*110002+00000000000000P1 21.022+0000000012345600 22.022+0000000009523400 31..00+0000000000125340 87..06+0000000000016500
*110003+00000000000000P2 21.022+0000000045678900 22.022+0000000010034500 31..00+0000000000098760 87..06+0000000000016500

Line 1 (Station setup):

  • *110001+0000000000STNA01 – WI 11, point name = STNA01

  • 84..06+0000000004578321 – WI 84, station easting = 457.8321 m (units code 6, 1/10 mm)

  • 85..06+0000000002345678 – WI 85, station northing = 234.5678 m

  • 86..06+0000000000123456 – WI 86, station elevation = 12.3456 m

  • 88..06+0000000000015230 – WI 88, instrument height = 1.5230 m

  • No WI 21 or 22 present, so this is identified as a station setup record.

Line 2 (Observation to P1):

  • *110002+00000000000000P1 – WI 11, point name = P1

  • 21.022+0000000012345600 – WI 21, Hz angle = 123.45600 gon (units code 2)

  • 22.022+0000000009523400 – WI 22, Vz angle = 95.23400 gon (Face I, since < 200)

  • 31..00+0000000000125340 – WI 31, slope distance = 125.340 m (units code 0)

  • 87..06+0000000000016500 – WI 87, reflector height = 1.6500 m

Decoding the word 21.022+0000000012345600:

Position

Value

Meaning

1–2

21

Word Index: Horizontal angle

3

.

Auto-index: OFF

4

0

Input mode: measured

5

2

Additional info

6

2

Units: gradians (5 decimal places)

7

+

Sign: positive

8–23

0000000012345600

Raw value: 12345600, divided by 10^5 = 123.45600 gon

3.1.6.11. References