Intel HEX and S-Record inspector
You need to check a firmware .hex or .srec file before flashing: checksums, address gaps and the image CRC. Parses Intel HEX and Motorola S-records, validates every record checksum, maps segments, computes the image CRC-32 and converts to .bin with 0xFF gap fill.
Open the calculator in EM·LINKBelow is a worked example. The working calculator runs free in EM·LINK.
Worked example
Example inputs
Example result
Two segments with a 520 byte gap, filled with 0xFF in the .bin.
| Part | Start | End | Bytes |
|---|---|---|---|
| Segment 1 | 08000000 | 080005F7 | 1528 |
| Gap | 080005F8 | 080007FF | 520 |
| Segment 2 | 08000800 | 0800085F | 96 |
Image CRC-32 0xDD4BFF23 over 2144 bytes. Start address 0x08000189.
Your file is parsed in your browser. Nothing is uploaded.
The working calculator is Intel HEX / SREC Inspector in EM·LINK, our free browser tool. The button opens it directly.
How to read the result
Extended address records are tracked, so images that cross a 64 KB boundary decode to the right absolute addresses.
Gap fill uses 0xFF to match erased flash, so the .bin matches what ends up in the chip.
How this is calculated
Every record carries its own checksum. Extended address records (type 04) set the upper 16 bits, so data records map to absolute flash addresses.
The full derivation, step by step, is in the EM·LINK documentation.
Calculated per common engineering practice (the Intel HEX and Motorola S-record file formats). These tools are an engineering aid, not a certification.
Next step
Shipping hundreds of units? Get OTA updates and remote config without building it yourself.
Common questions
How do I convert Intel HEX to bin?
Drop the file in. The tool maps segments and exports a .bin with 0xFF gap fill.
How is the Intel HEX checksum calculated?
Two's complement of the sum of all preceding bytes on the line.
Is my firmware uploaded anywhere?
No. The file is parsed in your browser only.
Related tools
- Number and bit inspector, to read a word or float out of the image.
- C struct layout and padding, to check the layout of records stored in flash.
- Fixed-point Q format converter, to decode Q15 constants in a calibration block.