80ef92ba01
Tuning the velocity covariance floors and the zero-velocity veto threshold needs the receiver's velocity noise, which cannot be recovered from the existing records: the raw observation and the filter state were logged in different lines at different rates, so they could not be differenced. Hold the converted ENU Doppler velocity from the last fix and publish it alongside the filter state in one line at one instant, with their difference (the velocity innovation) and the at-rest flag. With the platform still, the raw reading is the noise itself. An IMU does not measure speed; the eskf_* fields are the integrated result after GNSS correction, and are the only inertial speed available. First capture, stationary: per-axis sigma 0.12 E, 0.25 N, 0.59 U m/s. The vertical channel carries most of it, which the previous scalar speed field could not show. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>