ruumica documentation

Units and formats

How ruumica writes lengths, heights, coordinates, times, optical values and file fingerprints.

ruumica writes every value the same way everywhere: on screen, in exports and in the closeout book. Every number carries its unit, and every height its datum: 54.312 m EH2000, 0.62 m cover, 0.41 dB.

Lengths

Value Unit Written as
Lengths in packages and the bill of quantities millimetres Whole numbers; field names end in _mm, such as length_3d_mm.
Coordinates and elevations metres Three decimals, to the millimetre: 6642681.510.
Depths and cover metres Measured downward from the ground surface; a depth is never written as an elevation.
OTDR distances metres Optical distance from the OTDR, unless a page says it was placed on the route.

Lengths are computed from the stored geometry in whole millimetres, so totals add up exactly.

Heights

Every height in a delivery is an elevation in the project’s height system, such as EH2000 in Estonia or NN2000 in Norway, never a depth. A span’s elevations describe the point named in its z_reference: TOP_OF_PIPE, AXIS or INVERT.

Field devices record the ellipsoidal height from GNSS. ruumica converts it into the height system with the official geoid model on the server. When that model is not installed, the position waits (GRID_ABSENT) and its raw height is kept. A position is never stored without its height.

Coordinates

Coordinates are written easting first, then northing: e, n, h. Estonian drawings label the axes the Estonian way: X is the northing, Y the easting. Only the labels follow that convention; the stored order does not change.

Each project uses one pinned pipeline: a fixed, verified conversion from GNSS coordinates (ETRS89, EPSG:4937) into the delivery coordinate system.

Pipeline Delivery coordinates Heights Use
ee.etrs89.lest97-eh2000.v1 L-EST97 (EPSG:3301) EH2000 (EPSG:9663) Estonian deliveries. Needs the licensed EST-GEOID2017 grid.
ee.etrs89.lest97.v1 L-EST97 (EPSG:3301) none: the height passes through Checking Estonian positions only. Not for deliveries.
no.euref89.utm32-nn2000.v1 EUREF89 UTM zone 32 (EPSG:25832) NN2000 (EPSG:5941) Norway, zone 32.
no.euref89.utm33-nn2000.v1 EUREF89 UTM zone 33 (EPSG:25833) NN2000 (EPSG:5941) Norway, zone 33.
no.euref89.utm35-nn2000.v1 EUREF89 UTM zone 35 (EPSG:25835) NN2000 (EPSG:5941) Norway, zone 35.

asbuilt crs verify proves each pipeline against official test points on the machine it runs on.

Times

Every time is in UTC and written as YYYY-MM-DDTHH:MM:SSZ, to the second: 2026-01-01T00:00:00Z. A freeze instant (--frozen-at) must be given exactly this way. In file names the separators are dropped: 20260101T000000Z.

Optical values

Value Unit Notes
Loss and reflectance dB Reflectance is negative: −35.0 dB is a stricter limit than −30.0 dB.
Wavelength nm Such as 1310 and 1550.
Pulse width ns
Group index (IOR) none Between 1.40 and 1.60, at most five decimals.

Fingerprints and ids

Value Written as
SHA-256 fingerprint of a file 64 lower-case hexadecimal characters. Raw files are stored and delivered under this name.
manifest_sha256 The SHA-256 of a package’s manifest.json; one number for the whole package (Closeout package format).
Ids of projects, nodes, spans and everything else UUIDs, such as ee0de000-0000-4000-8003-000000000001.

Files ruumica reads

File Read by Notes
OTDR traces, .sor asbuilt sor inspect, asbuilt sor ingest, asbuilt sor pair Telcordia SR-4731 Issue 2 files (format version 2). Issue 1 files are refused with an error naming the version. Vendor-specific blocks are kept unchanged. Stored unchanged under their SHA-256.
Point clouds, .las and .laz asbuilt laz inspect Checked and fingerprinted; turning scans into networks is not built yet (Feature status).
Photos and sketches the field app Stored unchanged under their SHA-256.
Export profiles, .toml asbuilt export See Export profile file.

Last changed 2026-11-14