problem when running naoqi_driver (alrosbridge) on Raspberry Pi 2

333 views
Skip to first unread message

christophe scazzi

unread,
Aug 4, 2015, 9:59:56 AM8/4/15
to ROS Sig Aldebaran


Hello,

My goal is to control a Nao Robot V5 using a Raspberry Pi (ARM architecture).
I tried to run "naoqi_driver" on a Raspberry Pi 2 (with latest Raspbian installed) as explain here: http://ros-naoqi.github.io/naoqi_driver/install.html

Building steps using "catkin_make_isolated" works well. At the end, I finally have a "alrosbridge_bin" executable.
But, when I try to run it as explained here: http://ros-naoqi.github.io/naoqi_driver/start.html with
>> $ rosrun naoqi_driver alrosbridge_bin --qi-url=<yourRobotIP> <roscore_ip> wlan0
I get a "bus error" message.

May someone help me, please ? Is it because "naoqi_driver" doesn't support ARM architecture ?

Thanks.


Karsten K

unread,
Aug 4, 2015, 10:07:50 AM8/4/15
to ros-sig-...@googlegroups.com
Hi,

where exactly do you cross-compile? Do you compile directly on your raspberry? 
Anyways, without having it thought trough completely, I'd bet for the dependencies which are not correctly working.
Do you have a catkin workspace with libqi and libqicore in it?  

Can you try running any 'hello world' communication code between your raspberry and your NAO? Maybe just a simple proxy to ALTextToSpeech.


--
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/650264fc-ba7b-4213-a928-8df404598ade%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Message has been deleted

christophe scazzi

unread,
Aug 5, 2015, 2:58:21 AM8/5/15
to ROS Sig Aldebaran
Hello,

I compiled directly on Raspberry. Yes I have a catkin workspace with libqi, libqicore, naoqi_bridge, naoqi_bridge_msgs and a lot of others. I mostly followed these steps: http://wiki.ros.org/ROSberryPi/Installing%20ROS%20Indigo%20on%20Raspberry%20Pi
with these variants:
$ rosinstall_generator robot nao_robot perception --rosdistro indigo --deps --wet-only --tar > indigo-robot-wet.rosinstall

What do you mean by "just a simple proxy to ALTextToSpeech" ? As I am not able to have a full NaoQi C++ SDK available for ARM architecture. How to have access to proxies ? For example, if I run:
$ python
>>> import naoqi

I have an error saying that it can't find module "naoqi".

Karsten K

unread,
Aug 5, 2015, 4:11:19 AM8/5/15
to ros-sig-...@googlegroups.com
Sorry, I wasn't clear enough on that.

I meant just creating a dummy c++ catkin package which compiles against your libqi/libqicore libraries. 
For example the code snippet below:

#include <qi/session.hpp>
#include <qi/anyobject.hpp>
#include <qi/anymodule.hpp>
#include <qi/applicationsession.hpp>

#include <ros/ros.h>

int main( int argc, char** argv )
{
  qi::ApplicationSession app(argc, argv);
  app.start();

  ros::init( argc, argv, "hello world" );
  ros::NodeHandle nh; // no use here, but using ROS components.

  qi::AnyObject tts = app.session()->service("ALTextToSpeech");
  tts.call<void>("say", "hello world");

  return 0;
}

compile this, run it with ./deve/lib/<project>/<binary> --qi-url=tcp://<robot_ip>:9559

Take a look at https://github.com/ros-naoqi/naoqi_driver for a complete example.

--
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.

christophe scazzi

unread,
Aug 5, 2015, 3:30:28 PM8/5/15
to ROS Sig Aldebaran

Thanks for your example. It works, Nao said "Hello world". I am very new to ROS. The example you gave me was the first one I've made using ROS.
I don't know if it's relevant but,there is strange configuration about "libqi" (and "libqicore"):

1) my source directory name is: src/libqi
2) my build directory name is: build_isolated/naoqi_libqi
3) my cmake config file name is: build_isolated/naoqi_libqi/sdk/cmake/qi-config.cmake
4) during build of "naoqi_driver" catkin looks for a "naoqi_libqiConfig.cmake" file so I must rename "qi-config.cmake" to "naoqi_libqiConfig.cmake"
5) I also have to build with extra catkin parameters:  -Dnaoqi_libqi_DIR=/home/pi/ros_catkin_ws/build_isolated/naoqi_libqi/sdk/cmake
6) I also have to add  "${QI_LIBRARIES}  ${QICORE_LIBRARIES}" to "src/naoqi_driver/CmakeLists_catkin.txt"

So, what do you think about that ? Do you have a clue for me to investigate ?

Thanks for your help.


Reply all
Reply to author
Forward
0 new messages