FLYOS-FAST System Configuration Guide
This guide is used to set up the device platform, network, printing environment, screen, camera, and CAN communication for FLYOS-FAST. The system services for H3, H5, and H618 are used in a similar way, but hardware-related options cannot be copied across platforms.
Pre-configuration Confirmation
Before you begin, confirm the following information:
| Item | Content to Confirm |
|---|---|
| System Image | The image platform matches the device chip: H3, H5, or H618 |
| Device Model | Used to select the correct board |
| Printing Environment | Whether to use Klipper or RRF |
| Local Display | No screen, HDMI, FLY-TFT, KlipperScreen, FLY Screen, or serial screen |
| Camera | Disabled, Crowsnest, or GoCam from the FLYOS-FAST v1.4.0 beta |
| CAN Speed | The motherboard, toolboard, and system all use 1000000, 500000, or 250000 uniformly |
board firstboard affects hardware configurations such as serial ports, SPI, screens, and onboard MCUs. Selecting the wrong one may cause unavailable interfaces, screen anomalies, or errors during first-boot firmware processing. Do not copy a complete configuration first and then modify the device name; instead, start from the original config.txt of the current image and configure item by item.
Recommended Configuration Order
- Select the system image and
boardthat match your device. - Set Wi-Fi, time zone, and printer name.
- Choose
printer=klipperorprinter=rrf. - Select the actual screen type and screen UI.
- Enable the camera or Moon2UART as needed, testing one item at a time.
- When using CAN, set the speed uniformly for all devices.
- After saving, reboot and confirm each service and hardware interface.
Choosing a Configuration Method
- Config Myprint
- Directly Edit Configuration File
Using Config Myprint to Configure the System Card
Config Myprint is suitable for graphically setting up the system card before the first boot. Connect the flashed system card to your computer, open the software, and wait for it to recognize the FlyOS-Conf partition.
Available options in the software may lag behind the test image updates. After flashing is complete, you should open FlyOS-Conf/config.txt and check whether board, screen, camera, and CAN rates match the actual hardware. New configuration items not displayed in the software need to be added manually; do not substitute with similarly named options.
Step 1: Enable System Configuration
Turn on the Enable System Configuration toggle.
Step 2: Complete Basic Settings
Configuration File Management
- Only select the folder that contains the printer configuration files; do not select a single file.
- The software will copy the configurations from the selected folder to the system card and load them on the first boot.
- Before writing, ensure the folder does not contain leftover
printer.cfgfiles or duplicate configurations from other printers.
Wi-Fi Network
Enter a valid Wi-Fi name and password. Leave this blank if you are using a wired network or plan to configure Wi-Fi later.
Klipper Web Interface
Select either Fluidd or Mainsail. This option only affects the default web interface used in Klipper mode.
Local Display
Select the actual display interface connected, then decide whether to enable KlipperScreen or FLY Screen. If both are enabled simultaneously, the system will prioritize booting KlipperScreen; when using FLY Screen, KlipperScreen should be disabled.
Step 3: Complete Advanced Settings
Printer Name
Set a printer name for easy identification. It is recommended to use only English letters, numbers, hyphens, and underscores.
Camera Service
Enable Crowsnest as needed. For the v1.4.0 beta image, if you need to use GoCam, confirm that config.txt contains crowsnest=0 and gocam=1 after flashing; do not enable both services simultaneously.
Language and Timezone
Select the initial system language and the actual timezone. Once the system is online, it will display the time based on this timezone.
CAN Communication Rate
Select a rate that matches the firmware of the mainboard and all CAN tool boards. Common values are 1000000, 500000, or 250000; different rates must not be mixed on the same CAN bus.
Step 4: Write and Verify
After completing all settings, click Manually Write Configuration. If you only select options in the interface without clicking write, the configuration will not be saved to the system card.
After the write is complete, perform the following checks:
- Open
FlyOS-Conf/config.txt. - Confirm that
boardexactly matches the actual hardware. - Confirm that only the required screen UI and camera services are enabled.
- Confirm that
canbus_bitratematches the firmware of all CAN devices. - Save, then safely eject the system card before inserting it into the target device to boot.
Modifying the Configuration File
The system configuration file of FLYOS-FAST appears under different names in different locations, but they all point to the same configuration:
| Usage Scenario | File Location | Applicable Situation |
|---|---|---|
| System card connected to a computer | FlyOS-Conf/config.txt | Set network, device model, and initialization options before first boot |
| Inside the Linux system | /config/config.txt | Check configuration via SSH |
| Fluidd / Mainsail | .flyos-config/sys-config.conf | Modify options that are read at every boot online after system startup |
- Back up the original configuration file first.
- Keep the
key=valueformat; do not change it tokey: value. - Do not add duplicate configuration items with the same name; edit the original value directly when modifications are needed.
- Do not use the browser's webpage translation feature to edit the configuration, to avoid the content being rewritten.
- Use only English letters, numbers, hyphens, and underscores for names and paths whenever possible.
- Do not modify anything after
######### PLEASE DO NOT EDIT THE FOLLOWING #########.
- Modify the System Card Before First Boot
- Modify via Web Page After System Boot
- After flashing the image, reconnect the system card to the computer.
- Open the removable disk named
FlyOS-Conf. - Open
config.txtwith a plain text editor. - Modify
boardaccording to the actual device, then set Wi-Fi, print mode, screen, and CAN baud rate. - Save the file and safely eject the system card, then insert it into the device and boot.
Initialization items such as language, printer_name, and firmware should be modified here. After the system has completed first boot, editing these values will not re-trigger the initialization process.
- Ensure the computer and the host board are connected to the same network.
- Open the device IP address in a browser, for example
http://192.168.1.2/. - In Fluidd, uncheck "Filter hidden files and folders," or in Mainsail, check "Show hidden files."
Loading... | Loading... |
- Open
sys-config.confin the.flyos-configfolder.
- Modify the required configuration items and save.
- Completely restart the host board to reload system services and hardware configuration.
The web page method is suitable for modifying configuration items that are read at every boot. Initialization items that have already missed the first boot cannot be re-run by simply restarting; use the respective feature's own modification method instead.
Check After Saving
After restarting, verify at least the following items:
- The web page opens normally, and the print mode and web interface selection are correct.
- The local screen, touch orientation, and screen UI are functioning properly.
- Only the required optional services, such as camera or Moon2UART, are enabled.
- When using CAN, the system baud rate matches the firmware baud rate of the mainboard and toolboard exactly.
- Klipper or RRF can connect to the corresponding control board normally.
If the system fails to boot properly after modification, connect the system card to the computer, restore the previous config.txt, then modify and verify items one by one.
View Configuration Items by Platform
- H618: C5 / C8P / Pi V3
- H3 / H5 Devices
H618 Configuration Items
The following default values and optional values have been verified against the FlyOS-Conf/config.txt in the official H618 v1.3.10 image; configurations newly added in the v1.4.0 test image will be separately noted.
Wireless Network
WIFI_SSID and WIFI_PASS are read at every startup. When using an open network, the password can be left blank; when using an encrypted network, both fields must be filled in.
| Configuration Item | Default Value | Optional Values | Description |
|---|---|---|---|
WIFI_SSID | Empty | Wi-Fi name | Once filled in, the system will automatically connect to this network at startup |
WIFI_PASS | Empty | Wi-Fi password | Can be left blank for open networks |
First Boot Settings
language, printer_name, and firmware are only used during the first boot process after flashing a full image. Once the system has completed its first boot, modifying these items will not re-trigger initialization.
| Configuration Item | Default Value | Optional Values | Description |
|---|---|---|---|
language | zh-CN | Language codes listed in the image, such as zh-CN, en, ja, ko | Sets the initial language for Fluidd and Mainsail |
printer_name | Empty | Any name without special characters | Sets the initial printer name |
firmware | /usr/lib/firmware/klipper/stm32h723-128k-usb.bin | Firmware path within the image, or /config/klipper.bin | On first boot, C5, C5 V1.1, and C8P can automatically flash the onboard MCU based on board; Pi V3 does not use this item to flash external motherboards |
Automatic flashing is only performed when the first boot marker exists, both board and firmware are valid, and the firmware file exists. Do not manually create the first boot marker to attempt repeated flashing; for subsequent firmware maintenance, please follow the firmware flashing tutorial for the corresponding motherboard.
System and Motherboard
The following settings are read at every startup.
| Configuration Item | Default Value | Optional Values | Description |
|---|---|---|---|
board | none | fly-c5, fly-c5-v1.1, fly-c8p, fly-pi-v3 | Select the actual device model; this value affects the H618's serial port and SPI peripheral configuration |
localtime | Asia/Shanghai | World timezone names | System timezone used after network time synchronization |
printer | klipper | klipper, rrf | Selects the print control environment to start |
console | serial | serial, both | Sets the system console; keep the default unless there is a clear need |
canbus_bitrate | 1000000 | 1000000, 500000, 250000 | Sets the system CAN interface bitrate; must match all CAN devices on the bus |
board CorrectlyThe original configuration in the image is board=none, and the device will first attempt to read the hardware detection result; if detection still fails, H618 v1.3.10 will fall back to fly-c5. Therefore, C8P, C5 V1.1, and Pi V3 users should explicitly select their device model before first boot and not rely on the fallback value.
The H618 peripherals enabled by different board values are as follows. This table is only for illustrating the impact of an incorrect selection and does not imply that these serial or SPI interfaces can be repurposed arbitrarily.
board Configuration Value | Onboard Peripherals Enabled by the System |
|---|---|
fly-c5 | UART1 |
fly-c5-v1.1 | UART1, SPI1.2 |
fly-c8p | UART1, UART3, UART4, SPI1.2 |
fly-pi-v3 | UART1, UART3, UART4, SPI1.2 |
Screen and Interface
| Configuration Item | Default Value | Optional Values | Description |
|---|---|---|---|
screen | hdmi | none, hdmi, fly-tft-v2-r, fly-tft-v2-c | Selects the display interface; none disables local display output |
rotate | auto | auto, 0, 90, 180, 270 | When auto, HDMI defaults to 0 degrees and FLY-TFT defaults to 90 degrees; manual angles also apply to HDMI display and touch orientation |
klipper_screen | 0 | 0, 1 | Enables KlipperScreen in Klipper mode |
fly_screen | 0 | 0, 1 | Enables FLY Screen in Klipper mode |
moon2uart | 0 | 0, 1 | Enables the Moon2UART serial screen service |
m2u_port | /dev/ttyS1 | Actual serial device path | The serial port used by Moon2UART |
m2u_baud | 115200 | Baud rate required by the screen | Moon2UART serial communication rate |
When both klipper_screen=1 and fly_screen=1 are set, the system prioritizes starting KlipperScreen. When using FLY Screen, set klipper_screen=0 and fly_screen=1.
After an OTA upgrade from an older version, config.txt may be missing fly_screen, m2u_port, or m2u_baud. If the corresponding functionality is needed, add the configuration items as shown in the table above.
Klipper Web Interface and Camera
| Configuration Item | Default Value | Optional Values | Description |
|---|---|---|---|
klipper_webui | fluidd | fluidd, mainsail | Web interface used in Klipper mode |
crowsnest | 0 | 0, 1 | Enables or disables the camera service |
| Configuration Item | Default Value | Optional Values | Description |
|---|---|---|---|
gocam | 0 | 0, 1 | Enables the GoCam UVC camera service |
v1.3.10 official release does not have gocam. In the v1.4.0 test version, if both crowsnest=1 and gocam=1 are set, the system prioritizes starting Crowsnest. When using GoCam, explicitly set crowsnest=0 and gocam=1.
GoCam Usage: View the GoCam camera service
Power Loss Shutdown
In the original H618 v1.3.10 configuration, shutdown_pin_state and shutdown_pin are commented out by default, meaning power loss shutdown detection is disabled. Different products and hardware versions may have different trigger levels; please refer to the "Power Loss Shutdown and Print Resume" documentation for the corresponding product and do not directly copy values from other devices.
Power loss shutdown and power loss print resume cannot be enabled simultaneously. If power loss print resume is needed, keep power loss shutdown detection disabled.
Advanced Configuration
| Configuration Item | Default Value | Optional Values | Description |
|---|---|---|---|
spidev | spidev0.0 | SPI device combinations explicitly specified in the product documentation | Controls the SPI devices exposed to Linux user space |
Items such as spidev and overlays are used for low-level hardware enablement. Unless explicitly required by a product tutorial, keep the image default values and do not modify the content after ######### PLEASE DO NOT EDIT THE FOLLOWING #########.
H3 / H5 Configuration Items
The following configurations have been verified against the FlyOS-Conf/config.txt in the official H3 and H5 v1.3.10 images. The service configurations for both platforms are generally consistent, but board, screen models, and underlying hardware options must not be mixed.
Wireless Network
| Configuration Item | Default Value | Optional Values | Description |
|---|---|---|---|
WIFI_SSID | Empty | Wi-Fi name | Once filled in, the system attempts to connect to this network at startup |
WIFI_PASS | Empty | Wi-Fi password | Can be left empty for open networks |
These two items are read at every startup. If the name or password contains spaces or special characters, retain the double-quote format from the image.
First Boot Settings
| Configuration Item | Default Value | Optional Values | Description |
|---|---|---|---|
language | zh-CN | Language codes listed in the image | Sets the initial language for Fluidd and Mainsail |
printer_name | Empty | A name without special characters | Sets the initial printer name |
firmware | Disabled by default | Firmware path specified in product documentation | Only used when the corresponding product explicitly supports firmware flashing at first boot |
language, printer_name, and firmware are only used during the first boot process after flashing a full image. Do not uncomment firmware on your own or copy firmware paths from other products.
Device Platform and board
| Image Platform | Device | board Configuration Value |
|---|---|---|
| H5 | FLY-Pi | fly-pi |
| H5 | FLY-Pi V2 | fly-pi-v2 |
| H5 | FLY-Gemini V1 | fly-gemini-v1 |
| H5 | FLY-Gemini V2 | fly-gemini-v2 |
| H5 | FLY-Gemini V3 | fly-gemini-v3 |
| H5 | FLY-C8 | fly-c8 |
| H3 | FLY-Lite2 | fly-lite2 |
| H3 | FLY-Lite2.1 | fly-lite2.1 |
| H3 | FLY-MiniPad | fly-minipad |
The H5 image cannot use the H3 board, and the H3 image cannot use the H5 board. The startup script will reject device values that do not belong to the current platform. Before the first boot, explicitly fill in the actual device and do not rely on the image default value.
The original default value in the H5 v1.3.10 image is board=fly-pi-v2, and in the H3 v1.3.10 image it is board=fly-lite2.1. Only keep the default value when the actual device exactly matches these models.
System and Communication
| Configuration Item | Default Value | Optional Values | Description |
|---|---|---|---|
localtime | Asia/Shanghai | World timezone names | System timezone used after network time synchronization |
console | serial | serial, both | System console mode; keep the default unless there is a clear requirement |
printer | klipper | klipper, rrf | Select whether to start the Klipper or RRF printing environment |
canbus_bitrate | 1000000 | 1000000, 500000, 250000 | System CAN bitrate, must match all devices on the bus |
Screen Types
| Image Platform | screen Optional Values |
|---|---|
| H5 | none, hdmi, fly-tft-v1, fly-tft-v2-r, fly-tft-v2-c |
| H3 | none, hdmi, fly-tft-v1, fly-minipad-r, fly-minipad-c, fly-tft-v2-r, fly-tft-v2-c |
| Configuration Item | Default Value | Optional Values | Description |
|---|---|---|---|
screen | hdmi | Values supported by the current platform from the table above | Select the display interface; none disables local display output |
rotate | auto | auto, 0, 90, 180, 270 | When auto, HDMI defaults to 0 degrees and TFT defaults to 90 degrees |
klipper_screen | 0 | 0, 1 | Enable KlipperScreen in Klipper mode |
fly_screen | 0 | 0, 1 | Enable FLY Screen in Klipper mode |
moon2uart | 0 | 0, 1 | Enable the Moon2UART serial screen service |
m2u_port | /dev/ttyS1 | Serial port path specified in product documentation | Serial port used by Moon2UART |
m2u_baud | 115200 | Baud rate required by the screen | Moon2UART serial port speed |
When both klipper_screen=1 and fly_screen=1 are set, the system starts KlipperScreen first. Screen model, interface orientation, and serial port path should follow the corresponding product documentation.
Web Interface and Camera
| Configuration Item | Default Value | Optional Values | Description |
|---|---|---|---|
klipper_webui | fluidd | fluidd, mainsail | Default web interface used in Klipper mode |
crowsnest | 0 | 0, 1 | Enable or disable the Crowsnest camera service |
The H3 and H5 v1.3.10 official images do not include a gocam configuration item. Do not copy settings from the v1.4.0 beta image.
Power Loss Shutdown and Advanced Configuration
shutdown_pin_state, shutdown_pin, spidev, and overlays are related to specific device hardware. They may only be modified when the corresponding product documentation provides explicit values. Do not copy configurations from other motherboards, other hardware revisions, or other chip platforms.
Power loss shutdown and power loss resume printing cannot be enabled simultaneously. When power loss resume printing is needed, disable power loss shutdown detection according to the corresponding product tutorial.
Common Feature Combinations
| Goal | Key Configuration | Notes |
|---|---|---|
| Web interface only, no local screen | screen=none, klipper_screen=0, fly_screen=0 | The Moon2UART serial screen can be enabled independently as needed |
| HDMI + KlipperScreen | screen=hdmi, klipper_screen=1, fly_screen=0 | rotate sets the display and touch orientation |
| Use FLY Screen | klipper_screen=0, fly_screen=1 | screen must still select the actual display interface |
| Use Crowsnest | crowsnest=1 | For the v1.4.0 beta, also keep gocam=0 |
| Use GoCam | crowsnest=0, gocam=1 | Only available for the v1.4.0 beta image; view the tutorial |
| Use Moon2UART | moon2uart=1 | Also verify m2u_port and m2u_baud |
| Use CAN | Set a unified canbus_bitrate | The system, motherboard, and all CAN nodes must be consistent |
Post-Reboot Completion Checklist
| Check Item | Normal Result |
|---|---|
| Network | The webpage can be opened via the device IP, local.klipper.cn, or a direct connection address |
| Device Platform | Serial ports, SPI, and onboard features match the actual product |
| Printing Service | Only the selected environment, Klipper or RRF, is started |
| Screen | Display, touch, and rotation orientation work normally |
| Camera | Only the selected option, Crowsnest or GoCam, is running |
| CAN | All nodes can be queried with no speed inconsistency errors |
Modify only one group of related options at a time. If an issue occurs, revert that group's configuration first. Do not change board, screen, CAN, and advanced hardware parameters simultaneously, as this may make it impossible to determine the source of the problem.