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

use pepper.rosinstall for development environment setup #1124

Open
wants to merge 6 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
63 changes: 3 additions & 60 deletions jsk_naoqi_robot/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -104,23 +104,12 @@ sudo apt-get install ros-kinetic-pepper-meshes
sudo apt-get install ros-kinetic-nao-meshes
```

If you have ROS kinetic, please use [naoqi_dashboard (kochigami-develop)](https://github.com/kochigami/naoqi_dashboard/tree/kochigami-develop).
This includes [Important PR](https://github.com/ros-naoqi/naoqi_dashboard/pull/3) for ROS kinetic.

```
cd catkin_ws/src
wstool set naoqi_dashboard --git https://github.com/ros-naoqi/naoqi_dashboard
wstool update naoqi_dashboard
cd naoqi_dashboard
git remote add kochigami https://github.com/kochigami/naoqi_dashboard.git
git fetch kochigami
git checkout -b modify-for-kinetic kochigami/kochigami-develop
```
Note that `pepper.rosinstall` includes necessary patches for ROS kinetic, such as [naoqi_dashboard (kochigami-develop)](https://github.com/kochigami/naoqi_dashboard/tree/kochigami-develop).

Finally, please compile them.

```
catkin build --continue-on-failure
catkin build peppereus
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think catkin build naoqi_driver is also required because this package is based on roscpp.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think peppereus depends on pepper_bringup and pepper_bringup depends on naoqi_driver. Please double check

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

catkin b jsk_pepper_startup seems to be also required.
(catkin b jsk_pepper(nao)_startup and catkin b pepper(nao)eus)

Should I add pepper(nao)eus dependency to jsk_pepper(nao)_startup?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In addition, I thought .rosinstall file name can be naoqi.rosinstall or something because this environment setup is also for NAO.

Copy link
Member Author

@k-okada k-okada Nov 1, 2019

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should I add pepper(nao)eus dependency to jsk_pepper(nao)_startup?

if pepepreus itself depends on jsk_pepper_startup we need this. I'am not sure, but in my understanding, suppose we program pepper with groups, like 少人数ゼミ.Someone need to run jsk_pepper_startup to bringup necessary ROS nodes for pepper, and others who just use peppereus does not need to use `jsk_pepper_startup, just to update the document

catkin b peppereus jsk_pepper_startup

would be ok

naoqi.rosinstall

that's good idea. can you create PR against k-okada:rosinstall?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I sent a PR (k-okada#3). Could you please check this?

source devel/setup.bash
```

Expand All @@ -129,56 +118,10 @@ source devel/setup.bash

4. (optional) For NAO and Pepper developers

Please add following source codes which you need for debugging.

```
cd catkin_ws/src
wstool set nao_robot --git https://github.com/ros-naoqi/nao_robot
wstool set pepper_robot --git https://github.com/ros-naoqi/pepper_robot
wstool set naoqi_driver --git https://github.com/ros-naoqi/naoqi_driver
wstool set naoqi_bridge --git https://github.com/ros-naoqi/naoqi_bridge
wstool set naoqi_bridge_msgs --git https://github.com/ros-naoqi/naoqi_bridge_msgs
wstool set naoqi_dashboard --git https://github.com/ros-naoqi/naoqi_dashboard
```

## Interface when controlling NAO and Pepper via roseus

Common methods for NAO and Pepper are defined in `naoqieus/naoqi-interface.l`. NAO-specific methods are defined in `naoeus/nao-interface.l`. Pepper-specific methods are defined in `peppereus/pepper-interface.l`. For further details about each method, please refer to [**_naoqieus_**](naoqieus/README.md), [**_naoeus_**](naoeus/README.md), and [**_peppereus_**](peppereus/README.md) respectively.
For some methods, they require specific branch (kochigami-develop) because they are not merged into master. If you need this, please change your branch of `naoqi_driver`, `naoqi_bridge` and `naoqi_bridge_msgs` as follows:

```
cd catkin_ws/src
wstool set naoqi_driver --git https://github.com/ros-naoqi/naoqi_driver
wstool update naoqi_driver
cd naoqi_driver
git remote add kochigami https://github.com/kochigami/naoqi_driver.git
git fetch kochigami
git checkout -b kochigami-develop kochigami/kochigami-develop

cd .. # catkin_ws/src
wstool set naoqi_bridge --git https://github.com/ros-naoqi/naoqi_bridge
wstool update naoqi_bridge
cd naoqi_bridge
git remote add kochigami https://github.com/kochigami/naoqi_bridge.git
git fetch kochigami
git checkout -b kochigami-develop kochigami/kochigami-develop

cd .. # catkin_ws/src
wstool set naoqi_bridge_msgs --git https://github.com/ros-naoqi/naoqi_bridge_msgs
wstool update naoqi_bridge_msgs
cd naoqi_bridge_msgs
git remote add kochigami https://github.com/kochigami/naoqi_bridge_msgs.git
git fetch kochigami
git checkout -b kochigami-develop kochigami/kochigami-develop
```

In addition, if you have ROS kinetic, please fetch the source of `nao_interaction` (master branch) for the time being ([related issue](https://github.com/ros-naoqi/nao_interaction/issues/12)).

```
cd .. # catkin_ws/src
wstool set nao_interaction --git https://github.com/ros-naoqi/nao_interaction
wstool update nao_interaction
```
For some methods, they require specific branch (kochigami-develop) because they are not merged into master. [pepper.rosinstall](https://raw.githubusercontent.com/jsk-ros-pkg/jsk_robot/master/jsk_naoqi_robot/pepper.rosinstall) file includes this branch for `naoqi_driver`, `naoqi_bridge` and `naoqi_bridge_msgs` repositories.

## NAO & Pepper

Expand Down
37 changes: 37 additions & 0 deletions jsk_naoqi_robot/pepper.rosinstall
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,41 @@
local-name: jsk_robot
uri: https://github.com/jsk-ros-pkg/jsk_robot.git
version: master
# fix qt> 5 (https://github.com/ros-naoqi/naoqi_dashboard/pull/3)
- git:
local-name: naoqi_dashboard
uri: https://github.com/kochigami/naoqi_dashboard
version: kochigami-develop
# wait for 0.5.16 release
- git:
local-name: nao_robot
uri: https://github.com/ros-naoqi/nao_robot
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In fact, I also use kochigami-develop for nao_robot package.
I'll consider whether we really need kochigami-develop or not.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

# wait for 0.1.11
- git:
local-name: pepper_robot
uri: https://github.com/ros-naoqi/pepper_robot
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In fact, I also use kochigami-develop for pepper_robot package.
I'll consider whether we really need kochigami-develop or not.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The difference is ros-naoqi/pepper_robot@master...kochigami:kochigami-develop

 +   <arg name="boot_config_file_name" value="$(arg boot_config_file_name)" />

And this is default behavior of naoqi_driver.launch
https://github.com/kochigami/naoqi_driver/blob/kochigami-develop/launch/naoqi_driver.launch

# add service to get/set volumes (https://github.com/ros-naoqi/naoqi_driver/pull/110)
# add play audio file service (https://github.com/ros-naoqi/naoqi_driver/pull/109)
# add fading/resetting leds services (https://github.com/ros-naoqi/naoqi_driver/pull/100)
# [ALChestButton] add chest button topic (pressed or not) (https://github.com/ros-naoqi/naoqi_driver/pull/99)
# for more info https://github.com/kochigami/naoqi_driver/issues/2
- git:
local-name: naoqi_driver
uri: https://github.com/kochigami/naoqi_driver
version: kochigami-develop
# add many nodes..... wait for 0.5.6
- git:
local-name: naoqi_bridge
uri: https://github.com/kochigami/naoqi_bridge
version: kochigami-develop
# add fade leds srv (https://github.com/ros-naoqi/naoqi_bridge_msgs/pull/41)
# [ALChestButton] add msg for ChestButtonPressed (https://github.com/ros-naoqi/naoqi_bridge_msgs/pull/40)
Copy link
Contributor

@kochigami kochigami Sep 11, 2019

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

below "[ALChestButton] ..." this should be added:
# add many msgs and srvs

- git:
local-name: naoqi_bridge_msgs
uri: https://github.com/kochigami/naoqi_bridge_msgs
version: kochigami-develop
# wait for 0.1.6 (https://github.com/ros-naoqi/nao_interaction/issues/12)
- git:
local-name: nao_interaction
uri: https://github.com/ros-naoqi/nao_interaction