Firmware file format (.gdf)
From Granite Devices Knowledge Wiki
Argon firmware file contains embedded software for Argon (servo drive). Firmware file is generated by makefirmware utily.
File format byte by byte
All multibyte integers are stored LSB first.
Header
IDString - 4 bytes, always="GDFW"
BLFileVersion - 2 bytes, current=300
TargetDriveType - 2 bytes, Argon=4000, Ion=5000
HostFWbytes - 4 bytes, number of bytes for STM32 CPU
GCFWbytes - 4 bytes, number of bytes for GraniteCore CPU or 0 if not included
Data
Data of HostFW begins. Amount of bytes is HostFWbytes
Data of GCW begins. Amount of bytes is GCFWbytes
File checksum
FileCksum - 4 bytes calculated from the current file. Simply sum of all unsigned bytes in file except CKSum itself