I am trying to implement SLAM and robot localization for my ROV - remotely operated underwater vehicle- without using lidar. nor wheel encoders since the rov's movement uses T200 thrusters and not wheel encoders- it is not a differential robot. however all implementations i have found are using Lidar primarily and wheel encoders (and IMU sensor).is what i am trying to do possible? if so, how should i change slam to work with imu and any other needed sensor that is not a lidar, using the nav2 stack and if needed the robot localization package. any references to someone who has done the same would be welcome.

  • $\begingroup$ I have to ask...SLAM means map building. What sensor are you going to use to sense the environment and build your map? You don't need lidar but you need something...sonar? ...radar? $\endgroup$
    – billy
    Commented Oct 11, 2023 at 3:35
  • $\begingroup$ would a gps work? or a camera? i'm welcome to suggestions with both variations $\endgroup$
    – quark epsi
    Commented Oct 11, 2023 at 14:14
  • 2
    $\begingroup$ Let's start from the beginning. What is it you want to do? Explain it without using the terms SLAM or localization... $\endgroup$
    – billy
    Commented Oct 12, 2023 at 2:49
  • $\begingroup$ What you're looking for here is a field in of itself: take a look at 'underwater SLAM' and you'll find plenty of papers which may have implementations. While it's certainly possible to do this in ROS 2, it's not a part of the core, standard-maintained functionality in the ecosystem. $\endgroup$
    – cst0
    Commented Oct 12, 2023 at 14:53

2 Answers 2


You will need to provide your own specialized localization solution since you don't have any of the necessary requirements for 2D or 3D lidar SLAM. There are VSLAMs you might want to check out, but I don't know the particulars of your robot or underwater robotics environments that you're in to know if those are any more viable.

You obviously need to pick the right localization technique for your environment / robot sensor modalities.


Hello I am a ROS enthusiast myself and I dont know if what I am suggesting would work but you can give it a try.

  1. Yes it is possible to use SLAM without LiDAR. You need a two sensors one t check the distance of statics in the environment and robots movement to or away from it and another internal sensor which tells you how much your robot has travelled. Fuse these data together and you have your own SLAM.
  2. Sensors for underwater like Sonar or radar would work.
  3. Localisation is just how your robot understands where it is given a little prior knowledge of the map. (or Environment)

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.