how can I use an SSH-Client for SSH Connections for Nav2?
Good morning, my plan is to implement an agent system on the Turtlebots. Unfortunately, I had to accommodate the navigation externally via Nav2, because I couldn’t get Nav2 to run on the bot.
Now I need an SSH connection from my PC to the bot. But this has to be created by the navigation program (with Python). I created an SSH client with paramiko first and established the connection via bash scripts (once via subprocess and via os.system) as second attempt.
The connection was established and the bringup could be started successfully.
The problem is that ROS programs like Teleop and Cartographer could not connect to the bot, even though there was an SSH connection and the bringup was successful.
both ROS systems run on TURTLEBOT3_MODEL=burger and the same ID in the same network.
a connection “by hand” i.e. via “ssh ubuntu@IP” and then
“export TURTLEBOT3_MODEL=burger”
“ros2 launch turtlebot3_bringup robot.launch.py” is working.
Does anyone know how Nav2, or ROS in general, detects the SSH connection, or how I can get the navigation to run using my own SSH client?
Do I have a typical Ubuntu rights problem here that nav2 has no rights for the SSH client?
Edit: i notice today, that the "by Hand" connection is a ubuntu@ubuntu-Terminal, but the terminal with the python code, or bash file is still a uik@uik-Terminal (see picture)
description: ROS works only if i run the bringup "by hand" at the upper Terminal (ubuntu@ubuntu) the bottom Terminal has a running SSH (sshpass) and a running bringup, but ROS (teleop, cartographer) diddnt work