5.2. Servicing Protocol (RS-232)#
The servicing protocol is used to read and modify the operating parameters of the surface velocity radar. Device settings such as filtering parameters, measurement units selection, interface configuration, and other internal parameters are adjusted using this protocol.
Since the NMEA-like measurement protocol is unidirectional (measurement data is transmitted only from the device to the host), the servicing protocol provides independent two-way configuration and maintenance access on the same RS-232 interface when the device is awake. To simplify device setup and parameter adjustment, Geolux provides the Geolux Instrument Configurator software tool. End users typically do not need to interact directly with the servicing protocol, as all configuration tasks are performed through the Configurator application. A detailed description of the software is provided in 7. Geolux Instrument Configurator.
Each command must begin with the ‘#’ character and be terminated with a newline character. All standard combinations of carriage return (CR) and line feed (LF) characters (CR, LF, or CR+LF) are accepted as valid line termination.
Reading All Parameters at Once#
To read all parameters at once, send the following command to the device:
#get_info
The device will respond with a structured list of all current parameters and system information in the following format:
#device_type: 10001
#firmware: 1.2.3
#serial_number: 12345
#<parameter_name_1>: <value1>
#<parameter_name_2>: <value2>
...
#update_status: 0
The response includes device identification information (such as device type, firmware version, and serial number), followed by all configurable and status parameters. A complete description of all available parameters is provided later in this chapter.
Reading Single Parameter#
Any configuration parameter can be read individually:
#get_<parameter_name>
The device will respond:
#<parameter_name>: <value>
Writing Single Parameter#
Any configuration parameter that is not read-only can be changed by the following command format:
#set_<parameter_name>=<value>
The device will respond, depending on success or failure:
#set_<parameter_name>:OK
#set_<parameter_name>:ERR
Enumerated parameters accept both the string name and the numeric index, for example:
#set_direction=incoming
#set_direction=1
List of Parameters#
Maximum Velocity Treshold#
Defines the upper bound for valid surface velocity measurements. Velocity readings above this threshold are rejected. The numeric value parameter is interpreted in the unit defined by max_velocity_unit.
See Maximum Velocity for the detailed setting description.
max_velocity#get_max_velocity#set_max_velocity=<value>Maximum Velocity Unit#
Defines the physical unit used by max_velocity command. The accepted units are:
See Maximum Velocity for the detailed setting description.
mms= mm/s,ms= m/s,mph= mph,kmh= km/h,fps= ft/s,fpm= ft/min,cms= cm/s.
max_velocity_unit#get_max_velocity_unit#set_max_velocity_unit=<value>Direction Filter#
Defines the direction filter configuration. The accepted values are:
See Direction Filter for the detailed setting description.
both= measure both directions,incoming= incoming flow only,outgoing= outgoing flow only.
direction#get_direction#set_direction=<value>Filter Length#
Defines the number of seconds used for internal smoothing. Higher values reduce noise but increase response lag. The valid range is between 1 and 120.
See Filter Length for the detailed setting description.
filter_len#get_filter_len#set_filter_len=<value>Velocity Output Unit#
Defines the unit used for the velocity value in the SDI-12 measurement response, NMEA and on Modbus output. The accepted units are:
See Output Unit for the detailed setting description.
mms= mm/s,ms= m/s,mph= mph,kmh= km/h,fps= ft/s,fpm= ft/min,cms= cm/s.
units#get_units#set_units=<value>Beam Width#
Defines the radar beam width pattern. Wide beam covers a larger area; narrow beam is more focused and rejects off-axis targets. The accepted values are:
See Beam Width for the detailed setting description.
wide,narrow.
beam_width#get_beam_width#set_beam_width=<value>Beam Offset#
Defines the near or far measurement zone placed along the radar beam used for target detection. The accepted values are:
See Beam Position for the detailed setting description.
near,far.
beam_offset#get_beam_offset#set_beam_offset=<value>DFP Enable#
Defines the enable status of Dynamic Flow Profiler algorithm, which tracks and accumulates flow history for improved accuracy in low-flow conditions. The accepted values are:
See Dynamic Flow Profiler for the detailed setting description.
off,on.
use_dfp#get_use_dfp#set_use_dfp=<value>Minimum Valid Distance#
Defines the minimum valid distance to water surface. Reflections detected closer than this distance are ignored. Use this parameter to exclude near-field returns e.g., mounting hardware, bridge elements, or other objects close to the sensor. The corresponding measurement unit is defined by min_distance_unit parameter.
See Minimum Distance for the detailed setting description.
min_distance#get_min_distance#set_min_distance=<value>Minimum Valid Distance Unit#
Defines the measurement unit used by min_distance parameter. The accepted units are:
See Minimum Distance for the detailed setting description.
mm,cm,m,ft,in.
min_distance_unit#get_min_distance_unit#set_min_distance_unit=<value>Maximum Valid Distance#
Gets / sets the maximum valid distance to water surface. Reflections detected beyond this distance are ignored. Use this parameter to exclude far-field returns outside the intended measurement zone e.g., opposite bank, structures, or background targets. The corresponding measurement unit is defined by max_distance_unit parameter.
See Maximum Distance for the detailed setting description.
max_distance#get_max_distance#set_max_distance=<value>Maximum Valid Distance Unit#
Gets / sets the measurement unit used by max_distance parameter. The accepted units are:
See Maximum Distance for the detailed setting description.
mm,cm,m,ft,in.
max_distance_unit#get_max_distance_unit#set_max_distance_unit=<value>RS-232 Baud Rate#
Gets / sets the baud rate of the RS-232 serial interface. The change takes effect immediately. The accepted values for baud rates are:
See RS-232 Baud Rate for the detailed setting description.
4800,9600,14400,19200,38400,57600,115200.
baud_rate#get_baud_rate#set_baud_rate=<value>Modbus Baud Rate#
Gets / sets the baud rate of the RS-485/Modbus serial interface. The change takes effect immediately. The accepted values for baud rates are:
See RS-485 Baud Rate for the detailed setting description.
4800,9600,14400,19200,38400,57600,115200.
modbus_baud_rate#get_modbus_baud_rate#set_modbus_baud_rate=<value>Modbus Device ID#
Gets / sets the Modbus RTU slave address. Must be unique on the RS485 bus. The accepted value range for Modbus RTU slave address is 1 - 247.
See Modbus ID for the detailed setting description.
modbus_id#get_modbus_id#set_modbus_id=<value>Modbus Serial Line Parity#
Gets / sets the serial line parity for RS-485 / Modbus connection. The change takes place immediately. The accepted values are:
See Modbus Parity for the detailed setting description.
none,odd,even.
modbus_parity#get_modbus_parity#set_modbus_parity=<value>Modbus Serial Line Stop Bits#
Gets / sets the number of stop bits for the serial line of RS-485 / Modbus connection. The change takes place immediately. The accepted values are:
See RS-485 Stop Bits for the detailed setting description.
one,two.
modbus_stopbits#get_modbus_stopbits#set_modbus_stopbits=<value>SDI-12 Address#
Address of the device on the SDI-12 bus. Valid range is 0-61, which will be converted to characters 0-9, A-Z and a-z.
See SDI-12 ID for the detailed setting description.
sdi_id#get_sdi_id#set_sdi_id=<value>Disable NMEA Output#
Gets / sets the parameters that disables NMEA sentence output on RS-232. The accepted values are:
off,on.
disable_nmea#get_disable_nmea#set_disable_nmea=<value>Analog Output Minimum Value#
Gets / sets the surface velocity measurement value that corresponds to the minimum output on the analog current interface (4 mA). The corresponding measurement unit is defined by analog_min_unit parameter.
See 4 - 20 mA Minimum Value for the detailed setting description.
analog_min#get_analog_min#set_analog_min=<value>Analog Output Minimum Unit#
Gets / sets the measurement unit for the value defined by analog_min parameter. The accepted units are:
See 4 - 20 mA Minimum Value for the detailed setting description.
mms= mm/s,ms= m/s,mph= mph,kmh= km/h,fps= ft/s,fpm= ft/min,cms= cm/s.
analog_min_unit#get_analog_min_unit#set_analog_min_unit=<value>Analog Output Maximum Value#
Gets / sets the surface velocity measurement value that corresponds to the maximum output on the analog current interface (20 mA). The corresponding measurement unit is defined by analog_max_unit parameter.
See 4 - 20 mA Maximum Value for the detailed setting description.
analog_max#get_analog_max#set_analog_max=<value>Analog Output Maximum Unit#
Gets / sets the measurement unit for the value defined by analog_max parameter. The accepted units are:
See 4 - 20 mA Maximum Value for the detailed setting description.
mms= mm/s,ms= m/s,mph= mph,kmh= km/h,fps= ft/s,fpm= ft/min,cms= cm/s.
analog_max_unit#get_analog_max_unit#set_analog_max_unit=<value>Configure Power Management Mode (SDI-12 Sleep Mode)#
Gets / sets the automatic SDI-12 sleep mode parameter. When sleep is enabled, the device enters low-power sleep between SDI-12 transactions. When disabled, the sensor runs continuously and is ready at all times. The accepted values are:
See Power Management for the detailed setting description.
on= sleep enabled,off= sleep disabled (continuous scanning).
sdi_sleep#get_sdi_sleep#set_sdi_sleep=<value>Configure Operation Mode#
Gets / sets the operation mode parameter. When the operation mode is set to standby, the device will go to standby mode. In standby mode, it will communicate on all communication interfaces, but the radar transmitters will be turned off to reduce the power, and the instrument will not be making any measurements. The accepted values are:
See Operation Mode for the detailed setting description.
off= normal operation,on= standby operation.
power_save#get_power_save#set_power_save=<value>Configure Fixed Mounting Angle#
Override measured pitch angle with a fixed value (degrees). Changing this parameter will affect the reported velocity as cosine correction behaviour will be changed. Use this parameter only during tow-tank testing. Set 0 to use real measured angle. The accepted value range for fixed angle is: 0 - 89.
fixed_angle#get_fixed_angle#set_fixed_angle=<value>Show Data on Error#
Continue reporting velocity data even when angle errors are detected. The accepted values are:
off= clear velocity on error (send 0 as velocity instead of the measured value),on= keep velocity.
show_data_on_error#get_show_data_on_error#set_show_data_on_error=<value>