Explicit Messaging Sample State
The Sample State block reports metadata and measurement data related to the most recent scan frame. It maps to the Stamp, MeasurementValue, and String register assemblies and uses Class 0x04, Attribute 0x03, Instance ID 116 (0x74).
This assembly supports the GetAttributeSingle (0x0E) service and has a maximum size of 375 bytes.
|
Information |
Value |
|---|---|
|
Register Assembly |
Sample State register assembly |
|
Supported Block Type Identifier |
Stamp, MeasurementValue, String |
|
Class |
0x4 |
|
Instance |
116 (0x74) |
|
Attribute Number |
3 |
|
Max Size of Register Assembly |
375 bytes |
| Supported Service | GetAttributeSingle (0x0E) |
Stamp Block
The Stamp block provides frame-level metadata useful for alignment, timing, and synchronization across devices. Values reflect the most recent frame acquired by the system.
|
Field |
Type |
Offset (bytes) |
Value |
|---|---|---|---|
|
Z Position |
INT64 |
0 |
Encoder position at time of last index pulse of the last frame. |
|
Encoder Position |
INT64 |
8 |
Encoder position at time of scan capture. |
|
Time |
UINT64 |
16 |
Unique, monotonically increasing timetick of the last frame. Time (µs) = Timetick / 1.024 |
|
Frame Index |
UINT64 |
24 |
Frame number of the last scan. |
|
Digital Input States |
UINT8 |
32 |
Bitfield of digital inputs:Bit 0 = Digital Input 1Bit 1 = Digital Input 2 |
|
Buffer (reserved) |
UINT8[3] |
33-35 |
Reserved. Unused padding bytes. |
Measurement Value Block
The MeasurementValue block returns the actual scan measurement value. GoPxL 1.2 does not support measurement + decision blocks—only measurement is reported.
|
Field |
Type |
Offset (bytes) |
Value |
|---|---|---|---|
|
[measurement value] |
INT32 |
0 |
Measurement value ×1000. For example, 12.345 mm is sent as 12345. If the value is invalid, this field is set to 0x80000000. |
String Block
The String block returns the string scan output.
|
Field |
Type |
Offset (bytes) |
Value |
|---|---|---|---|
|
[string value] |
STRING |
0 |
String value. Unused space will be set to null (0x0). The string is otherwise not null terminated. If invalid, the block’s buffer is entirely set to null, equivalent to an empty string. The string will be truncated if the block’s size is smaller than the length of the string. Block size is 8 bytes by default and can be configured in the GoPxL UI. |