Skip to content
Camden-Winder edited this page Aug 7, 2026 · 6 revisions

Q2 FAQ


What does Health Check (option 9) actually check?

The Health Check runs a suite of verifiers across your Klipper config:

  • Orphan includes — [include X] lines whose target file doesn't exist
  • Duplicate macro definitions — e.g. two BED_MESH_CALIBRATE definitions
  • Invalid Klipper options — keys that don't belong in a section (e.g. timeout: inside [bed_mesh])
  • Leftover MMU artifacts — Happy Hare v3 extras/mmu/ package or mmu_*.py symlinks that survive after a revert
  • Display service state — checks that the correct screen service is running after a revert

It also reports runtime service health for Klipper, Moonraker, Happy Hare, HelixScreen, Mainsail, the camera stream, and the Qidi Box sensors, and flags a HELIX_QIDI_BOX_WRITE drop-in left in place while BunnyBox is installed (both would try to drive the Box).

It takes a config backup before any repair, then reports problems and offers to fix the most common ones automatically.


Where are my backups stored?

The AIO captures one stock config snapshot at ~/aio_config_backup/, taken once before the first install action and never overwritten afterwards. This is what Revert to Backup restores from — it is the only copy of your pre-AIO config. Do not delete it.

ls ~/aio_config_backup/

~/mudstockbackups/ holds AIO state and install logs (_AIO_STATE/, install_YYYYMMDD_HHMMSS.log, and marker dotfiles) — not config backups. The _FIRST_STOCK directory under it is only used by the 01.01.02+ compatibility tooling in the Testing submenu and will not exist on legacy_mks firmware.


Can I run the AIO more than once?

Yes. Most install paths are idempotent — running them again on an already-installed printer is safe and will re-apply any changes. The installer detects current state and adjusts accordingly.


Do I need to run SCREWS_TILT_CALCULATE?

Not required after every print. It is worth running once after first setup or if you move the printer. See Q2 Just Faster — Screw Tilt Calibration for a video walkthrough, or watch the YouTube guide directly.


What does option 4 (Update Macros) do?

It re-fetches all AOI-owned macro files for your installed group — gcode_macro.cfg, printer.cfg (BunnyBox only), and all four KAMP files. It reads your install group from aoi.ini to know which macro set to pull.

You will be warned that any custom modifications to these files will be overwritten before it proceeds.


What is aoi.ini?

aoi.ini is a small state file the AIO writes to ~/printer_data/config/aoi.ini after a successful install. It records which install group you used, which AIO version installed it, and when. You can inspect it any time:

cat ~/printer_data/config/aoi.ini

Expected output after a BunnyBox install:

[aoi]
install_version=RC3.02
macro_version=RC3.02
install_group=BunnyBox
install_date=2026-08-07

(shown for RC3.02 — your install_date will be the day you installed, and macro_version will change on its own if you later run option 4)

This file replaces the old empty .aio_installed marker used in versions before RC2.52.


What does "disable unnecessary processes" do?

Every install path (BunnyBox, Just Faster Printer, Just Faster Box) ends with an optional prompt: "Would you like to disable unnecessary processes? (recommended)". Answering yes disables background services that aren't needed for normal printing (packagekit, QIDILink-client and the pulseaudio user units are also masked so they cannot be pulled back in by another unit):

  • algo_app, QIDILink-client — Qidi app / AI-detection services
  • bluetooth, pulseaudio — Bluetooth and audio, unused on a headless printer
  • xl2tpd, strongswan-starter, openvpn — VPN services
  • triggerhappy — hotkey daemon (the printer has no physical buttons for it to watch)
  • packagekit — background package-manager polling

It does not touch QD_Q2 (touchscreen) or polkitd (required by Moonraker) — both stay running.

lightdm is left alone on the Just Faster paths. It is the stock display manager, so disabling it blanks the stock touchscreen. As of RC3.02 the prompt keeps it running on Just Faster Printer and Just Faster Box, and you will see a line saying so. The BunnyBox / HelixScreen path still disables it, because HelixScreen replaces the stock display entirely.

On RC3.01 and earlier, answering yes on a Just Faster install did disable lightdm and your stock screen would go dark and stay dark after a reboot. If that happened to you, it is recoverable without a full revert — SSH in and run sudo systemctl enable --now lightdm.

On 01.01.02+ firmware, answering yes also applies a fix for animated loading-spinner GIFs in the stock touchscreen UI, which otherwise decode continuously in the background and use 50%+ of a CPU core even when idle. This only affects the spinner animation. See Making qidiclient suck less for the technical writeup.

Answering no skips both changes. You can re-run any install path later to be asked again.

Clone this wiki locally