#tether #agent #messaging #scanning #rplidar #cli #python

app tether-rplidar

RPLIDAR scanning over Tether messaging

4 releases

0.7.3 Jan 13, 2025
0.7.2 Dec 23, 2024
0.7.1 Dec 23, 2024
0.7.0 Dec 23, 2024

#322 in Hardware support

Download history 176/week @ 2024-12-17 143/week @ 2024-12-24 58/week @ 2025-01-07 46/week @ 2025-01-14 3/week @ 2025-01-21

107 downloads per month

MIT license

25KB
290 lines

Tether RP Lidar Agent

This is a Rust-only version of the Tether RP Lidar Agent which was written in Python (and depended on a Python library).

Compiling

On Linux, you may need to install libudev:

sudo apt install libudev-dev

CLI launch options

You can run --help to get a list of available options and defaults.

For example, to connect an RP Lidar A3, you could run a command like:

tether-rplidar-rs --baud 256000 --serialport /dev/tty.usbserial-0001

Or use the recommended settings for the A1 model, which uses a different baud rate and works best in "Standard" Mode:

tether-rplidar-rs --baud 115200 --serialport /dev/tty.usbserial-0001 --scanMode 0

Data format and units

v0.3+ fixes a major bug where angles were in radians (now converted to degrees) and distances were in metres (now converted to mm).

Samples are now filtered out prior to publishing if any are marked not valid by the library. This reduces message size and should improve performance overall.

You can optionally disable conversions and/or filtering using --noconvert.degrees, --noconvert.mm and --nofilter.

This agent always sends scan messages as arrays of samples, each sample being an array exactly 2x f32 elements long with angle (in degrees) followed by distance (in millimetres).

Dependencies

~13–26MB
~388K SLoC