Skip to content

fragaria/libbgcode

 
 

Repository files navigation

libbgcode

Prusa Block & Binary G-code reader / writer / converter

Description

A new G-code file format featuring the following improvements over the legacy G-code:

  1. Block structure with distinct blocks for metadata vs. G-code
  2. Faster navigation
  3. Coding & compression for smaller file size
  4. Checksum for data validity
  5. Extensivity through new (custom) blocks. For example, a file signature block may be welcome by corporate customers.

libbgcode library is split into three API:

core API

core api contains the basic definitions and functionality which allow to read a G-code file in binary format as defined into SPECIFICATIONS.

See src/LibBGCode/core/core.hpp

binarize API

binarize api contains the definitions and functionality which allow to write a G-code file in binary format as defined into SPECIFICATIONS.

See src/LibBGCode/binarize/binarize.hpp

convert API

convert api contains the functionality which allow to convert G-code files to/from binary format as defined into SPECIFICATIONS.

See src/LibBGCode/convert/convert.hpp

Specifications

See SPECIFICATIONS for file format specifications.

Building

See BUILDING for building instructions.

Command line application

See BGCODE for instructions.

References

We would like to thank Scott Vokes (@atomicobject) for his work on heatshrink and Scott Mudge (@scottmudge) for developing and maintaining MeatPack.

About

Prusa Block & Binary G-code reader / writer / converter

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • G-code 86.3%
  • C++ 11.7%
  • CMake 1.4%
  • Other 0.6%