Get desktop application:
View/edit binary Protocol Buffers messages
* > Introduced in BSL v2.14 and firmware v1.14 Describes a constraint for a single target field
Used in: , ,
Link to target field on which the contraint is applied
Human-readable reason for the constraint and its failure
Constant constraint which is used to apply min and/or max ranges
Used in:
Target value must be equals or higher than the specified minimum
Target value must be equals or smaller than the specified maximum
Polynomial constraint which describe a value relationship to another field
Used in:
Link to reference field. The value of the reference field is used as x input for the polynomial.
Target value must be equals or higher than the specified minimum, which is described by the specified repeated coefficients: c0 + x * c1 + x^2 * c2 ..
Target value must be equals or smaller than the specified maximum, which is described by the specified repeated coefficients: c0 + x * c1 + x^2 * c2 ..
Used in: ,
Refer to [Unknown](#blickfeld.protocol.Error.Unknown)
Refer to [NotImplemented](#blickfeld.protocol.Error.NotImplemented)
Refer to [Empty](#blickfeld.protocol.Error.Empty)
Refer to [ServerImplementation](#blickfeld.protocol.Error.ServerImplementation)
Refer to [InvalidRequest](#blickfeld.protocol.Error.InvalidRequest)
Refer to [ConnectionClosed](#blickfeld.protocol.Error.ConnectionClosed)
Refer to [OutdatedServerProtocol](#blickfeld.protocol.Error.OutdatedServerProtocol)
Refer to [OutdatedClientProtocol](#blickfeld.protocol.Error.OutdatedClientProtocol)
Refer to [ScannerBusy](#blickfeld.protocol.Error.ScannerBusy)
Refer to [WrongOperationMode](#blickfeld.protocol.Error.WrongOperationMode)
Refer to [NotAllowed](#blickfeld.protocol.Error.NotAllowed)
Refer to [HardwareError](#blickfeld.protocol.Error.HardwareError)
Refer to [SystemStop](#blickfeld.protocol.Error.SystemStop)
Refer to [NotFound](#blickfeld.protocol.Error.NotFound)
Refer to [UnknownErrorCode](#blickfeld.protocol.Error.UnknownErrorCode)
Refer to [NotInRange](#blickfeld.protocol.Error.NotInRange)
Refer to [TimeSyncFailed](#blickfeld.protocol.Error.TimeSyncFailed)
Refer to [NoDeviceDiscovered](#blickfeld.protocol.Error.NoDeviceDiscovered)
Refer to [NotSupported](#blickfeld.protocol.Error.NotSupported)
Refer to [ConnectionAbort](#blickfeld.protocol.Error.ConnectionAbort)
* During reading, the connection to the device got aborted.
Used in:
* The server closed the connection.
Used in:
(message has no fields)
* The server sent an empty message.
Used in:
(message has no fields)
* The device is in an error state and cannot be operated. Attempt to power-cycle the device or use diagnostic software to read out the hardware state.
Used in:
(message has no fields)
* Validation of the sent request failed, please send a request with-in a valid range.
Used in:
Validation error string
<blockquote>Introduced in BSL v2.14 and firmware v1.14</blockquote> Contains list of failed constraints. The `validation_error` field contains a human-readable output of the constraint validation.
* No device has been discovered. Check the network connection and power supply of the device. The 'discover' requests may have been blocked by a local or a network firewall.
Used in:
(message has no fields)
* The requested operation is not allowed.
Used in:
(message has no fields)
* The requested data is not available. Please check the request parameters.
Used in:
(message has no fields)
* The firmware on the device is not compatible with the BSL version. Update the device or downgrade the BSL.
Used in:
Description why this is not implemented
* The requested parameter is not within the valid range.
Used in:
The parameter, which was not in range
Minimum value of the parameter
Maximum value of the parameter
Requested value of the parameter
Unit of the parameter
* The action is not supported by the current client or server API. Check the versions of the client and firmware software and read the changelog.
Used in:
Description why this is not supported
* The protocol of the server is too new. Please update the client software.
Used in:
Version that is required
* The protocol of the client is too new. Please update the device.
Used in:
Version that is required
* The device is currently busy with another operation. Cancel it and try again.
Used in:
(message has no fields)
* The server failed to process the request.
Used in:
(message has no fields)
* The device stopped unexpectedly and can no longer be operated. Attempt to power cycle the device or use diagnostic software to read-out the hardware state.
Used in:
(message has no fields)
* The time synchronization failed. The NTP daemon failed or timed out.
Used in:
Log of the NTP daemon
* Unknown error. Please consult the Blickfeld support team for further information.
Used in:
Description of the unknown error
* Unknown Error. Please contact the Blickfeld support team and make sure to use compatible BSL and FW versions.
Used in:
Error code
* The device is set to a different operation mode. Perhaps it is currently being used by another application. Change the operation mode and try again if no one else is using it.
Used in:
(message has no fields)
* > Introduced in BSL v2.14 and firmware v1.14 Describes a protobuf field inside a (nested) message to efficiently use reflection on all supported platforms
Used in: ,
Path to field in relation to given top level message.
Numerical scale which is applied on a field value before using it for validation. This is required to prevent floating point precision issues due to rounding, which could fail a validation.<br> Validation example: Field value is stored as radian but is shown to the user as degree. Without scaling and rounding, a possible degree format could be rejected as it exceeded the maximum value of the radian respresentation after down-scaling.
Describes unique identifier of (sub) field
Used in:
Protobuf number of field
Protobuf key of field
Protobuf camelcase key of field
* The format type of response is an undocumented, internal feature required for the REST API.
Used in:
Used in:
Serial number of the hardware module
Deprecated legacy serial number format
Hardware version of the hardware module if available.
Used in: , ,
Used in:
* This section describes the different requests a client can send to the server. A request is always answered with a response. For every response, there is a request with the same name.
Refer to [Request.Hello](#blickfeld.protocol.Request.Hello)
Refer to [Request.Developer](#blickfeld.protocol.Request.Developer)
Refer to [Request.SetScanPattern](#blickfeld.protocol.Request.SetScanPattern)
Refer to [Request.FillScanPattern](#blickfeld.protocol.Request.FillScanPattern)
Refer to [Request.GetScanPattern](#blickfeld.protocol.Request.GetScanPattern)
Refer to [Subscribe](#blickfeld.protocol.stream.Subscribe)
Refer to [Request.Status](#blickfeld.protocol.Request.Status)
Refer to [Request.RunSelfTest](#blickfeld.protocol.Request.RunSelfTest)
<blockquote>Introduced in BSL v2.11 and firmware v1.11</blockquote> Refer to [Request.SetAdvancedConfig](#blickfeld.protocol.Request.SetAdvancedConfig)
<blockquote>Introduced in BSL v2.11 and firmware v1.11</blockquote> Refer to [Request.GetAdvancedConfig](#blickfeld.protocol.Request.GetAdvancedConfig)
<blockquote>Introduced in BSL v2.13 and firmware v1.13</blockquote> Unsubscribe a stream started with a [Subscribe](#blickfeld.protocol.stream.Subscribe) request.
<blockquote>Introduced in BSL v2.13 and firmware v1.13</blockquote> Refer to [Request.AttemptErrorRecovery](#blickfeld.protocol.Request.AttemptErrorRecovery)
<blockquote>Introduced in BSL v2.14 and firmware v1.14</blockquote> Refer to [Request.GetScanPatternConstraints](#blickfeld.protocol.Request.GetScanPatternConstraints)
<blockquote>Introduced in BSL v2.15 and firmware v1.16</blockquote> Refer to [Request.GetNamedScanPatterns](#blickfeld.protocol.Request.GetNamedScanPatterns)
<blockquote>Introduced in BSL v2.15 and firmware v1.16</blockquote> Refer to [Request.StoreNamedScanPattern](#blickfeld.protocol.Request.StoreNamedScanPattern)
<blockquote>Introduced in BSL v2.15 and firmware v1.16</blockquote> Refer to [Request.DeleteNamedScanPattern](#blickfeld.protocol.Request.DeleteNamedScanPattern)
<blockquote>Introduced in BSL v2.16 and firmware v1.17</blockquote> Refer to [Request.ProxyHello](#blickfeld.protocol.Request.ProxyHello)
Internal use only
Internal use only
* > Introduced in BSL v2.13 and firmware v1.13 This request can be used to attempt a re-initialization of the device if it is errored. A self test is automatically triggered after a successful re-initialization.
Used in:
(message has no fields)
* > Introduced in BSL v2.15 and firmware v1.16 This request deletes a named scan pattern. Default scan patterns can't be deleted.
Used in:
Name
* Internal use only
Used in:
(message has no fields)
* This request is used to fill an empty or partially filled scan pattern with the required parameters. It will fill the given scan pattern with default values and return the filled scan pattern to the client. The filled scan pattern can then be set as input for [Request.SetScanPattern](#blickfeld.protocol.Request.SetScanPattern).
Used in:
Refer to [ScanPattern](#blickfeld.protocol.config.ScanPattern)
* > Introduced in BSL v2.11 and firmware v1.11 This request is used to retrieve the currently set [Advanced](#blickfeld.protocol.config.Advanced).
Used in:
(message has no fields)
* > Introduced in BSL v2.15 and firmware v1.16 This request returns a list of named scan patterns.
Used in:
(message has no fields)
* This request is used to retrieve the currently set [ScanPattern](#blickfeld.protocol.config.ScanPattern).
Used in:
(message has no fields)
* > Introduced in BSL v2.14 and firmware v1.14 This request returns a list of constraints which are applied on scan patterns. The constraints define the constant and dynamic relationships between field values. The constraints are equal for a device type and firmware, but might vary for firmware releases and device variants. It is mainly used to visualize the constraints in the scan pattern configuration of the web gui.
Used in:
(message has no fields)
* This request is used for initial communication after connecting to a device and testing the established connection.
Used in:
Version of the Blickfeld protocol
<blockquote>Introduced in BSL v2.16 and firmware v1.17</blockquote> Library version
<blockquote>Introduced in BSL v2.16 and firmware v1.17</blockquote> Library language
* Internal use only This request is used by internal proxy implementation to forward the correct ip address to the server.
Used in:
IP address of the real client
* > Introduced in BSL v2.10 and firmware v1.9 This request triggers a self test of the device. It validates the hardware, operates the device, and generates a report. The report is currently only accessible by developers.
Used in:
(message has no fields)
* > Introduced in BSL v2.11 and firmware v1.11 This request is used for configuring the advanced config.
Used in:
Refer to [Advanced](#blickfeld.protocol.config.Advanced)
Persists the config and sets it after a power cycle. Default: True
* This request is used for setting a Scan Pattern. A Scan Pattern can either be set by providing a Scan Pattern configuration or a name of a named Scan Pattern.
Used in:
Refer to [ScanPattern](#blickfeld.protocol.config.ScanPattern)
Set named Scan Pattern, refer to [NamedScanPattern](#blickfeld.protocol.config.NamedScanPattern)
Persists the scan pattern and sets it after a power cycle. Default: False
* This request is used for receiving the current [Status](#blickfeld.protocol.status.Status).
Used in:
(message has no fields)
* > Introduced in BSL v2.15 and firmware v1.16 This request sets a named scan patterns. The name has to be different of the default scan patterns and can only contain letters, numbers, space, underscore and minus.
Used in:
Name
Refer to [ScanPattern](#blickfeld.protocol.config.ScanPattern)
* This section describes the responses a client receives after sending a request to the server. For the request that corresponds to a given response, please refer to [Request](#blickfeld.protocol.Request). Each response has the same name as the request.
Unit: [ns] - timestamp when the response is sent out
Refer to [Error](#blickfeld.protocol.Error)
Refer to [Response.Hello](#blickfeld.protocol.Response.Hello)
Refer to [Response.Developer](#blickfeld.protocol.Response.Developer)
Refer to [Response.SetScanPattern](#blickfeld.protocol.Response.SetScanPattern)
Refer to [Response.FillScanPattern](#blickfeld.protocol.Response.FillScanPattern)
Refer to [Response.GetScanPattern](#blickfeld.protocol.Response.GetScanPattern)
Refer to [Event](#blickfeld.protocol.stream.Event)
Refer to [Response.Status](#blickfeld.protocol.Response.Status)
Refer to [Response.RunSelfTest](#blickfeld.protocol.Response.RunSelfTest)
<blockquote>Introduced in BSL v2.11 and firmware v1.11</blockquote> Refer to [Response.SetAdvanced](#blickfeld.protocol.Response.SetAdvancedConfig)
<blockquote>Introduced in BSL v2.11 and firmware v1.11</blockquote> Refer to [Response.GetAdvanced](#blickfeld.protocol.Response.GetAdvancedConfig)
<blockquote>Introduced in BSL v2.13 and firmware v1.13</blockquote> Refer to [Response.AttemptErrorRecovery](#blickfeld.protocol.Response.AttemptErrorRecovery)
<blockquote>Introduced in BSL v2.14 and firmware v1.14</blockquote> Refer to [Response.GetScanPatternConstraints](#blickfeld.protocol.Response.GetScanPatternConstraints)
<blockquote>Introduced in BSL v2.15 and firmware v1.16</blockquote> Refer to [Response.GetNamedScanPatterns](#blickfeld.protocol.Response.GetNamedScanPatterns)
<blockquote>Introduced in BSL v2.15 and firmware v1.16</blockquote> Refer to [Response.StoreNamedScanPattern](#blickfeld.protocol.Response.StoreNamedScanPattern)
<blockquote>Introduced in BSL v2.15 and firmware v1.16</blockquote> Refer to [Response.DeleteNamedScanPattern](#blickfeld.protocol.Response.DeleteNamedScanPattern)
<blockquote>Introduced in BSL v2.16 and firmware v1.17</blockquote> Refer to [Response.ProxyHello](#blickfeld.protocol.Response.ProxyHello)
Internal use only
* > Introduced in BSL v2.13 and firmware v1.13 This response is sent out after sending AttemptErrorRecovery.
Used in:
(message has no fields)
* > Introduced in BSL v2.15 and firmware v1.16 This response is sent out after sending DeleteNamedScanPattern.
Used in:
(message has no fields)
* Internal use only
Used in:
(message has no fields)
* This response is given after a request to fill a sparse [ScanPattern](#blickfeld.protocol.config.ScanPattern) has been transmitted. It returns a scan pattern, the unset fields are filled with default values.
Used in:
Refer to [ScanPattern](#blickfeld.protocol.config.ScanPattern)
* > Introduced in BSL v2.11 and firmware v1.11 This response is returned after a request to get the current [Advanced](#blickfeld.protocol.config.Advanced).
Used in:
Refer to [Advanced](#blickfeld.protocol.config.Advanced)
* > Introduced in BSL v2.15 and firmware v1.16 This response is sent out after sending GetNamedScanPatterns.
Used in:
List of named scan patterns, refer to [NamedScanPattern](#blickfeld.protocol.config.NamedScanPattern)
* This response is returned after a request to get the current [ScanPattern](#blickfeld.protocol.config.ScanPattern).
Used in:
Refer to [ScanPattern](#blickfeld.protocol.config.ScanPattern)
* > Introduced in BSL v2.14 and firmware v1.14 This response is sent out after sending GetScanPatternConstraints.
Used in:
List of constraints which apply for scan patterns.
* This response is sent out after establishing a connection.
Used in:
Version of the Blickfeld Protocol
<blockquote>Introduced in BSL v2.16 and firmware v1.17</blockquote> Library version
<blockquote>Introduced in BSL v2.16 and firmware v1.17</blockquote> Library language
<blockquote>Introduced in BSL v2.16 and firmware v1.17</blockquote> Refer to [Product](#blickfeld.protocol.config.Product).
<blockquote>Introduced in BSL v2.16 and firmware v1.17</blockquote> Cube serial number
<blockquote>Introduced in BSL v2.16 and firmware v1.17</blockquote> Deprecated legacy serial number
<blockquote>Introduced in BSL v2.16 and firmware v1.17</blockquote> Refer to [Firmware](#blickfeld.protocol.Response.Hello.Firmware).
<blockquote>Introduced in BSL v2.16 and firmware v1.17</blockquote> Hardware module map, where the key is the name and the object is the [HardwareModule](#blickfeld.protocol.HardwareModule).
* > Introduced in BSL v2.16 and firmware v1.17 Contains all firmware names, versions, and revisions.
Used in:
Baseline version of firmware. Refer to [SoftwareVersion](#blickfeld.protocol.SoftwareVersion).
Version of software modules. The key of the map is the name and the object is the [SoftwareVersion](#blickfeld.protocol.SoftwareVersion).
* Internal use only
Used in:
(message has no fields)
* > Introduced in BSL v2.10 and firmware v1.9 This response is returned after a self test. The success flag indicates if the hardware is fully operational. The generated report is currently only accessible by developers.
Used in:
* > Introduced in BSL v2.11 and firmware v1.11 This response is sent out after setting an SetAdvancedConfig.
Used in:
(message has no fields)
* This response is sent out after setting a scan pattern.
Used in:
(message has no fields)
* > Introduced in BSL v2.15 and firmware v1.16 This response is sent out after sending StoreNamedScanPattern.
Used in:
(message has no fields)
Used in:
Tag or reference name of the version. It is not the the name of the software.
The GIT revision of the software version if available.
The unique continuous integration job ID if available.
* This section contains the status messages of the two deflection mirrors and the temperature sensors in the device.
Used in: ,
Refer to [Scanner](#blickfeld.protocol.status.scanner.Scanner)
Refer to [Temperature](#blickfeld.protocol.status.temperature.Temperature)
Refer to [Client](#blickfeld.protocol.status.server.Server)
<blockquote>Introduced in BSL v2.18 and firmware v1.19</blockquote> Refer to [IMU](#blickfeld.protocol.status.IMU)
<blockquote>Introduced in BSL v2.18 and firmware v1.19</blockquote> Refer to [TimeSynchronization](#blickfeld.protocol.status.TimeSynchronization)