Binary G-code is a new standard for encoding and compressing ASCII G-code files. G-code files are easy to read and interpret, but their downside is that the data is not saved efficiently, and the file size is often very large. Compression of the file is problematic because the printers usually run on limited hardware and they may not have enough memory and/or CPU power to decompress it.
Block and Binary G-Code is a new G-code file format featuring the following improvements over the legacy G-code:
Block structure with distinct blocks for metadata vs. G-code.
Faster navigation.
Coding and compression for smaller file size.
Checksum for data validity.
Extensibility through new (custom) blocks. For example, a file signature block may be welcome by corporate customers.
The binary G-code format is flexible and the encoding and compression of individual blocks is variable. libbgcode library contains the routines to convert ASCII G-codes to binary and vice versa.