PLC Hex to Float Converter
Convert Floating Point to Hex (IEEE 754) and solve Modbus Endianness issues.
e.g., 123.45
⇅
e.g., 42F6E666
0000 0000 0000 0000 0000 0000 0000 0000
Modbus Byte Order (Endianness) Helper
If your PLC reads a strange value, try the formats below. "CDAB" is common for Modbus.
ABCD (Big Endian)
00 00 00 00
0.0
Standard / Motorola
DCBA (Little Endian)
00 00 00 00
0.0
Intel / PC
CDAB (Word Swap)
00 00 00 00
0.0
Modbus / Honeywell
BADC (Byte Swap)
00 00 00 00
0.0
Rare
What is IEEE 754 Floating Point?
PLCs store real numbers (like temperature 24.5°C) using the IEEE 754 Standard. This format fits a decimal number into 32 bits (2 words) of data. When transmitting this data via Modbus TCP or RTU, the raw binary data is often displayed as a Hexadecimal string (e.g., 0x41C40000).
Solving Modbus "Byte Swap" Issues
The #1 problem in industrial communication is Endianness (Byte Order). Different manufacturers store the 4 bytes of a floating-point number in different orders.
- ABCD (Big Endian): Used by Motorola processors and network protocols.
- CDAB (Word Swap): Extremely common in Modbus. If your value looks completely wrong (e.g., reading huge numbers instead of 100.0), try swapping the words.
- DCBA (Little Endian): Used by Intel/AMD processors and some PC-based controls.
Conversion Examples
| Float Value | Hex Representation (ABCD) | Binary |
|---|---|---|
| 1.0 | 3F800000 |
0011 1111 1000 ... |
| 123.45 | 42F6E666 |
0100 0010 1111 ... |
| -10.5 | C1280000 |
1100 0001 0010 ... |