Snapmaker U1 Firmware: Now on GitHub

With the launch of Snapmaker U1, we are publishing the modifications we’ve made to three widely used open-source projects: Klipper, Moonraker, and Fluidd. These projects form the foundation of U1’s firmware system. Over the course of development, we have significantly extended and adapted them to support U1’s unique architecture and capabilities.

You can find them here:

Klipper: https://github.com/Snapmaker/u1-klipper.git
Moonraker: https://github.com/Snapmaker/u1-moonraker.git
Fluidd: https://github.com/Snapmaker/u1-fluidd.git

A New Kind of Control System

Working with Klipper introduced us to a fundamentally different approach to motion control — one that separates high-level logic from low-level execution. Compared to traditional firmware like Marlin, this architecture offers greater flexibility and performance potential. It enabled us to bring U1 online quickly while achieving high print quality from the very beginning. At the same time, realizing the full potential of U1 required us to go far beyond the baseline.

Extending Klipper for Multi-Toolhead Printing

02-SnapSwap------

Snapmaker U1 introduces a parallel multi-toolhead system — a design that opens the door to faster, more efficient multi-material printing. To support this, we made extensive modifications to Klipper (approximately 20% of the codebase), including:

  • A redesigned tool-switching workflow to support parallel multi-toolhead operation

  • Custom probing workflows with eddy-current bed leveling

  • Multi-toolhead XYZ offset calibration

  • Power-loss recovery

  • High-precision CoreXY homing

  • Automatic filament loading and unloading

  • Filament tangle detection

  • Print job management system enhancements

  • Error handling and diagnostic improvements

  • Timelapse functionality

  • RFID-based filament recognition

Together, these enhancements enable U1 to deliver a more reliable, intelligent, and seamless printing experience.

Expanding the System with Moonraker

Three-way-interaction

To support connectivity and system orchestration, we extended Moonraker (with over 15% of the codebase modified):

  • Integration with Snapmaker Cloud services

  • Support for downloading and processing 3MF files

  • Local network client management

  • Internal system communication enhancements

  • Optimized file handling and storage behavior

These changes allow U1 to operate as a fully connected system, bridging local and cloud workflows seamlessly.

Refining the User Experience with Fluidd

On the front end, we made targeted improvements to Fluidd:

  • Synchronization of device naming between the screen and web interface

  • Improved consistency between local and remote control surfaces

These refinements ensure a more cohesive and intuitive user experience across devices.

Designed for U1 — and Beyond

Some of the capabilities introduced in U1 — such as multi-toolhead coordination, automatic material handling, and intelligent calibration — go beyond what these projects currently support out of the box. Beyond modifications to Klipper/Moonraker/Fluidd, U1 also includes additional system-level capabilities such as intelligent flow rate auto-calibration and defect detection, implemented as part of the broader U1 architecture to further improve print consistency and reliability. Our modifications were driven by real product requirements:

  • Coordinating multiple toolheads in parallel

  • Managing automatic material workflows

  • Enabling recovery and reliability features

  • Supporting advanced sensing and calibration systems

In many cases, these features required deep integration with both hardware and software.

Open Source and Community

Consistent with our broader open-source philosophy, we focus on openness where it enables interoperability, customization, and community collaboration. We are committed to open-source principles.

In accordance with the licensing requirements of Klipper, Moonraker, and Fluidd, we have publicly released our modifications to these projects. We expect and welcome users to explore, fork, and build upon this work.

At the same time, certain advanced capabilities within the U1 system are implemented through independently developed modules. These components interface with the open-source system through defined interfaces, but are not derived from Klipper, Moonraker, or Fluidd.

Looking Forward

Snapmaker U1 represents a step toward a more capable, flexible, and intelligent 3D printing system. By combining open-source foundations with purpose-built innovations, we aim to deliver both performance and possibility — for creators, developers, and the broader community.

13 Likes

Nice!

Do you plan to upstream all or at least part of this work yourselves?

1 Like

Is there any chance to get the artisan code aswell?

1 Like

There is currently no plan to merge the code into upstream Klipper.

The current focus is still on optimizing the slicing software.

If you need it, you can send me a private message and I can share it with you separately!

Thank you!

I put in an “issue” on GitHub. It’s a request to remove all the Bambu Lab’s functions. I’ve been trying to help new U1 users and U1 users who are used to Bambu Lab printers. They are both confused by “flushing” and “purging” and are them disappointed because the function they imagine doesn’t work they expect or work at all.

Making “Snapmaker OrcaSlicer” is okay by me. I don’t mind brand specific slicers, to be honest. It means we can concentrate on making brand and model specific changes and updates without having to worry about issues coming from another company’s printer. It will help build better firmware too.

Thank you for publishing this as Open Source.

3 Likes

That’s a really great step forward, awesome to see Snapmaker staying true to their word! :+1:

Is it also planned to open-source the actual U1 firmware (i.e. the distribution containing all three components above, plus kernel and display control etc.)? There’s currently only an unofficial firmware out (by paxx12), it would be great to have an official repository to contribute back to.

3 Likes

Dammit u make me buy a second u1 printer !! Thanks alot snapmaker :sweat_smile:

5 Likes