Snapmaker / Snapmaker2-Controller

Snapmaker2-Controller is the firmware for Snapmaker 2.0 3-in-1 3D Printers.
GNU General Public License v3.0
128 stars 67 forks source link
3d-printer-controller 3d-printing firmware snapmaker

Snapmaker 2.0 Controller Firmware

Snapmaker2-Controller is the firmware for Snapmaker 2.0 3-in-1 3D Printers. It's based on the popular Marlin firmware with optimized FreeRTOS support.

Documentation

Snapmaker2-Controller builds on the codebase of Marlin 2.0, we also added some new features:

To read more documentations about Snapmaker2-Controller, you can checkout the Snapmaker2-Controller Overview or Hardware Link for further reading.

Feedback & Contribution

Development

Setup Development Environment

As of recommended in Marlin's development settings, we use Visual Studio Code and PlatformIO IDE to develop Snapmaker2-Controller.

> git clone git@github.com:Snapmaker/Snapmaker2-Controller.git

VSCode with PlatformIO

Ensure your changes are loaded

Compile the code

NOTE: if you build the source for first time, PlatformIO will download the relative libraries and toochains. It may take a few minutes.

Program compiled firmware to main controller

With PlatformIO CLI

After building, type below command in VSCode terminal

> pio run -t pack

Then you will get below firmwares in the folder (PROJECT FOLDER)/release:

Finally, copy the major image to your USB stick and upgrade your machine follow the instructions in How to update Firmware section.

With Luban

You need to install Luban to package the compiled firmware.

First, Open Settings -> Firmware Tool in Luban, upload the compiled firmware.bin, click Compile and Export. You will get a file with name like Snapmaker2_V3.2.0_20201117.bin, this is the packaged update file to be programmed.

Then, Update your firmware via USB follow the instructions in How to update Firmware section.

License

Snapmaker2-Controller is released under terms of the GPL-3.0 License.

Terms of the license can be found in the LICENSE file or at https://www.gnu.org/licenses/gpl-3.0.en.html.