github rinkhals-community/Rinkhals 20260526_04_test
Rinkhals 20260526_04_test

pre-release7 hours ago

Latest test build on the way to the June 1 stable release. This covers everything since 20260501_01 and adds a fix for a gklib crash that showed up in 20260526_02_test. If nothing else regresses over the next few days, the contents of this build will become 20260601_01.

Highlights

  • KS1 firmware 2.7.2.1 is now supported (manifest, binary patches, runtime check). KS1 owners who already upgraded no longer need .enable-rinkhals on a USB drive.
  • New auto-feed at print start. The touchscreen Color Match flow, Fluidd, Mainsail, USB-loaded files, and Orca remote-send all extrude correctly now after the ACE has retracted filament between prints (#464).
  • New opt-in Firmware Collector app (disabled by default). Helps the community catch new Anycubic firmware faster. Never transmits certificates, account info, or personal data.
  • SWU installer now keeps only the current Rinkhals install plus one previous. Frees up to ~2.6 GB on /useremain.

New Features

  • MMU ACE auto-feed when no filament is loaded at print start. Race-safe task management, configurable feed length and speed via [mmu_ace] in moonraker.conf, graceful bail-out on cancel or error (#19, thanks @sharpmonk).
  • Opt-in 60-firmware-collector Rinkhals app. Uses the printer's own Anycubic device certificate to discover new firmware. Sends only the public URL and version metadata to the Rinkhals community archive.
  • SWU installer prunes older Rinkhals installs on every update. Current and previous are kept.
  • MMU ACE shows an Unload button whenever a gate is physically loaded (#11).
  • UI: download Anycubic stock firmware to USB.
  • KS1 firmware 2.7.2.1 support (manifest, K3SysUi and gkapi binary patches, runtime check).
  • Dev container and justfile for contributors (#12, #14, thanks @basvd).

Bug Fixes

  • MMU ACE auto-feed now skips touchscreen filament refill, load, unload, and change gcodes (#20). Treating these as regular prints caused gklib to crash on K3 with "stuck at preheating" symptoms and Fluidd or Mainsail disconnecting. Detected by filename prefix (filament_refill_, filament_load_, filament_unload_, filament_change_).
  • Fixed unbound filename variable in patch_mqtt_print that crashed Vanilla Klipper (#18, thanks @Kobra-S1).
  • Fixed GoKlipper panic during homing on Kobra S1 Max by excluding motion_report from the exposed objects list (#17, thanks @Kobra-S1).
  • Fixed process-cfg.py regex to accept indented section headers in KS1 Max config files. Also adds the missing raw-string prefix on the second regex.
  • Fixed Fluidd Tool Mapping dialog deselecting on every ACE poll (#9).
  • Safely verify filament_hub object exists before querying so a missing object no longer crashes gklib.
  • LVGL fixes for the touchscreen UI:
    • Cast STATE enum to int for bitwise OR operations.
    • Removed unsupported lv.PART.ITEMS constant that crashed the UI when editing text fields.
    • Resolved text input dialog not showing by removing flex align assert and reverting overridden dialog method.
  • hostname-dns app: fixed disabled text input and number fields by adding LVGL keyboard modal support.

Documentation

  • Migrated from MkDocs to ProperDocs (#15).
  • New introduction for firmware internals, plus a "how Rinkhals works" overview.
  • Consolidated supported firmware versions across docs.
  • Repaired invalid YAML front matter and remaining legacy links.
  • Repository references migrated to the rinkhals-community organization.

Community archive infrastructure

These changes live in the rinkhals-firmware-site repository and support the new 60-firmware-collector app. Not user-facing in this build, but worth listing for context.

  • New ingest Lambda and SQS FIFO queue at ingest.firmwareforge.org/v1/notify for receiving notifications from opted-in printers.
  • firmware-fetcher ECS task now drains the contribution queue at the start of each scheduled run (06:00 and 18:00 UTC).
  • Custom domain mapping with ACM certificate for the ingest endpoint.

Upgrade notes

  • KS1 owners on Anycubic firmware 2.7.2.1: this is the first build where Rinkhals starts cleanly without .enable-rinkhals. You can remove the marker file after upgrading.
  • K3, K3V2, or K3M with ACE who hit "stuck at preheating" on 20260526_02_test: please upgrade. That crash is fixed in this build (#20).
  • First boot after upgrading from any pre-20260526_03_test build: the new installer will prune accumulated old version directories on /useremain. Current and previous are kept; everything else matching the YYYYMMDD_NN[_test][-N] pattern is removed. Custom folders are untouched.

New Contributors

Full Changelog: 20260501_01...20260526_04_test

Don't miss a new Rinkhals release

NewReleases is sending notifications on new releases.