RPLidar Simulator
A 2D RPLidar A2M8 simulator with a paint-as-you-go world editor. Drag the lidar, draw walls and boxes, and it streams 360° scans over TCP in the same wire format a real A2M8 driver expects.
This started as a scan-matching algorithm for a robotics class, written before the lidar arrived. Replaying the same recorded bag file over and over was not enough: every tweak to the algorithm wanted a fresh scan against a slightly different scene, and there was no way to get one. So the scene became editable instead, and the arena learned to speak the A2M8 protocol.



The repo documents the rest: what a single reading contains, the frame header and sample bitfields, and a complete reference client for plugging the simulator into a SLAM or scan-matching pipeline.