board: MKS DLC32 (Single Axis)
name: LO-TTA-03
stepping:
  engine: I2S_STATIC
  idle_ms: 255
  pulse_us: 4
  dir_delay_us: 0
  disable_delay_us: 0
  segments: 12

axes:
  shared_stepper_disable_pin: i2so.0
  shared_stepper_reset_pin: NO_PIN
  x:
    steps_per_mm: 3200
    # ★ 900 mm/min = **15 mm/s = 15 转/s = 900 RPM**（导程 1mm ⇒ 1 rev/s = 1 mm/s）。
    #   —— 与平台侧「位置模式时的最大速度」maxValue = **15**(mm/s) 精确对齐（15 × 60 = 900）。
    #   【上限依据】SERVO42C 手册**脉冲口上限 60 kHz** ÷ 3200 步/mm = 18.75 mm/s = 1125 mm/min
    #     ⇒ MStep=16 下的**物理天花板 = 1125 mm/min**（DLC32 的 I2S 上限 125 kHz 不是瓶颈；
    #       pulse_us:4 ⇒ 4µs高+4µs低=8µs=125kHz 自洽）。
    #     本值 900 = 48 kHz ≈ **80%**，留 20% 余量。
    #     ★ **不要设 >1125**：DLC32 会真发 100+ kHz、42C 收不全 ⇒ 丢步 / 闭环下 err 飙 17.99。
    #   ★ 商家说的 2000 RPM = 33.3 mm/s 需 106.7 kHz，**超 60 kHz 近一倍 ⇒ 做不到**。
    #     真要 2000 RPM 只能把 42C 的 MStep 16→4（⇒ 本文件 steps_per_mm 改 800）+ 重做空载 CAL。
    #   ★ 第二道门槛是**加速度**（见下一条）：v_peak = √(Acc × 行程)，
    #     Acc 平台上限 15 ⇒ **要真正跑到 15 mm/s 至少需要 15mm 行程**，短行程到不了。
    #   沿革：60(=1mm/s，会把一切都钳到 1) → 600(=10mm/s) → 1000 → **900（本次）**。
    max_rate_mm_per_min: 900.0
    # ⚠ 这个值只是"上电初值"，**永远不影响实际运动**：
    #   DLL 每次下发运动前都执行 $axes/X/acceleration_mm_per_sec2=<平台「加减速度」>，
    #   覆盖它（FluidNCDeviceOperator.cpp:309-311）。
    #   ⇒ 想改加速度要改**平台侧**，且看该指令的 ishide：
    #     · ishide=0（如「相对定位运动（自定义参数）」）→ 改**指令面板里的「加减速度」输入框**
    #     · ishide=1（如「相对定位运动（默认参数）」/回零/预设）→ 改**全局参数区「加减速度」**
    #     两处上限都是 15 mm/s²。改本文件 100% 无效。
    acceleration_mm_per_sec2: 100.0
    max_travel_mm: 1000.0
    soft_limits: false
    motor0:
      stepstick:
        step_pin: i2so.1
        direction_pin: i2so.2
start:
  must_home: false
  check_limits: true
arc_tolerance_mm: 0.002
junction_deviation_mm: 0.01
verbose_errors: true
report_inches: false
use_line_numbers: false
planner_blocks: 16

i2so:
  bck_pin: gpio.16
  data_pin: gpio.21
  ws_pin: gpio.17
