dev/notes
⌕

Spot a mistake? Highlight any text in a post and click Report — it goes straight to the author.

← all posts
advanced · 3D Printing · August 24, 2026 · 6 min read

How to Install Moonraker + Fluidd/Mainsail on Creality 3D Printers

Install Moonraker and either Fluidd or Mainsail on a supported Creality printer with Creality Helper Script, verify the services, and safely replace or restore the stock web interface.

To install Moonraker and a modern Fluidd or Mainsail web interface on a supported Creality 3D printer, enable root and SSH access, install Creality Helper Script, use it to install Moonraker, and then choose one web interface. Moonraker is the API layer; Fluidd and Mainsail are two alternative browser interfaces that control Klipper through that API.

What you are installing

The pieces fit together like this:

Creality printer hardware
        ↓
      Klipper
        ↓
     Moonraker
        ↓
  Fluidd or Mainsail
ComponentJob
KlipperRuns the printer firmware and executes the print configuration.
MoonrakerProvides the API and service layer used by web interfaces and integrations.
FluiddA lightweight Klipper-focused browser interface.
MainsailAnother full-featured Klipper browser interface with a different layout and workflow.

You need Moonraker for either interface, but you normally choose Fluidd or Mainsail, not both at the same time.

Before you start

Check these prerequisites before changing the printer:

  • Your exact printer and firmware version are supported by the current Helper Script documentation.
  • Root access is enabled.
  • SSH access works from a computer on the same network.
  • The printer has a stable local IP address or a DHCP reservation.
  • You have backed up important printer configuration and macros.
  • You understand that third-party modifications can affect firmware updates and vendor support.

If Creality Helper Script is not installed yet, start with How to Install Creality Helper Script on Creality 3D Printers. Do not copy installation commands from a different printer model unless the project explicitly says they apply to yours.

Install Moonraker with Creality Helper Script

SSH into the printer using the credentials and IP address from your root-access setup:

ssh root@PRINTER_IP

Launch the Helper Script using the path provided by your installation. A common installation uses:

sh /usr/data/helper-script/helper.sh

The menu names can change as the project evolves. Select the option for Moonraker, review the confirmation prompt, and let the script finish before installing a web interface. The Helper Script handles printer-specific paths and service configuration that would otherwise be easy to get wrong by hand.

Do not close the SSH session or reboot halfway through an installation. If the script reports an error, save the exact message and fix that problem before proceeding to the next component.

Install Fluidd or Mainsail

After Moonraker finishes installing, open the Helper Script again and select the web interface you want.

Fluidd

Fluidd is a compact interface built around Klipper and Moonraker. It is a good choice when you want a focused dashboard with minimal visual overhead.

Mainsail

Mainsail is another complete Klipper interface. Its features overlap heavily with Fluidd, but the layout and workflow are different. Choose it if you prefer its file browser, dashboard, or configuration workflow.

Install one first and use it for a while. Installing both at once makes it harder to tell which service owns a port or which interface is responsible for a problem. You can switch later through the Helper Script after confirming that Moonraker is healthy.

Open the interface and verify the connection

Find the printer’s IP address in your router or on the printer’s network screen. From a device on the same LAN, open:

http://PRINTER_IP/

For example:

http://192.168.1.100/

A working interface should load the dashboard and connect to Moonraker. Confirm that you can see printer state, temperatures, stored files, and the Klipper console before attempting a print.

You can also check Moonraker’s information endpoint from the local network:

curl http://PRINTER_IP/server/info

Only run that against a printer you control on a trusted network. Do not expose Moonraker or the printer dashboard directly to the public internet; use a properly secured remote-access solution if you need access away from home.

Remove the stock Creality interface only afterward

If the goal is to replace the stock Creality web interface, wait until all of these work first:

  1. Moonraker starts after a reboot.
  2. Your chosen interface loads consistently.
  3. The interface can read printer state and configuration.
  4. A small test action works safely, such as reading temperatures or moving through the normal UI controls.
  5. You have a backup and know how to restore the original interface.

Then use the Helper Script’s option for removing or disabling the Creality Web Interface. Do not manually delete vendor files while experimenting. The Helper Script knows the printer-specific paths and usually provides a matching restore operation.

Configure the interface after installation

Once the dashboard works, configure the basics before adding optional extensions:

  • Confirm the printer name and detected Moonraker connection.
  • Verify that the configured printer dimensions and bed limits match the real machine.
  • Upload a small known-good G-code file and confirm it appears in the file list.
  • Check that temperatures and fans report sensible values.
  • Review macros before enabling anything that can move the toolhead or heat the bed.
  • Reboot once and verify that every service comes back without manual intervention.

Fluidd and Mainsail both expose similar core functions: G-code management, print controls, temperature monitoring, macros, Klipper configuration, and Moonraker-connected devices. The best choice is usually the interface you find easier to understand and recover when something goes wrong.

Troubleshooting

The dashboard says Moonraker is unavailable

First confirm that the printer’s IP address has not changed. Then use the Helper Script’s service-management or diagnostic options and inspect the Moonraker log. A web interface cannot fix a Moonraker service that failed to start, so diagnose the API layer first.

The interface loads but printer data is missing

Check that Klipper is running and that Moonraker is pointed at the correct Klipper socket and configuration. Firmware updates can change paths or service layouts, so prefer the current Helper Script instructions over commands copied from an older tutorial.

SSH works but the installation menu is missing

Verify that the Helper Script is installed at the expected path and that you are using the required user. Do not assume /usr/data/helper-script/helper.sh is universal across every supported model; use the path shown by the Helper Script project for your printer.

The stock interface disappeared and the replacement is broken

Restore the vendor interface through the Helper Script if possible, then reboot and confirm basic printer control before trying the replacement again. This is why removing the stock interface should be the final step rather than part of the initial installation.

Switching back or restoring the stock setup

To switch from Fluidd to Mainsail, use the Helper Script to remove or disable the current interface only after recording any custom configuration you need. Install the alternative interface, verify Moonraker, and test the dashboard again.

If you want to return to the stock Creality experience, use the Helper Script’s restore option. Keep your backups even after a successful restore; they are useful when a future firmware update changes the printer’s service layout.

For a rooted, supported Creality printer, the safest order is:

1. Back up configuration
2. Enable root and SSH
3. Install Creality Helper Script
4. Install Moonraker
5. Install Fluidd OR Mainsail
6. Verify the dashboard and Moonraker after reboot
7. Remove the stock interface only if you still want to
8. Add optional features one at a time

M600 support and other Helper Script features can be useful, but install them individually so a later failure has a small and identifiable cause.

Summary

Moonraker is the service that connects Klipper to a web interface. Install it through Creality Helper Script, choose either Fluidd or Mainsail, verify the connection from the local network, and keep the stock interface until the replacement survives a reboot. For the prerequisite root and SSH setup, see How to Install Creality Helper Script on Creality 3D Printers.

Related posts

Comments

One comment per thread every 30 minutes · edits are unlimited.