Custom Snapmaker U1 Firmware

Firmware Configuration

Available in: Extended firmware

Note for users upgrading to v1.1.0: The configuration file has been renamed from extended.cfg to extended2.cfg. During the first boot after upgrading a new extended2.cfg will be created with default settings. You will need to migrate your custom settings from extended.cfg to extended2.cfg manually or use http://IP/firmware-config

The extended firmware provides two ways to configure firmware behavior:

  1. Firmware Config Web Interface - A web-based tool for managing settings, firmware upgrades, and troubleshooting
  2. extended2.cfg - A configuration file for customizing firmware behavior

Firmware Config Web Interface

Access the Firmware Config tool at http://<printer-ip>/firmware-config/

Note: The Firmware Config interface is only available when Advanced Mode is enabled. On the printer touchscreen, go to Settings > Maintenance > Advanced Mode and enable it, then restart the printer.

Status

Displays system information including:

Dynamic links based on current settings:

Settings

Toggle settings directly from the web interface:

Setting Options Description
Frontend Fluidd, Mainsail Switch between web interfaces
Internal Camera Paxx12, Snapmaker, Disabled Select camera service
Camera RTSP Stream Enabled, Disabled Enable RTSP streaming
USB Camera Enabled, Disabled Enable USB camera support
Remote Screen Enabled, Disabled Enable remote screen access
Klipper Metrics Exporter Enabled, Disabled Enable Prometheus metrics
VPN Provider None, Tailscale Enable VPN remote access (Experimental)

Changes are applied immediately and relevant services are restarted.

Troubleshooting

Available actions:

Firmware Upgrade

Upgrade firmware using one of two methods:

Download from URL:

  1. Enter a firmware URL
  2. Click “Download & Upgrade”
  3. The system downloads and installs the firmware

Upload File:

  1. Select or drag-and-drop a firmware file
  2. Click “Upload & Upgrade”
  3. The file is uploaded and installed

The system reboots automatically after a successful upgrade.

Configuration File (extended2.cfg)

For advanced configuration, edit the configuration file directly.

File Location

/home/lava/printer_data/config/extended/extended2.cfg

Editing the Configuration File

The extended2.cfg file is automatically created by the firmware.

Via Fluidd/Mainsail

  1. On the printer, go to Settings > Maintenance > Advanced Mode and enable it
  2. Open Fluidd or Mainsail in your web browser (http://<printer-ip>)
  3. Go to the Configuration tab
  4. Navigate to the extended directory and open extended2.cfg
  5. Add or modify your configuration options (see below)
  6. Save the file
  7. Reboot the printer

Via SSH

ssh lava@<printer-ip>
vi /home/lava/printer_data/config/extended/extended2.cfg

After saving, reboot the printer.

Configuration Options

[web]

frontend - Web interface selection (only one can be active)

firmware_config - Enable or disable the Firmware Config web interface

remote_screen - Enable remote screen access at http://<printer-ip>/screen/

Note: Remote screen requires additional Moonraker configuration. See Remote Screen Access for complete setup.

[camera]

internal - Internal camera service selection (only one can be active)

usb - USB camera service selection

rtsp - Enable RTSP streaming support (paxx12 service only)

logs - Camera service logging destination

[remote_access]

ssh - Enable SSH remote access via dropbear

vpn - VPN provider for remote access (only one can be active)

See VPN Remote Access for setup instructions.

[monitoring]

klipper_exporter - Enable Prometheus metrics exporter for Klipper

See Monitoring for integration with Grafana, Home Assistant, or DataDog.

Example Configuration

[web]
# Web interface frontend: fluidd, mainsail
frontend: fluidd
# Enable access at http://<printer-ip>/firmware-config/: true, false
firmware_config: true
# Enable access at http://<printer-ip>/screen/: true, false
remote_screen: false

[camera]
# Internal (Case) camera options: paxx12, snapmaker, none
internal: paxx12
# External (USB) camera options: paxx12, none
usb: none
# Enable RTSP streaming server: true, false
rtsp: false

[remote_access]
# Enable SSH access: true, false
ssh: false
# VPN provider for remote access: none, tailscale
# Must SSH and run "tailscale up" to complete login flow
vpn: none

[monitoring]
# Enable Klipper Prometheus exporter on specified address
# klipper_exporter: :9101

Identifying Customized Settings

When you modify a configuration file, the system automatically creates a .default file alongside it containing the original default values. For example, if you customize extended2.cfg, you’ll find extended2.cfg.default in the same directory.

This makes it easy to:

The .default files are updated on each boot to reflect the current firmware defaults.

Important Notes

Recovery & Reset

Reset to Default Configuration

To restore default extended configuration, remove or rename the extended folder in Fluidd/Mainsail Configuration tab, then reboot.

Recovery from Configuration Issues

If an invalid configuration breaks Moonraker (printer won’t connect to WiFi):

  1. Create an empty file named extended-recover.txt on a USB drive
  2. Insert the USB drive into the printer
  3. Restart the printer
  4. The extended configuration will be backed up to extended.bak and reset to defaults
  5. Remove the USB drive (the recovery file will be automatically deleted)