Data type reference
Widths, ranges, register order, notation, conversion, and display semantics.
Data type reference
Modbus registers are always 16-bit words. A Busloom tag explains how one or more consecutive words become one logical value. Data type controls width and interpretation; byte/word order controls layout; scale and offset produce engineering units; notation and labels control presentation.
Supported tag data types
| Type | Registers | Raw range / interpretation | Notes |
|---|---|---|---|
| boolean | Bit space: 1 bit · register space: 1 word | False when zero, true when non-zero | Bit views always use Boolean; register Boolean may have custom true/false labels |
| uint16 | 1 | 0 … 65,535 | Supports decimal, hexadecimal, or binary notation |
| int16 | 1 | −32,768 … 32,767 | Two's-complement signed integer |
| uint32 | 2 | 0 … 4,294,967,295 | Word order matters; integer notation is independent |
| int32 | 2 | −2,147,483,648 … 2,147,483,647 | Two's-complement signed integer |
| float32 | 2 | IEEE-754 single precision | Roughly seven significant decimal digits |
| float64 | 4 | IEEE-754 double precision | Roughly fifteen significant decimal digits |
| ascii | 1–125 | Two bytes per register after configured ordering | NUL and non-printable bytes affect the visible text |
The decode pipeline
Collect the complete word span
The source view must include the tag start and every continuation register required by the selected type.
Apply byte order
Big endian keeps the two bytes inside each 16-bit word; little endian swaps them.
Apply word order
Most-significant-first keeps register order; least-significant-first reverses the word sequence for the logical value.
Interpret the type
Read the resulting bytes as signed/unsigned integer, IEEE-754 float, Boolean, or ASCII.
Convert to engineering units
For numeric types, engineering value = decoded raw number × scale + offset.
Format for display
Apply precision, notation, unit, and optional value label without changing the underlying decoded number.
| 32-bit layout | Word 0 bytes | Word 1 bytes | Busloom settings |
|---|---|---|---|
| ABCD | AB | CD | Big-endian bytes · most-significant word first |
| BADC | BA | DC | Little-endian bytes · most-significant word first |
| CDAB | CD | AB | Big-endian bytes · least-significant word first |
| DCBA | DC | BA | Little-endian bytes · least-significant word first |
Engineering and presentation fields
| Field | What it changes | What it does not change |
|---|---|---|
| Scale / offset | Numeric engineering value and inverse encoding for writes | Address, word span, byte order |
| Display decimals | Visible rounding from automatic precision through 0–12 decimals | Full decoded/exported numeric evidence |
| Unit | Context shown beside values and in reports | Numeric value |
| Minimum / maximum | Validation of manual and automated engineering writes | Device-side limits or alarm behavior |
| Numeric value labels | Adds a named state beside an exact numeric value and accepts that label as write input | The numeric value remains visible and retained |
| True / false labels | Names Boolean states | Stored Boolean semantics |
| Description | Human documentation available in settings and inspectors | Protocol traffic |