WLR722 synchronized angular scans (seam)
Versions: DetourCore 1.7.38-seam, DetourDance 1.0.11-seam, DetourLite 0.3.51-seam, WLR722Plugin 1.0.6-seam, M2 LidarController 0.5.6-seam. Install the matching Detour host and plugin together. Keep only one plugin DLL.
startingOffsetis the raw increasing encoder frame boundary, before mirror and beam calibration. It is not a device motor-phase command or mounting yaw.- On TX, physically phase-locked sensors use front 0 / back 180 degrees and
usePtpFrames=false. The crossing block starts the next scan; discard startup partial revolutions. Angle mode now carries actual packet boundary timestamps and measured duration without altering point coordinates or sensor timestamps. usePtpFrames=trueinstead cuts common timestamp windows and ignores the angle. Neither setting proves hardware PTP lock.- Planar extraction retains each structural point's acquisition progression; lines spanning the temporal seam are rejected. Timestamp sidecars survive filtering and normalization without changing the RawLidar shared-memory ABI.
- AggregateLidar:
requireSynchronizedFrames=true,synchronizedToleranceMs=5,synchronizedWaitMs=120,allowPartial=false,correctionType="timed". Match acquisition starts within tolerance, never silently merge a neighboring scan, and drop unmatched windows rather than emitting partial scans. - Deskew transforms every merged point (including sensor mounting translation)
to the common frame-end pose using a constant SE(2) twist inferred by odometry.
showCorrectedCloud=truedisplays the actual computed deskewed cloud; false retains raw inspection. Status explicitly identifies the displayed path. - M2:
LidarController.init("WLR722", []), configure distinct ports,lidarIpandstartingOffset, thenStart(). Its legacy shared-memory output still lacks frame epochs. Do not claim this transport has Detour's timed deskew. WLR722Shared/*.cs is a byte-identical vendored copy, with WLR722_MEDULLA defined.
Real TX validation: 2026-09-24, 10.jimu-tech.vh.lessokaji.com, actual mainmap.2dlm, RunCar.py node 61 theta 0 then 180. Both controller tasks completed without errors. Ten moving sensor/map screenshot pairs include both rotation directions around 0.98 rad/s. Previously obvious wall duplication was not visible in inspected corrected views; small static map/calibration offsets remain. This is not a zero-error calibration claim. M2 was compiled, not separately hardware-validated. Evidence, original captures, hashes, configuration and logs are local under D:\ai-deck\reports\wlr722-deskew-20260924 (not public artifacts).