Files
MonstrofilandClaude Opus 5 5316694795 Put FlashForge's klipperDaemon back on a printer that lost it (#20)
A stock package restores every path the mod points at itself except
/usr/prog/klipper/klipperDaemon, which it does not carry: not in the software
component, not in its md5sum.list, no line in run.sh. Whatever sits there
survives every stock flash and stock's start.sh calls it on each boot, so a
printer whose copy was replaced cannot be returned to stock at all -- the file
FlashForge shipped it with is gone, and no package of theirs will put one back.

anvil-core ships that copy now, and anvil-link-prog.sh restores it whenever it
finds a link into $MODDIR at that path -- on a flash and on an `apk upgrade`
alike. One update is enough, and it costs 845 bytes.

The population this is for is the one that keeps up to date: they took a
release that owned the file, they upgraded, and the link is still there --
dangling, since the payload no longer carries what it pointed at. Under the
mod nothing calls it and nothing looks wrong; the bill arrives when they flash
stock and get a UI with no Klipper. Owners who have already rolled back cannot
be reached from here at all and are served by the recovery package.

The shipped copy is FlashForge's, byte for byte, so it is in the parse list
and out of the shellcheck list: they write `mkdir -p $(dirname $KLIPPER_LOG)`
and a lint fix would put a script on printers that no FlashForge machine has
ever run. The replica asserts its md5 after the restore for the same reason.

Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-08 12:53:54 +03:00

1.7 KiB

Support

Two things between them cover most of what can go wrong: the logs say what happened, and flashing the stock package undoes everything.

There are people to ask on the Discord. Bring the logs.


The undo button

Flash the stock FlashForge package for your model. It restores everything it carries and installs the same way — stick in, power on. Keep a copy downloaded before you start; the stock packages are published at ghzserg/FF.

The printer goes back to the printer.cfg it had before Reforge: the mod keeps its Klipper config in a directory of its own and leaves FlashForge's alone, which is what makes the stock flash clean. Nothing you tuned is deleted — it waits in /usr/data/anvil-data/config for the next time you flash Reforge.

If your printer went back to stock and came up with a normal-looking screen but no Klipper — it will not home, heat or print — it took a Reforge release that replaced one of the printer's start-up scripts, and the stock package has no copy of that one to put back. Flash the package at Klipper4FlashForge/stock-recovery after the stock one and it starts again.

Updating Reforge first avoids that trip entirely: an update puts the file back for you, and the printer is then free to go to stock whenever you want.


The logs

All on the data partition, and all surviving a reboot:

/usr/data/anvil-install.log      what the installer did
/usr/data/logs/anvil-boot.log    services + UI choice at each boot
/usr/data/logs/printer.log       klipper
/usr/data/logs/helixscreen.log   helixscreen