What problem does it solve? Motor auto-home sequences in HT9045 firmware fail with 30-second timeouts or stuck HomeFlag states when code calls Home() instead of MotorHome(false), leaving axes unhomed and blocking downstream motion tasks. ## Core Features & Use Cases - HomeFlag State Machine Reference: Documents the 0/1/2 semantics of MOT[i].HomeFlag and the correct checks for in-progress, success, and failure states. - Standard Auto-Home Flow: Provides the canonical ENTRY_TASK / AUTO_HOME_WAIT / AUTO_HOME_RUN state pattern with sensor sanity checks, 30s timeout, and error reporting. - Anti-Pattern Catalog: Lists common mistakes such as calling Home() without updating HomeFlag, treating HomeFlag==2 as success, and restoring speed from GetSpeed() which returns RPM rather than a percentage. - HomeClass Batch Homing: Explains THomeClass registration, FIRST/SECOND/THREE_HOME ordering, and index alignment with MOT[] for multi-axis homing. - Use Case: When an MLoaderY axis times out during auto-home in cTrayMapping case 10/15/20, use this Skill to rewrite the sequence to call MotorHome(false) and check HomeFlag==1 for completion. ## Quick Start Ask the assistant to review the auto-home code for the MLoaderY axis and fix the 30-second timeout using the standard MotorHome pattern.