feat: auto-PID tuning — Marlin integration or standalone firmware #2

Open
opened 2026-04-06 23:03:46 -07:00 by pyr0ball · 0 comments
Owner

Feature

Automate PID (proportional-integral-derivative) tuning for the piezo sensor, either as a Marlin plugin/patch or baked into the EasyPiezi firmware itself.

Options to evaluate

  • Marlin integration: expose a M command (e.g. M401-style) that runs a PID autotune cycle using EasyPiezi trigger data as the feedback signal. Minimal footprint, leverages existing Marlin PID infrastructure.
  • Standalone firmware mode: EasyPiezi runs its own autotune loop at startup or on demand — no Marlin dependency. More portable (Klipper, RepRapFirmware, etc.) but more firmware complexity.
  • Hybrid: standalone mode writes tuned values to EEPROM; Marlin reads them on boot.

Why it matters

PID tuning is currently a manual, trial-and-error process that discourages new users. Automating it removes the most common setup friction point and is a meaningful differentiator over other Z-probe solutions.

Notes

  • Marlin already has M303 for hotend/bed PID autotune — the pattern exists, this would extend it to probe sensitivity tuning
  • Should work across AVR and ARM targets
  • Good candidate for a future paid firmware add-on if EasyPiezi ever moves to a tiered model
## Feature Automate PID (proportional-integral-derivative) tuning for the piezo sensor, either as a Marlin plugin/patch or baked into the EasyPiezi firmware itself. ## Options to evaluate - **Marlin integration:** expose a `M` command (e.g. `M401`-style) that runs a PID autotune cycle using EasyPiezi trigger data as the feedback signal. Minimal footprint, leverages existing Marlin PID infrastructure. - **Standalone firmware mode:** EasyPiezi runs its own autotune loop at startup or on demand — no Marlin dependency. More portable (Klipper, RepRapFirmware, etc.) but more firmware complexity. - **Hybrid:** standalone mode writes tuned values to EEPROM; Marlin reads them on boot. ## Why it matters PID tuning is currently a manual, trial-and-error process that discourages new users. Automating it removes the most common setup friction point and is a meaningful differentiator over other Z-probe solutions. ## Notes - Marlin already has `M303` for hotend/bed PID autotune — the pattern exists, this would extend it to probe sensitivity tuning - Should work across AVR and ARM targets - Good candidate for a future paid firmware add-on if EasyPiezi ever moves to a tiered model
Sign in to join this conversation.
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: Circuit-Forge/easypiezi#2
No description provided.