Skip to content

SaazyTheGoat/Snapmaker2Postprocessor

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

42 Commits
 
 
 
 
 
 

Repository files navigation

Snapmaker2Postprocessor

Overview

This project provides a postprocessor for the Path Workbench of FreeCAD compatible with the CNC module of Snapmaker 2.0 machines.

It converts FreeCAD internal GCODE generated by the Path Workbench into GCODE suitable for Snapmaker 2.0 machines. Its functions cover:

  • Snapmaker CNC commands
  • tool change between operations (by inserting a HMI pause (M76))
  • drilling (by converting G81-G83 commands)
  • thumbnail generation for HMI
  • rapid moves (speed is not added by FreeCAD to GCODE)

Usage

Move the Snapmaker_2_CNC_post.py file to the FreeCAD macros directory. It should appear within the list of postprocessors of the Path workbench.

Check the wiki if you need more information.

Refer to FreeCAD documentation on how to use a postprocessor.

Limitations

This postprocessor has been tested on FreeCAD v0.21. Generated GCODE has been tested on a SnapMaker 2 A350 / A250. It should work on any other Snapmaker 2.0 (A150, A250, A250T, A350T), and may work on other Snapamker machines, but with no warranty. If you encounter any bug, please open an issue.

This postprocessor fails to process paths to gcode under FreeCAD v0.21 that utilize the dressup tag functionality. It may work with other dressup options but these have not been tested at this point. Processing is successful on normal paths.

Credits

Parts of this postprocessor have been inspired by the Marlin postprocessor shipped along with FreeCAD.

License

This repository and its content are licensed under the EUPL-1.2-or-later.

Check https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12

This license is deemed to be compatible with the one used by FreeCAD.

About

A FreeCAD v0.21.0 postprocessor for Snapmaker 2 CNC module

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%