Skip to content
Python library for parsing Intel Hex files.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


This is a simple library for parsing hex files. Currently only intel hex files are supported.


You can use the included or use your pip to install it from PyPI


To create a HexFile object use hexfile.load:

import hexfile

f = hexfile.load('memory.hex')

The HexFile object is composed of one or more memory segments, which may be discontinuous. You can access the contents of the hex file as though it were an array of bytes:

print f.size       # Total number of bytes in the hexfile (NOT the total span of all addresses)

byte = f[16]       # Returns the byte at address 16 (as an int)

bytes = f[256:512] # Returns 256 bytes as a list

print f.segments   # Display all the segments in the hex file

The HexFile object also supports iteration, but rather than iterating over byte values as if it were a list, it includes the byte addresses, as if it were enumerated. This is because the file might be discontinuous, so addresses are frequently needed during iteration.

for addr, data in f:
    print '0x%08x : 0x%02x' % (addr, data) # Print every byte in the hex file and its 32-bit address
You can’t perform that action at this time.