Compatibility: K2 and Hi series printers
Warning
K1 Support is Experimental
Compatibility with the Creality K1 line is currently experimental. Please report whether it works successfully or encounters errors in your setup!
This tool reads custom filament profiles from Orcaslicer and Creality Print, converts them to Creality's database format, and sends them to the printer. This allows you to pick them manually on the screen or automatically using custom RFID tags.
- β¨ Features & Benefits
- π οΈ Prerequisites
- π¦ Installation
- π§ Tool Configuration
- π» Slicer and RFID Configuration
- π Syncing
- β Donations
Creality recently added filament syncing with Creality Print, but it has some major limitations. Filament Sync fixes these issues:
| Features | Creality Print Sync | Filament Sync (This Tool) |
|---|---|---|
| Slicer Compatibility | β Locked to Creality Print | β OrcaSlicer & Creality Print |
| Profile Categorization | β Forces "Generic" | β Organized by Brand/Type/Name |
| Custom RFID Tags | β Not supported | β Supported (CFS & Side Spool) |
| Filament Tracking | β Not supported | β Tracks usage & remaining amount |
| Multi-Printer Sync | β Manual | β Simultaneous multi-IP sync |
| Privacy & Security | β 100% Local / Private |
You may need to enable root access in the settings on your printer. Once enabled it will show the default username and password.
If you haven't already connected to your printer with SSH at least once, use terminal or powershell to connect and generate the RSA keys needed for the script to run correctly
ssh root@your-printer-ipDownload it from the official site: Download Node.js
- Git must be installed on your system.
- Download Git for Windows
- Git is usually installed by default. You can check by running
git --versionin your terminal.
If you do not have Git installed, you will need Homebrew installed first to manage dependencies, use the official installation script from Brew.sh:
/bin/bash -c "\$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"Then run brew install git.
- Git is usually installed by default. You can check by running
git --versionin your terminal.
If you do not have Git installed
- Ubuntu/Debian:
sudo apt install git - Fedora:
sudo dnf install git - Arch:
sudo pacman -S git
Download the Latest release
Extract the folder
If you clone the repo instead of downloading the latest release, you will need to run npm i to install the required submodules.
Open the user-config.js file with a text editor
- Enter 'orca' or 'creality'
const SLICER = 'orca'If you are using logged into a cloud account in OrcaSlicer or CrealityPrint, change USERID to the unique id number that the slicer has set for the user folder.
const USERID = 'default'You can find your user id by clicking the Help tab in your slicer and then clicking Show Configuration Folder.
OrcaSlicer
Windows: /AppData/Roaming/OrcaSlicer/user/USERID#
Mac: /Library/Application Support/OrcaSlicer/user/USERID#
Linux: /.config/OrcaSlicerOrcaSlicer/user/USERID#
Flatpak: /.var/app/io.github.softfever.OrcaSlicer/config/OrcaSlicer/user/
CrealityPrint
Windows: /AppData/Roaming/Creality/Creality Print/7.0/user/USERID#
Mac: /Library/Application Support/Creality/Creality Print/7.0/user/USERID#
Linux: /.config/Creality/Creality Print/7.0/user/USERID#
Flatpak: /.var/app/io.github.crealityofficial.CrealityPrint/config/Creality/Creality Print/7.0/user/
Supports syncing to one or multiple printers.
If the printers share username or password you can reuse the variables below or enter individually in the PRINTERS list
const USER = 'root'
const PASSWORD = 'creality_2024'const PRINTERS = [
{ name: "Printer1", ip: "10.0.0.50", user: USER, pass: PASSWORD, k1: false },
//{ name: "Printer2", ip: "10.0.0.51", user: "user", pass: "pass", k1: false},
//{ name: "Printer3", ip: "10.0.0.52", user: "user2", pass: "pass2" k1: true},
]To add more printers to the list remove the comment // from the lines. You can also add more printers by pasting the following line
{ name: "OfficePrinter", ip: "192.168.1.150", user: "user", pass: "pass", k1: false },You must add a JSON metadata string into the Notes section of your filament profile in Orcaslicer or Creality Print.
Copy and paste this template into your profile notes:
{"id":"","vendor":"","type":"","name":""}- The
"id"must be a unique 5-digit value. - If you are using custom RFID tags, this ID must match the tag.
β οΈ An ID is required even if you don't use RFID tags, as the tool uses it to update printer settings.
Example configuration:
{"id":"02345","vendor":"ELEGOO","type":"PLA","name":"Fast PLA"}- Set the Material Code in your RFID app to the exact
idyou specified in your profile notes. - In the RFID for CFS app, enable Advanced Mode to unlock custom code settings.
It is suggested to run the script manually the first time as the slicer may encounter an error the first time it runs the script as a Post-Process Script. Running it manually will also allow you to see if there are any installation or syncing errors.
In Terminal/Powershell enter the Filament-Sync folder then run
node main.jsAt the bottom of the "Others" tab of your slicing settings, find "Post-processing Scripts"
Make sure to change the path to where you put the extracted Filament-Sync folder
C:\Users\your-user-name\Filament-Sync\windows-sync.bat;/usr/local/bin/node /Users/your-user-name/Filament-Sync/main.js;/usr/local/bin/node /home/your-user-name/Filament-Sync/main.js;Give your slicer permission to access node and the tool
In terminal
flatpak override --user --filesystem=host com.orcaslicer.OrcaSlicerFind the path to node and copy it
which nodeReplace the path to where the tool and node is located
flatpak-spawn --host bash -c 'cd /home/your-user-name/Filament-Sync && /home/your-user-name/.nvm/versions/node/v26.5.0/bin/node main.js';If this tool saved you from cloud account hassles or helped organize your workshop, consider supporting the project!