Repository navigation
FlashForgeUI v1.0.5
Desktop app to monitor and control FlashForge 3D printers.
Hotfix (Re-release) for MacOS signing issues
Select versions of MacOS were not able to launch the initial release of 1.0.5 , if that affected you please try this update
If you are still facing issues, please open an issue on the GitHub repo, or join the discord to reach me directly
Changes
This stable release contains all changes from 1.0.5-alpha.1 to 1.0.5-alpha.13. The CHANGELOG gives more detail about each alpha release.
Highlights
- Support for the Creator 5 and Creator 5 Pro.
- A printer file manager and a remote reboot for the Adventurer 5M, 5M Pro, and AD5X.
- Job upload from the WebUI.
- Spoolman filament tracking for each job on printers with a material station.
- The app can start with your computer and can minimize to the system tray.
- Faster connection to modern printers.
- An automatic test suite runs each change against a printer emulator.
Camera Security
- The camera service accepts connections only from this computer. Before this release, the go2rtc API (port 1984) and RTSP server (port 8554) accepted connections from all networks. These servers had no password. Any device on your network could show your cameras or change the go2rtc streams.
- Now, the two servers accept connections only from
127.0.0.1. - Remote users get the camera through the WebUI proxy, which requires a login.
- The WebRTC media port (8555) stays open for remote users.
- Now, the two servers accept connections only from
Creator 5 / Creator 5 Pro
- New: support for the Creator 5 and Creator 5 Pro. These printers do not have the legacy TCP channel. The app identifies them from the USB product ID in their discovery broadcast. Then, the app connects to them through HTTP only.
- Material station. The app supports the 4-slot material station of these printers.
- The station uses the same Material Station card as the AD5X, with the Creator 5 filament palette (24 colors, 21 materials).
- You can edit the material and the color of each slot.
- The card name changed from "IFS Station" to "Material Station". The app updates your saved layouts automatically.
- Temperature card. One card shows the four tool nozzles, the bed, and the chamber.
- You can set and clear the chamber temperature.
- The Off button of a tool stops the heater of that tool.
- The tool labels are T1 to T4, the same as on the printer screen.
- Creator 5 Pro. The app shows the filtration controls and the door sensor. The Creator 5 does not have these parts, so the app does not show them on that model.
- Paused state. A paused Creator 5 Pro shows Paused, not
Unknown. The printer pauses automatically when it finds a clog. A correct state is important at that time. - Known limitations:
- These printers cannot start a job that is stored on them. The app disables Start Recent and Start Local for these printers. To start a job, upload a new
.3mffile. - Raw G-code commands, for example Home Axes, need the TCP channel. These printers do not have this channel, so the app disables these commands.
- The file manager, the calibration assistant, and the reboot do not support the Creator 5 series yet.
- These printers cannot start a job that is stored on them. The app disables Start Recent and Start Local for these printers. To start a job, upload a new
Printer Connection
- The app identifies modern printers (5M, 5M Pro, AD5X, and the Creator 5 series) from their discovery broadcast. This removes one network probe from each connection. The app continues to probe legacy printers.
- A new manual connection form replaces the "Enter IP" prompt. Type the IP address, printer type, serial number, and check code in the form. The app does not ask for the check code a second time.
- In headless mode,
--printersaccepts thecreator-5andcreator-5-protypes. It also accepts an optional serial number:IP:TYPE[:CHECKCODE[:SERIAL]].
Job Upload & Material Match
- Job upload from the WebUI. You can send
.gcode,.gx, and.3mffiles from a phone or a remote browser. The dialog, metadata, warnings, and material match are the same as in the desktop app. - Correct tool numbers for multi-material jobs. A plate that uses filaments 1 and 3 now prints with T0 and T2. Before this fix, it printed with T0 and T1. The second tool used filament from the incorrect slot.
- Changes to the material match dialog:
- Each color difference has its own warning line.
- The two sides of each mapping show a color sample.
- The confirm button always shows Confirm.
- After you match the materials, the upload dialog shows each mapping.
- The upload button shows Start Print or Send File. The text changes with the Start Now checkbox.
- After a connection or a printer change, the WebUI material match dialog waits for the material station data. Before this fix, the dialog showed "not connected".
- Start Local is disabled on the AD5X, in the desktop app and in the WebUI. The AD5X cannot show a list of local files. Before this change, the button opened a dialog with only an error message. Start Recent continues to operate.
Spoolman
- Filament tracking for each job on printers with a material station (AD5X with a station, Creator 5, and Creator 5 Pro). When you match the materials for a job, select the Spoolman spool for each slot. Or, select Do not track.
- When the print is complete, the app removes the slicer estimate for each tool from its spool.
- If you cancel a print, or if the print fails, the app removes only the filament that the printer used before the stop.
- Your selection applies only to that print. You can change the spools on the printer at any time.
- The Material Station editor does not keep a spool for each slot now. Set from Spoolman continues to set the material and the color of a slot.
- Creator 5 tracking has no test on a real printer yet. Send feedback in FlashForgeWebUI #21.
File Manager, SSH & Reboot (Adventurer 5M / 5M Pro / AD5X)
These features need root SSH access. Use the FlashForge-EasySSH USB tool to configure this access.
- New: printer file manager (a shortcut in the top bar). You can show, rename, and delete files on the internal storage and on the USB drive of the printer. You can delete one file or many files at one time. The file manager shows thumbnail previews.
- New: Settings → SSH. Each printer has one set of SSH credentials. The file manager and the calibration assistant use the same credentials. The app encrypts the stored credentials. The defaults are the same as in EasySSH (
root/flashforge, port 22).- The app does not copy the credentials that you saved in the 1.0.4 calibration assistant. If you used credentials that are not the defaults, type them again in Settings → SSH.
- New: Reboot in the menu. A full-screen overlay shows the restart of the printer. When the printer is available again, the app connects the camera again.
- The three features also operate in the WebUI. You can change a password from a browser, but the browser cannot show the password.
Start with System & Tray
- New settings: Start with system and Start minimized for Windows, macOS, and Linux. Start minimized applies only when the operating system starts the app. When you start the app manually, the app always shows the window.
- System tray icon with Show and Quit. An optional Minimize to tray setting is also available. This setting is off by default, because standard GNOME needs an extension to show tray icons.
- On Linux, the app uses a standard
~/.config/autostartentry. This entry points to the stable AppImage path.
Status, WebUI & Notifications
- The ETA does not increase while a print is paused or while the printer heats. In these conditions, the ETA shows
--:--and the Discord notification does not show the ETA. - The WebUI Recent and Local file dialogs show thumbnail previews. They use the same thumbnail cache as the desktop app.
- The app shows the TVOC (air quality) value for all printers that send it.
- The WebUI calibration dialog has a correct layout. Popup backgrounds are not transparent now.
Headless & Stability
- Headless mode does not stop at startup now. Before this fix, the app started the WebUI server two times, and headless mode stopped. Thanks to @jsalmon00 (#80).
- The go2rtc camera process stops each time the app stops, also after an error.
Linux Packages
- The
.deband.rpmpackages install their AppArmor profile again. The app starts on Ubuntu 24.04 and later. Use these packages on these Ubuntu versions. - The AppImage examines the sandbox at startup. If no usable sandbox is available, the AppImage starts with
--no-sandbox.
Diagnostics & Updates
- In debug mode, the app also writes all console output to a
console-<timestamp>.logfile. You can show and download this file through the WebUI debug routes. - Releases include
.exe.blockmapfiles. Windows updates download only the changed parts. - The update channel is the same as the channel of the installed build. You can select a different channel in the settings.
- The app does not write an incorrect "Critical asset validation failed" error at each start. The check looked for a renderer file that the build does not make since the change to Vite.
Tests & CI
- CI does a type check, a lint check, a build, and the unit tests for each push and pull request. The release workflow does the same checks first.
- An end-to-end test suite operates the real desktop app against the FlashForge printer emulator in CI. The emulator supplies a 5M Pro, an AD5X, a Creator 5, and a Creator 5 Pro. The same tests also operate with real printers on a test bench.
- The WebUI browser tests use the real headless server. Before this change, they used a mock server.
- CI and release builds use Node 22. This is the same Node version as in Electron 39.
- The notes of a stable release compare the release against the previous stable release. Before this fix, the compare link used the newest earlier tag, which was an alpha tag.
Documentation
- The user documentation is in the GitHub wiki.
- A new
CONTRIBUTING.mdfile explains the development and release workflow. All development starts on thealphabranch.
Dependencies
@ghosttypes/ff-api1.3 → 2.0.3, and@parallel-7/slicer-meta1.3.0 → 1.5.0.- Security update. This release corrects approximately 100 new dependency advisories (5 critical and more than 50 high).
- Updated packages:
express5.3.0,electron-updater6.8.9, andelectron-builder26.15.3. - Packages moved to corrected versions:
axios1.20.0,adm-zip0.6.1 (reads 3MF files),proxy-addr,js-yaml,tar,qs,ip-address,postcss,shell-quote,brace-expansion,@xmldom/xmldom,handlebars,nanoid,source-map-js, andbrowserslist. - Open advisories: the other advisories are in Electron 39, or in development tools that do not have a correction yet.
- Updated packages:
Downloads
Download the installer or archive for your operating system from the assets of this release.
More Information
- README: setup and operation
- CHANGELOG: all release notes
- Changes since v1.0.4