Changelog¶
All notable changes in the GeoComPy project will be documented in this file.
The project uses Semantic Versioning.
v1.0.0 (2025-12-18)¶
Added¶
Added testing for Python 3.14
Added logging of the instrument serial number to GeoCOM connection
Added instrument info logging to GSI Online DNA initialization
Changed¶
Changed
GsiSerialnumberWordto store value asintinstead ofstrChanged
get_serialnumbermeasurement command onGsiOnlineDNAto returnintinstead ofstrin the response object
v0.14.0 (2025-10-18)¶
Added¶
Added support for CRC16 checksums in GeoCOM transactions
Added
SocketConnectionto allow socket based communicationAdded
open_socketfunction to create TCP and RFCOMM socket connections
Changed¶
Changed the
Connectioninterface definition to requiresend_binary,receive_binaryandexchange_binarymethodsChanged
open_serialto raiseConnectionRefusedErrorinstead of the original exception when the connection could not be openedChanged all methods of
SerialConnectionto raise the generalConnectionErorandTimeoutErrorinstead of serial specificSerialExceptionand``SerialTimeoutException``Changed
GeoCominit to raiseConnectionRefusedErrorinstead ofConnectionErrorwhen the connection could not be verifiedChanged
GsiOnlineDNAinit to raiseConnectionRefusedErrorinstead ofConnectionErrorwhen the connection could not be verifiedUpdated GeoCOM response parsing to raise exception when the number of received parameters does not match the number of parsers specified
Updated
GeoCominit signature to require keyword argumentsUpdated
GsiOnlineDNAinit signature to require keyword argumentsUpdated
Angleinit signature to require keyword argumentsUpdated
GsiWordand subclass init signatures to require keyword argumentsUpdated
GsiBlock.parseand.serializesignatures to require keyword argumentsUpdated
parse_gsi_wordsignature to require keyword argumentsUpdated
parse_gsi_blocks_from_filesignature to require keyword argumentsUpdated
write_gsi_blocks_to_filesignature to require keyword argumentsRenamed
retryoption ofopen_serialtoattemptsRenamed
retryoption ofGeoComtoattemptsRenamed
retryoption ofGsiOnlineDNAtoattempts
Removed¶
Removed
REF_VERSIONattribute fromGsiOnlineDNARemoved
REF_VERSION_STRattribute fromGsiOnlineDNA
v0.13.0 (2025-09-29)¶
Added¶
Added
dotproduct toVectorAdded
crossproduct toVectorAdded
deviceoption to GeoCOM CSVsetup_listing
Changed¶
Reworked arithmetic operations supported by
AngleReworked arithmetic operations supported by
VectorRenamed
parsestrtoparse_stringRenamed
parsebooltoparse_boolRenamed
toenumtoget_enumRenamed
enumparsertoget_enum_parserUpdated GeoCOM FTR
downloadto returnbytesinstead ofstrUpdated GeoCOM FTR
download_largeto returnbytesinstead ofstr
Fixed¶
GeoCOM IMG
set_telescopic_configurationwas missing theprefixparameterGeoCOM CSV
get_voltage_memorywas calling the wrong GeoCOM commmandAngle.to_dmswas sometimes returning incorrect value due to roundingPackage could not be installed from ZIP due to a missing version fallback
Removed¶
Removed
normalize_radclassmethod fromAngle
v0.12.0 (2025-08-26)¶
Added¶
Added Leica GSI format module
Container types for words
Container type for blocks
Parsing
Serialization
Changed¶
GSI Online DNA commands now use the new GSI format module for GSI parsing and serialization
Fixed¶
Fixed DMS angle formatting where leading zeroes were missing from seconds
Removed¶
Removed the obsolete
gsiwordutility function from thedatamodule
v0.11.0 (2025-08-14)¶
Added¶
Added discovered GeoCOM RPC 5074 (unknown true function name, implemented as
abort_listingin CSV subsystem)Added
loggeroptional parameter toopen_serialAdded
loggeroptional parameter toSerialConnection
Changed¶
Renamed GeoCOM FTR
abort_listtoabort_listing
Fixed¶
GeoCOM CSV
listcommand did not properly parse returned string parameters
Removed¶
Removed
get_loggerutility function
v0.10.0 (2025-08-08)¶
Added¶
Added
relative_tomethod to theAngletypeAdded precision option to DMS angle formatting
Changed¶
Renamed GeoCOM TMC
set_orientationtoset_azimuthto make its purpose more obviousChanged input parameter type of
set_azimuthto be more permissive
v0.9.0 (2025-08-01)¶
Starting with this version, the package is in beta stage. The public API is not going to drastically change from this point. Small changes, and developments are still to come.
Changed¶
GeoCOM CSV
get_laserlot_statuswas renamed toget_laserplummet_statusGeoCOM CSV
switch_laserlotwas renamed toswitch_laserplummetGeoCOM CSV
get_laserlot_intensitywas renamed toget_laserplummet_intensityGeoCOM CSV
set_laserlot_intensitywas renamed toset_laserplummet_intensity
v0.8.1 (2025-07-30)¶
Added¶
new methods for
SerialConnectionwrapper:send_binaryreceive_binaryexchange_binary
precisionproperty for the GeoCOM definition
Changed¶
GeoCOM TMC
get_angle_correction_statuswas renamed toget_angle_correctionGeoCOM TMC
switch_angle_correctionwas renamed toset_angle_correctionGeoCOM
get_double_precisionwas moved to COMGeoCOM
set_double_precisionwas moved to COM
Fixed¶
method docstrings were rendered wrong in some cases due to missing new lines
GSI Online DNA settings commands were parsing boolean value incorrectly
GeoCOM AUT
set_search_areacommand would not execute due to incorrect parameter serialization when sending the request to the instrument
v0.8.0 (2025-07-24)¶
All CLI applications were migrated to a new package called Instrumentman. Further development happens there.
Added¶
Component swizzling in vectors and coordinates
Changed¶
Wait/delay times are now expected in seconds instead of milliseconds, where possible
v0.7.0 (2025-06-29)¶
Added¶
retryoption toopen_serialMorse CLI application (
geocompy.apps.morse)Interactive Terminal CLI application (
geocompy.apps.terminal)Set Measurement CLI applications (
geocompy.apps.setmeasurement...)
v0.6.0 (2025-06-12)¶
Added¶
GeoCOM
Digital Level
LS10/15 GeoCOM support through new
dnasubsytem (LS10/15 also responds to GSI Online DNA commands)
Central Services
get_firmware_creation_datecommand (RPC 5038)get_datetime_newcommand (RPC 5051)set_datetime_newcommand (RPC 5050)setup_listingcommand (RPC 5072)get_maintenance_endcommand (RPC 5114)
Theodolite Measurement and Calculation
get_complete_measurementcommand (RPC 2167)
Fixed¶
morse.pyexample script was not using the most up-to-date methodsGeoCOM File Transfer subsystem commmands were missing from the command name lookup table
v0.5.1 (2025-05-16)¶
Added¶
Missing GeoCOM
abortcommandDiscovered GeoCOM RPC 11009 (unknown true function name, implemented as
switch_display)
Fixed¶
GeoCOM
get_internal_temperaturereturnedintinstead offloatGeoCOM
get_user_prism_definitionhad incorrect return param parsers
v0.5.0 (2025-05-15)¶
Initial release on PyPI.
Notable features:
Serial communication handler
Utility data types
GeoCOM commands from TPS1000, 1100, 1200 and VivaTPS instruments (and any other with overlapping command set)
GSI Online commands for DNA instruments