Lidargh

Posted by Codepope's Development Hell on Saturday, April 8, 2023
Last Modified on Saturday, August 31, 2024

Get a Lidar they said, it’ll let your bot map the world. Well, maybe but this “cheap” Slamtec RPLidar A1 looks great on paper, but so far, its been pretty disappointing. The Lidar itself is a solid bit of hardware and it will look good once I’ve bolted it onto the Viam Rover. I’m lucky, really, to be following an already trodden path with existing 3d printable adapters to mount the Lidar on the Rover and existing components and software support.

That’s not the problem. The problem is the software supplied with the device, or more perched on Slamtec’s support site. There’s an SDK that advises you, if you are evaluating, to go use their RoboStudio software. Great, let’s do that and… oh Windows (and Android) only. Ok, let’s install that…

And after having to sign up for some cloud service for bot management I’d never use to use the software, there’s no mention of Lidar in the app. Despite there being docs that point to using the Lidar with that app, there’s nothing. No icon, no sidepanel, no error, no hint.

It took a while of digging around and I found Seeed Studio carried the Slamtec Lidar too. Looking down that page is a note…

Please download the offline version of RoboStudio while testing....

Oh. I download it and it’s the same software but now less the cloud login and now there’s a Lidar entry. I can only presume that the cloud login also controls what options are presented to the user (which sucks, especially when done silently). The offline version doesn’t have that block. And now I can…

Ah, no device showing in the Lidar panel. And useful error messages there were none of.

It is here, reader, that I went off and downloaded the SDK and some other libraries for using the Lidar and did validate it worked, if only for it to sit there generating frame data without interpreting it. I’m not going to complain about the faffing around that comes with the SDK - that is par for the course when it comes to SDKs… “Find that particular tool chain, take a particular stance, don’t build that, make that and….”. Oh, and for the curious, there’s no super magic stuff in the driver. The Lidar connects over an CP2102 USB/Serial interface and is just a binary formatted stream of data.

Anyway, having got a confirmation that there’s life with the SDK code, I’m going to carry on installing it on the rover and see where we get. I will return…