Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

TurtleBot3 Home Service Challenge #206

Open
suyunas opened this issue Apr 24, 2021 · 8 comments
Open

TurtleBot3 Home Service Challenge #206

suyunas opened this issue Apr 24, 2021 · 8 comments

Comments

@suyunas
Copy link

suyunas commented Apr 24, 2021

Whilst doing the TurtleBot3 Home Service Challenge. https://emanual.robotis.com/docs/en/platform/turtlebot3/home_service_challenge/
@ 7.10.3.1.
I am having the following error:
Screenshot from 2021-04-24 08-38-20

Remote PC side:
#!/bin/bash
argc=$#
args=("$@")
if [ 0 -eq $argc ]
then
echo "need to argument that host ip for ssh connection"
echo "Usage: $0 [ip address] ..."
exit 1
fi
for((index = 0; index < $#; index++ ))
do
ssh-keygen -R ${args[$index]}
ssh-keyscan ${args[$index]} >> ~/.ssh/known_hosts
done

Turtlebot3 side:
#!/bin/bash
#check if other turtlebot3_core is already running
is_running=ps ax | grep turtlebot3_core
IFS=' ' read -ra is_runnings <<< "$is_running"
process_name=${is_runnings[4]}
if [ ${process_name} == "python" ]
then
echo "other turtlebot3_core is already running."
exit 1
fi

source /opt/ros/kinetic/setup.bash
source ~/catkin_ws/devel/setup.bash

ip_address=hostname -I
ip_address_trim=${ip_address%% * }
ip_address_no_space="$(echo -e "${ip_address_trim}" | tr -d '[:space:]')"
export ROS_HOSTNAME=${ip_address_no_space}

export TURTLEBOT3_MODEL=waffle_pi
exec "$@"

Somebody can help?

@ROBOTIS-Will
Copy link
Contributor

Have you run belows from your Remote PC?

$ chmod +x ~/tb3_ssh_keygen
$ ~/tb3_ssh_keygen 192.168.1.10

and the below from your Raspberry Pi on TurtleBot3?

$ chmod +x ~/env.bash

Did you get any warning or error messages when running the above?

@suyunas
Copy link
Author

suyunas commented Apr 26, 2021

Thank you for your response. Attached is the output window:
today

[Remote PC]
Upper left:
$ roscore

[Pi]
Upper right:
$ roslaunch turtlebot3_bringup turtlebot3_robot.launch

[Remote PC]
Middle left:
$ export TURTLEBOT3_MODEL=${TB3_MODEL}
$ roslaunch turtlebot3_manipulation_description turtlebot3_manipulation_view.launch use_gui:=true

[Remote PC]
Middle right:
$ nano ~/tb3_ssh_keygen
$ chmod +x ~/tb3_ssh_keygen
$ ~/tb3_ssh_keygen 192.168.43.191

[Pi]
Lower left:
$ nano ~/env.bash
$ chmod +x ~/env.bash

[Remote PC]
Lower right:
$ roslaunch turtlebot3_home_service_challenge_tools turtlebot3_pi_cam_remote.launch address:=192.168.43.220

@ROBOTIS-Will
Copy link
Contributor

ROBOTIS-Will commented Apr 27, 2021

When running the tb3_ssh_keygen command, you should use the IP address of TurtleBot3 SBC as below.

Also, you only need to run this command once as this will create the ssh key in your Remote PC.

[Remote PC]
Middle right:

$ nano ~/tb3_ssh_keygen
$ chmod +x ~/tb3_ssh_keygen
$ ~/tb3_ssh_keygen 192.168.43.220

@suyunas
Copy link
Author

suyunas commented Apr 27, 2021

Apologies in typing i put ~/tb3_ssh_keygen 192.168.43.191. However from the picture above it is clear that i have used ~/tb3_ssh_keygen 192.168.43.220. I have also tried by removing the ssh keys today:
Screenshot from 2021-04-27 12-15-01

@ROBOTIS-Will
Copy link
Contributor

ROBOTIS-Will commented Apr 29, 2021

@suyunas
I've tested with my Kinetic setup, but couldn't reproduce the issue.
Have you set the ROS_MASTER_URI and ROS_HOSTNAME for both Remote PC and Raspberry Pi?
https://emanual.robotis.com/docs/en/platform/turtlebot3/quick-start/#network-configuration

@suyunas
Copy link
Author

suyunas commented Apr 29, 2021

nano ~/.bashrc configurations for Remote PC:
alias eb='nano ~/.bashrc'
alias sb='source ~/.bashrc'
alias gs='git status'
alias gp='git pull'
alias cw='cd ~/catkin_ws'
alias cs='cd ~/catkin_ws/src'
alias cm='cd ~/catkin_ws && catkin_make'
source /opt/ros/kinetic/setup.bash
source ~/catkin_ws/devel/setup.bash
export ROS_MASTER_URI=http:https://192.168.43.191:11311
export ROS_HOSTNAME=192.168.43.191
export TURTLEBOT3_MODEL=waffle_pi

TB3:
alias gp='git pull'
alias cw='cd ~/catkin_ws'
alias cs='cd ~/catkin_ws/src'
alias cm='cd ~/catkin_ws && catkin_make'
source /opt/ros/kinetic/setup.bash
source ~/catkin_ws/devel/setup.bash
export ROS_MASTER_URI=http:https://192.168.43.191:11311
export ROS_HOSTNAME=192.168.43.220

  1. 'Be sure Remote PC and TurtleBot3 are connected under the same IP'. This statement is a bit confusing on Home Service Challenge. how can we keep IP same for two separate devices?

  2. Is there any recommended of OS like ubuntu 16/18/20 to run the Home service challenge example smoothly for both Remote PC and TB3?

@ROBOTIS-Will
Copy link
Contributor

@suyunas
Your network configuration looks correct.

'Be sure Remote PC and TurtleBot3 are connected under the same IP'. This statement is a bit confusing on Home Service Challenge. how can we keep IP same for two separate devices?

Sorry about the confusion. This means to configure your IP address in the same IP range, such as 192.168.43.xxx

TB3 HSC is currently supported with Kinetic which runs on Ubuntu 16.04 or the provided Raspbian OS image from us.

Please try below command and let me know. This will copy the SSH key to TurtleBot3 SBC.

$ ssh-copy-id [email protected]

@suyunas
Copy link
Author

suyunas commented Apr 30, 2021

can be seen in the middle right:
Screenshot from 2021-04-30 11-04-17

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants