diff --git a/docs/integrations/lidars/slamtec-rplidar-s3.mdx b/docs/integrations/lidars/slamtec-rplidar-s3.mdx
index 2f975b2b..a4c771e0 100644
--- a/docs/integrations/lidars/slamtec-rplidar-s3.mdx
+++ b/docs/integrations/lidars/slamtec-rplidar-s3.mdx
@@ -13,27 +13,19 @@ keywords:
description: >-
Learn how to connect an RPLiDAR S3 sensor to your Leo Rover for 2D mapping and
more. Detailed tutorial mechanical and software integration.
+# TODO: Replace with a proper image of Leo Rover with mounted RPLIDAR S3
image: /img/robots/leo/integrations/rplidar-s3/rplidar-s3.webp
---
-# SLAMTEC RPLIDAR S3 Integration
-
-import Product from '@site/src/products/powerbox.mdx';
+import Product from '@site/src/products/slamtec-rplidar-s3.mdx';
+import Powerbox from '@site/src/products/powerbox.mdx';
import LiteYouTubeEmbed from 'react-lite-youtube-embed';
-This tutorial will guide you through the process of connecting a LiDAR sensor to
-your Leo Rover.
-
-Light Detection and Ranging devices, or lidars for short, are mechanisms used
-for mapping the environment, object detection, tracking the speed of vehicles
-and in a wide range of other applications. In robotics 2D lidars, like A2M8 /
-A2M12, are used for things such as indoor SLAM
-([Simultaneous localization and mapping](https://en.wikipedia.org/wiki/Simultaneous_localization_and_mapping))
-or safety systems.
-
+{/* TODO: Replace with a proper image of Leo Rover with mounted RPLIDAR S3 */}
+# SLAMTEC RPLIDAR S3 Integration
+
+This tutorial will guide you through the process of connecting a LiDAR sensor to
+your Leo Rover.
+
+Light Detection and Ranging devices, or lidars for short, are mechanisms used
+for mapping the environment, object detection, tracking the speed of vehicles
+and in a wide range of other applications. In robotics 2D lidars, like A2M8 /
+A2M12, are used for things such as indoor SLAM
+([Simultaneous localization and mapping](https://en.wikipedia.org/wiki/Simultaneous_localization_and_mapping))
+or safety systems.
+
## What to expect?
After finishing the tutorial you should be able to both gather the lidar data
@@ -49,15 +53,23 @@ and visualize it using RViz. Just like in the image below:
+The robot will publish
+[LaserScan messages](https://docs.ros2.org/latest/api/sensor_msgs/msg/LaserScan.html)
+on the `/scan` topic.
+
## Prerequisites
+Below is the list of all necessary tutorials and hardware components required to
+complete the integration.
+
@@ -68,35 +80,71 @@ and visualize it using RViz. Just like in the image below:
additional functionalities, building ROS packages and more."
/>
-## List of components
+### Referenced products
+
+
+
+## Hardware integration
+
+### Mounting
+
+If you bought the integration kit, you can use the mounting adapter included in
+the kit. It is designed to mount the sensor on top of the rover's mounting plate,
+providing a wide field of view with minimal obstructions.
+
+Required components:
- RPLidar S3
-- RPLidar S3 adapter plate (can be found here:
- [Addon adapters](../addon-adapters#rplidar-s3-adapter))
-- M5x10 Allen head screw x4
-- M2.5x6 Allen head screw x4
+- RPLidar S3 adapter plate (included in the integration kit)
+- M5x10 Allen head screws x4
+- M2.5x6 Allen head screws x4
-## Mechanical integration
+To mount the sensor:
-We developed 3D printable models of mechanical interfaces that allow you to
-mount the aforementioned sensor to the mounting plate of the rover. Locating the
-sensor at the top of the robot provides a wide field of view with not many
-obstacles for the laser beam to get caught on. Get the files from here:
-[Addon Adapters](../addon-adapters/).
+1. Align the RPLIDAR S3 with the adapter plate and secure it using 4 x M2.5x6
+ Allen head screws — one in each corner of the sensor base.
+2. Place the assembled sensor on the top of the Leo Rover's mounting plate.
+3. Fasten the adapter plate to the rover using 4 x M5x10 Allen head screws.
-- With 4 x M2.5x6 Allen screws, connect the sensor to the printed interface
- plate.
-- Use 4 x M5x10 Allen screws to fasten the sensor to the Leo Rover.
+:::tip
+
+If you don't have the integration kit, you can also 3D print the adapter plate
+yourself. Get the files from the [Addon Adapters](../addon-adapters#rplidar-s3-adapter) page.
+
+:::
+
+:::note
+
+The URDF model provided in this guide assumes the sensor is mounted using our
+adapter plate in the default position on top of the rover. If you mount the
+sensor in a different position, you will need to adjust the origin values in the
+URDF file accordingly so that the sensor is correctly positioned in the robot
+model.
+
+:::
-## Wiring and electronics connection
+:::info
+
+When positioning the sensor, make sure the laser beam's 360° field of view is
+not obstructed by cables, antennas, or other parts of the rover.
+
+:::
-The sensor can be connected to the robot's main computer via the USB socket
-positioned at the top of the rover. If your USB cable is long it might get into
-lidars field of view if it sticks up too much. try to hide it in the empty space
-inside Leo Rovers back frame. Just like on the photo below:
+### Wiring
+
+The RPLIDAR S3 uses a TTL interface and comes with a TTL-to-USB adapter. To
+connect it to Leo Rover 1.9, use the following chain:
+
+1. Plug the TTL cable from the sensor into the **TTL-to-USB adapter** (included
+ with the lidar).
+2. Connect the **micro USB to USB-A cable** (included with the lidar) to the
+ micro USB port on the adapter.
+3. Use the **USB-A to USB-C adapter** (included with Leo Rover) to connect the
+ cable to the **USB-C port** on top of the rover.
-:::info
-
-When mounting the sensor, you should be particularly careful not to obstruct the
-field of view by other parts of the Rover.
+If the cable is long, try to tuck it into the empty space inside Leo Rover's
+back frame to keep it away from the lidar's field of view.
-:::
-
-USB connection provides power to the sensor and allows the data transfer. This
-means that no external power sources are necessary. Some lidars might need
-external power connections, that's when [Powerbox](/leo-rover/addons/powerbox)
-might come in handy.
+This connection provides both power and data transfer to the sensor, so no
+external power source is necessary. However, if you want a cleaner and more
+reliable connection, we recommend using the Powerbox addon:
-
+
With everything connected, you are ready to try out your new sensor.
@@ -169,6 +212,14 @@ In `/etc/ros/robot.launch.xml`:
```
+The last step is to either reboot the robot or restart the nodes.
+
+```bash
+ros-nodes-restart
+```
+
+### Modifying the URDF model
+
Your robot should be aware of where the sensor is located and what space it
occupies. You can ensure it does that by creating a URDF model of the sensor.
@@ -241,7 +292,7 @@ occupies. You can ensure it does that by creating a URDF model of the sensor.
```
-And including it in the description that is uploaded at boot.
+And include it in the description that is uploaded at boot.
```xml title="/etc/ros/urdf/robot.urdf.xacro"
@@ -255,13 +306,7 @@ STL or COLLADA format.
:::
-The last step is to either reboot the robot or restart the nodes.
-
-```bash
-ros-nodes-restart
-```
-
-## Examples
+## Example usage
### Reading and visualizing the data
@@ -308,6 +353,7 @@ topic. Choose the **LaserScan** display and click **Ok**.
@@ -322,6 +368,7 @@ which you can use to change the displayed laser.
@@ -336,6 +383,7 @@ display.
@@ -344,6 +392,7 @@ Be sure to select `/camera/image_color` as the Image Topic.
@@ -360,13 +409,13 @@ Here's an example end result:
/>
-## What next?
+## What's next?
Lidars are commonly used in projects involving
[autonomous navigation](/leo-rover/advanced-guides/autonomous-navigation), you
might be interested in a tutorial about it.
-They are however, not the only way of teaching a Leo Rover how to move on it's
+They are however, not the only way of teaching a Leo Rover how to move on its
own. Check out our [line follower](/leo-rover/1.8/leo-examples/line-follower)
tutorial if you want to learn more. You can also check our
[Integrations page](/integrations) for more instructions.
diff --git a/src/products/slamtec-rplidar-s3.mdx b/src/products/slamtec-rplidar-s3.mdx
new file mode 100644
index 00000000..75b077df
--- /dev/null
+++ b/src/products/slamtec-rplidar-s3.mdx
@@ -0,0 +1,11 @@
+import ProductPreview from '@site/src/components/ProductPreview';
+
+{/* TODO: Replace imageSrc with a proper product image when available */}
+