The PathPursuit Mobile Application, built with React Native, offers a multiplatform interface for robot interaction. It leverages the Robot Operating System (ROS) middleware and the RosBridge driver to establish a WebSocket connection. The app’s primary function is to provide a joystick control for the robot’s movement and enable autonomous navigation through waypoint settings, using the A* Path Planner and the Pure Pursuit Controller.
On the first screen , users connect to ROS using WebSocket by inputting the IP address of the network where their ROS system and PathPursuit app are operational. After the initial setup, users can adjust the robot’s linear and angular velocities and steer it using the joystick. The joystick operation sends speed commands to the robot through the ROS /cmd_vel topic.
On the second screen , users have the option to select a pre-saved waypoint for the robot to navigate towards or to record a new waypoint. The ROS /odom topic is employed to capture the robot’s odometry and save it as a waypoint if the user opts to record a new one. A custom ROS topic, /set_waypoint, is used to transmit the selected waypoint to the ROS system for navigation. The system processes the waypoint coordinates and employs the A* path planner and Pure Pursuit Controller to enable the robot’s autonomous navigation towards the waypoint.
The project was developed in conjunction with the Trajectory-Planning-and-Autonomous-Navigation-ROS projetc.




