nao_bringup: naoqi_driver has died!

740 views
Skip to first unread message

Steve Karpik

unread,
Aug 18, 2015, 8:41:35 PM8/18/15
to ROS Sig Aldebaran
Hello,

I am in the process of trying to find myself around ROS for the NAO and have run into some trouble.

To make things simple for myself initially I started with an Indigo/Trusty VM created by nootrix.com. I took the NAOqi SDKs from Aldebaran:

naoqi-sdk-2.1.3.3-linux64 and pynaoqi-python2.7-2.1.3.3-linux64

The environment variables were set to:

$ echo $PYTHONPATH
/home/viki/naoqi/pynaoqi-python2.7-2.1.3.3-linux64:/opt/ros/indigo/lib/python2.7/dist-packages

$ echo $ROS_PACKAGE_PATH
/opt/ros/indigo/share:/opt/ros/indigo/stacks

I installed the ROS-NAO drivers using apt-get:

sudo apt-get install ros-.*-nao-robot
sudo apt-get install ros-.*-nao-extras
sudo apt-get install ros-.*-naoqi-bridge

(the last step may have been redundant, I'm not sure about that)

I verified that both ROS and naoqi were working OK (ran some hello world programs).

To run nao_bringup, I followed these steps:

1) In one terminal window, I ran roscore. It seemed to start OK (I'm pasting some output from it below).

2) In another terminal window, I ran naoqi with the command: ~/naoqi/naoqi-sdk-2.1.3.3-linux64/naoqi It seemed to start OK (see output below).

3) Finally I ran nao_bringup and something went wrong. I got some warning errors (perhaps significant, perhaps not) but then things go downhill quickly (please see output just below). Clearly I am doing something wrong but I have no idea what. All suggestions and insights are greatly appreciated. Thanks.

-------------

nao_bringup start-up procedure and output

I started nao_bringup with:

roslaunch nao_bringup nao_full.launch nao_ip:=127.0.0.1 roscore_ip:=127.0.0.1

started roslaunch server http://c3po:58618/

SUMMARY
========

PARAMETERS
 * /pose_manager/poses/init/joint_names: ['Body']
 * /pose_manager/poses/init/positions: [0.0, 0.0, 1.39, ...
 * /pose_manager/poses/init/time_from_start: 1.5
 * /pose_manager/poses/zero/joint_names: ['Body']
 * /pose_manager/poses/zero/positions: [0.0, 0.0, 0.0, 0...
 * /pose_manager/poses/zero/time_from_start: 1.5
 * /pose_manager/xap: /opt/ros/indigo/s...
 * /rosdistro: indigo
 * /rosversion: 1.11.8

NODES
  /
    naoqi_driver (naoqi_driver/alrosbridge_bin)
    pose_controller (naoqi_pose/pose_controller.py)
    pose_manager (naoqi_pose/pose_manager.py)

ROS_MASTER_URI=http://localhost:11311

core service [/rosout] found
process[naoqi_driver-1]: started with pid [8310]
going to add: /opt/ros/indigo
[W] 8310 qi.path.sdklayout: No Application was created, trying to deduce paths
process[pose_controller-2]: started with pid [8316]
[W] 8310 qimessaging.remoteobject: Return signature might be incorrect depending on the value, from m to s
terminate called after throwing an instance of 'qi::FutureUserException'
  what():   ALMemory::getData
Data not found RobotConfig/Body/Type
process[pose_manager-3]: started with pid [8318]
[INFO] [WallTime: 1439941200.474267] Connecting to NaoQi at 127.0.0.1:9559
[I] 8316 qimessaging.session: Session listener created on tcp://0.0.0.0:0
[I] 8316 qimessaging.transportserver: TransportServer will listen on: tcp://192.168.140.129:52689
[I] 8316 qimessaging.transportserver: TransportServer will listen on: tcp://127.0.0.1:52689
[INFO] [WallTime: 1439941200.637449] nao_controller initialized
[INFO] [WallTime: 1439941200.637688] nao pose_controller running...
================================================================================REQUIRED process [naoqi_driver-1] has died!
process has died [pid 8310, exit code -6, cmd /opt/ros/indigo/lib/naoqi_driver/alrosbridge_bin --qi-url=tcp://127.0.0.1:9559 127.0.0.1 eth0 __name:=naoqi_driver __log:=/home/viki/.ros/log/01152492-4601-11e5-ab55-000c29113e6d/naoqi_driver-1.log].
log file: /home/viki/.ros/log/01152492-4601-11e5-ab55-000c29113e6d/naoqi_driver-1*.log
Initiating shutdown!
================================================================================
[pose_manager-3] killing on exit

(other shutdown messages follow but are omitted here)



=============================================================

Output from roscore and naoqi

-------------------------


Output from roscore

started roslaunch server http://c3po:34955/
ros_comm version 1.11.8


SUMMARY
========

PARAMETERS
 * /rosdistro: indigo
 * /rosversion: 1.11.8

NODES

auto-starting new master
process[master]: started with pid [7562]
ROS_MASTER_URI=http://c3po:11311/

setting /run_id to 01152492-4601-11e5-ab55-000c29113e6d
process[rosout-1]: started with pid [7575]
started core service [/rosout]

------------------------

Output from naoqi (only showing the last few lines)

I started naoqi by executing:

~/naoqi/naoqi-sdk-2.1.3.3-linux64/naoqi

7870 Dialog.preference: Smalldisplacement enabled
[I] 7870 Dialog.preference: Breath enabled
[I] 7870 Dialog.preference: No animated speech configuration
[I] 7870 Dialog.preference: Default volume 0
[I] 7870 qimessaging.servicedirectory: Registered Service "ALDialog" (#77)
[I] 7870 core.naoqi: NAOqi is ready...



Karsten K

unread,
Aug 19, 2015, 4:12:21 AM8/19/15
to ros-sig-...@googlegroups.com
Hi Steve,

the way you launch the bridge looks basically fine. However, starting a 'virtual' naoqi as you did in you step 2) does not provide all ALMemory keys, e.g. the one which fails for you  RobotConfig/Body/Type.
That being said, starting the virtual naoqi wouldn't bring you much data anyways since no images are provided, no jointstates etc.

In case you have a physical NAO with you, try to launch the bridge towards the real NAO and you should not encounter any issues.

sorry in case that answer might not really help you :(

--
You received this message because you are subscribed to the Google Groups "ROS Sig Aldebaran" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ros-sig-aldeba...@googlegroups.com.
To post to this group, send email to ros-sig-...@googlegroups.com.
Visit this group at http://groups.google.com/group/ros-sig-aldebaran.
To view this discussion on the web visit https://groups.google.com/d/msgid/ros-sig-aldebaran/07a14b92-af20-4aab-b926-948fb12193b9%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Steve Karpik

unread,
Aug 20, 2015, 1:53:04 AM8/20/15
to ROS Sig Aldebaran
Hi Karsten,

Thanks for your prompt reply. What you said makes sense and fortunately I have a NAO. Unfortunately, however, it did not go so well. I got some sort of error referring to memory corruption:

*** Error in `/opt/ros/indigo/lib/naoqi_driver/alrosbridge_bin': malloc(): memory corruption: 0x000000000105ea90 ***

The address of the ROS server is: 192.168.1.22
The address of the NAO robot is:   192.168.1.16

Here in detail is what I did and what happened:

viki@c3po:~$ roslaunch nao_bringup nao_full.launch nao_ip:=192.168.1.16 roscore_ip:=192.168.1.22
... logging to /home/viki/.ros/log/afe1e282-46fe-11e5-8e74-000c29113e6d/roslaunch-c3po-3035.log
Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.

started roslaunch server http://c3po:51685/

SUMMARY
========

PARAMETERS
 * /pose_manager/poses/init/joint_names: ['Body']
 * /pose_manager/poses/init/positions: [0.0, 0.0, 1.39, ...
 * /pose_manager/poses/init/time_from_start: 1.5
 * /pose_manager/poses/zero/joint_names: ['Body']
 * /pose_manager/poses/zero/positions: [0.0, 0.0, 0.0, 0...
 * /pose_manager/poses/zero/time_from_start: 1.5
 * /pose_manager/xap: /opt/ros/indigo/s...
 * /rosdistro: indigo
 * /rosversion: 1.11.8

NODES
  /
    naoqi_driver (naoqi_driver/alrosbridge_bin)
    pose_controller (naoqi_pose/pose_controller.py)
    pose_manager (naoqi_pose/pose_manager.py)

auto-starting new master
process[master]: started with pid [3048]
ROS_MASTER_URI=http://localhost:11311

setting /run_id to afe1e282-46fe-11e5-8e74-000c29113e6d
process[rosout-1]: started with pid [3061]
started core service [/rosout]
process[naoqi_driver-2]: started with pid [3064]
process[pose_controller-3]: started with pid [3065]
process[pose_manager-4]: started with pid [3066]
going to add: /opt/ros/indigo
[W] 3064 qi.path.sdklayout: No Application was created, trying to deduce paths
[W] 3064 qimessaging.remoteobject: Return signature might be incorrect depending on the value, from m to s
set prefix successfully to nao_robot
[I] 3064 qimessaging.session: Session listener created on tcp://0.0.0.0:0
[I] 3064 qimessaging.transportserver: TransportServer will listen on: tcp://192.168.1.12:53597
[I] 3064 qimessaging.transportserver: TransportServer will listen on: tcp://127.0.0.1:53597
using ip address: 192.168.1.22 @ eth0
found a catkin prefix /opt/ros/indigo/share/naoqi_driver/share/boot_config.json
load boot config from /opt/ros/indigo/share/naoqi_driver/share/boot_config.json
*** Error in `/opt/ros/indigo/lib/naoqi_driver/alrosbridge_bin': malloc(): memory corruption: 0x000000000105ea90 ***
[INFO] [WallTime: 1440049542.818376] Connecting to NaoQi at 192.168.1.16:9559
[I] 3065 qimessaging.session: Session listener created on tcp://0.0.0.0:0
[I] 3065 qimessaging.transportserver: TransportServer will listen on: tcp://192.168.1.12:55832
[I] 3065 qimessaging.transportserver: TransportServer will listen on: tcp://127.0.0.1:55832
================================================================================REQUIRED process [naoqi_driver-2] has died!
process has died [pid 3064, exit code -6, cmd /opt/ros/indigo/lib/naoqi_driver/alrosbridge_bin --qi-url=tcp://192.168.1.16:9559 192.168.1.22 eth0 __name:=naoqi_driver __log:=/home/viki/.ros/log/afe1e282-46fe-11e5-8e74-000c29113e6d/naoqi_driver-2.log].
log file: /home/viki/.ros/log/afe1e282-46fe-11e5-8e74-000c29113e6d/naoqi_driver-2*.log
Initiating shutdown!
================================================================================
[pose_manager-4] killing on exit
[pose_controller-3] killing on exit
[naoqi_driver-2] killing on exit
[FATAL] [WallTime: 1440049543.081755] Could not connect to required "joint_trajectory" action server, is the nao_controller node running?
[INFO] [WallTime: 1440049543.146444] Stopping pose_controller
[INFO] [WallTime: 1440049543.146679] pose_controller stopped
[INFO] [WallTime: 1440049543.952842] nao_controller initialized
[INFO] [WallTime: 1440049543.953180] nao pose_controller running...
[INFO] [WallTime: 1440049543.954738] nao pose_controller stopped.
[rosout-1] killing on exit
[master] killing on exit
shutting down processing monitor...
... shutting down processing monitor complete
done

Karsten K

unread,
Aug 20, 2015, 8:35:43 AM8/20/15
to ros-sig-...@googlegroups.com
Hi Steve,

this looks like a bug and it's hard to debug it remotely. Could you please open an issue on github[0] given more details on your platform and version you are executing?

For the time being, try to compile from source to get sure that you are on the latest version.

thanks
Karsten




Steve Karpik

unread,
Aug 20, 2015, 3:19:10 PM8/20/15
to ROS Sig Aldebaran
OK, thanks.I have posted an issue on Github (naoqi_driver).

I am going to re-trace my steps with a new VM just to make sure I haven't done something wrong. And assuming that I've still got trouble, I'll take your suggestion and compile from source and try running nao_bringup again.

I will let you know what I find..

Steve Karpik

unread,
Aug 21, 2015, 1:52:23 AM8/21/15
to ROS Sig Aldebaran
I re-did everything from scratch and as I partially expected I got a different result. 

In attempting to get a "virtual" NAO to run, I must have messed up something. However, I still seem to have problems. 

To set up my environment, I followed the instructions at http://wiki.ros.org/nao and installed the NAO libraries using:

sudo apt-get install ros-.*-nao-robot
sudo apt-get install ros-.*-nao-extras


Now  when I execute:

roslaunch nao_bringup nao_full.launch nao_ip:=192.168.1.16 roscore:=192.168.1.12

I no longer get the fatal error for the nao_driver but I get a warning and a series of errors:
[
[WARN] [WallTime: 1440133856.130556] stop_walk_srv not available, pose_manager will not stop the walker before executing a trajectory. This is normal if there is no nao_walker running.

[ERROR] [1440133858.392728691]: Do not calculate NAO Footprint, no transform possible 1440133858.183434567
[ERROR] [1440133891.664251112]: Do not calculate NAO Footprint, no transform possible 1440133891.463198669

Obviously I've still got some sort of problem.

Karsten K

unread,
Aug 21, 2015, 4:45:53 AM8/21/15
to ros-sig-...@googlegroups.com
In fact, I believe your bridge is running correctly. Could you lease open RViz and check if you see your NAO robot correctly with all attached sensors?
[
[WARN] [WallTime: 1440133856.130556] stop_walk_srv not available, pose_manager will not stop the walker before executing a trajectory. This is normal if there is no nao_walker running.
This is indeed a legacy warning. I think due to all reorganizations here, there is no real nao_walker anymore. But this can be ignored so far. 

[ERROR] [1440133858.392728691]: Do not calculate NAO Footprint, no transform possible 1440133858.183434567
[ERROR] [1440133891.664251112]: Do not calculate NAO Footprint, no transform possible 1440133891.463198669
That's a timing issue between two time stamps of the feet to calculate the base footprint. This however should not occur too frequently so that the base_footprint is available in your TF tree (verify with RViz).


 

Steve Karpik

unread,
Aug 22, 2015, 12:50:55 AM8/22/15
to ROS Sig Aldebaran
Hi Karsten,

With your kind advice, I think that I have things running. There is, however, one nagging warning message.

As I mentioned above, I started from scratch and re-installed everything. Starting with my Ubuntu (trusty) - ROS (indigo) base installation, I installed nao_robot and nao_extras:

sudo apt-get install ros-.*-nao-robot
sudo apt-get install ros-.*-nao-extras

(reference:  http://wiki.ros.org/nao)

Then I installed naoqi_bridge:

sudo apt-get install ros-.*-naoqi-bridge

Rviz didn't seem to know anything about the NAO meshes, so I installed the following package:

sudo apt-get install ros-indigo-nao-meshes

Starting up the ROS-NAO using Python worked perfectly (I could see the NAO in Rviz). I used this command:

roslaunch nao_bringup nao_full_py.launch nao_ip:=192.168.1.16 roscore:=192.168.12

Starting ROS-NAO using C++, I got an error message that I don't know what to make of. I started the NAO-ROS with:

roslaunch nao_bringup nao_full.launch nao_ip:=192.168.1.16 roscore:=192.168.1.12

and got this error message:

[W] 3832 qitype.signal: Exception caught from signal subscriber: Call argument number 0 conversion failure from LogMessage to LogMessage. Function signature: (LogMessage).

I suspect that I either have not installed something that is needed or I've added something that shouldn't be there. Does this warning look familiar?

Vincent Rabaud

unread,
Aug 27, 2015, 9:41:57 AM8/27/15
to ros-sig-...@googlegroups.com
We've updated a lot in the past few days: please update your sources or download the latest packages in shadow-fxed: http://wiki.ros.org/ShadowRepository
If you still have this bug, please open a bug report on https://github.com/ros-naoqi/naoqi_driver/issues

Reply all
Reply to author
Forward
0 new messages