[ros-users] NXT on ARM (beagleboard) crashing

Tõnu Samuel tonu at jes.ee
Tue Sep 14 17:31:52 UTC 2010


Unsure if I hit some bug or just doing thing wrong. Anyway, I cleaned up
already few times, started from scratch, recompiled everything etc but
always get same error.

I am able to run NXT ROS stack on pc without major troubles. When I try
same on ARM platform, I get problems. I do use Ubuntu 10.04 on both
platforms. To prevent low memory crashes on ARM I added 1G swap on
memory disk, so this cannot be issue.

Installation commands:
---8<-------------
sudo apt-get install build-essential python-yaml cmake subversion wget
python-setuptools mercurial
sudo easy_install -U rosinstall
rosinstall ~/ros http://ros.org/rosinstalls/cturtle_base.rosinstall
echo "source ~/ros/setup.sh" >> ~/.bashrc
. ~/.bashrc
rosinstall ~/ros
"http://www.ros.org/wiki/nxt/Installation?action=AttachFile&do=get&target=nxt-0.1.0.rosinstall"
source ~/ros/setup.sh
---8<-------------

Up to this point PC and ARM stuff is identical. 

Now on ARM Ubuntu there is no package "nvidia-cg-toolkit", so I just
omit it:
---8<-------------
ros at arm7:~/ros/ros$ rosdep check nxt
Did not detect packages: ['nvidia-cg-toolkit']

ros at arm7:~/ros/ros$ 
---8<-------------
Also this renders "rosmake nxt" command to not finish but trap into
errors. So I do:
---8<-------------
rosmake nxt_apps nxt_robots 
---8<-------------
And they compile fine.

I assume all dependencies but rviz stuff is in place, so I try to run
it:
---8<-------------
ros at arm7:~$ roslaunch nxt_robot_sensor_car robot.launch
... logging
to /home/ros/.ros/log/757e0c3e-c025-11df-8249-00c0ca1a0a72/roslaunch-arm7.jes.ee-32708.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://arm7.jes.ee:35922/

SUMMARY
========

PARAMETERS
 * /robot_description
 * /robot_state_publisher/publish_frequency
 * /nxt_ros/nxt_robot
 * /base_parameters/l_wheel_joint
 * /base_parameters/vel_to_eff
 * /base_parameters/wheel_basis
 * /base_parameters/wheel_radius
 * /base_parameters/r_wheel_joint

NODES
  /
    js_agg (nxt_ros/joint_states_aggregator.py)
    robot_state_publisher (robot_state_publisher/state_publisher)
    nxt_ros (nxt_ros/nxt_ros.py)
    base_controller (nxt_controllers/base_controller.py)
    base_odometry (nxt_controllers/base_odometry.py)
    robot_pose_ekf (robot_pose_ekf/robot_pose_ekf)
    base_footprint_fixed_publisher (tf/static_transform_publisher)

starting new master (master configured for auto start)
process[master]: started with pid [32721]
ROS_MASTER_URI=http://arm7.jes.ee:11311/

setting /run_id to 757e0c3e-c025-11df-8249-00c0ca1a0a72
process[rosout-1]: started with pid [32734]
started core service [/rosout]
process[js_agg-2]: started with pid [32746]
process[robot_state_publisher-3]: started with pid [32747]
process[nxt_ros-4]: started with pid [32748]
process[base_controller-5]: started with pid [32749]
process[base_odometry-6]: started with pid [32750]
process[robot_pose_ekf-7]: started with pid [32751]
process[base_footprint_fixed_publisher-8]: started with pid [32753]
[base_footprint_fixed_publisher-8] process has died [pid 32753, exit
code -4].
log
files: /home/ros/.ros/log/757e0c3e-c025-11df-8249-00c0ca1a0a72/base_footprint_fixed_publisher-8*.log

---8<-------------
More output will follow but keeping it short: NXT stuff does not work.
Related log output:

ros at arm7:~/ros/ros$
cat /home/ros/.ros/log/757e0c3e-c025-11df-8249-00c0ca1a0a72/base_footprint_fixed_publisher-8*.log
[roscpp_internal] [2010-09-14 20:28:22,432] [thread 0x41d92790]: [DEBUG]
UDPROS server listening on port [39833]
[roscpp_internal] [2010-09-14 20:28:22,433] [thread 0x41d92790]: [DEBUG]
enableRead() on UDPROS socket [8]
[roscpp_internal] [2010-09-14 20:28:22,642] [thread 0x425a4420]: [DEBUG]
Accepted connection on socket [7], new socket [11]
[roscpp_internal] [2010-09-14 20:28:22,643] [thread 0x425a4420]: [DEBUG]
TCPROS received a connection from [127.0.1.1:58341]
[roscpp_internal] [2010-09-14 20:28:22,693] [thread 0x425a4420]: [DEBUG]
Connection: Creating TransportSubscriberLink for topic [/rosout]
connected to [callerid=[/rosout] address=[TCPROS connection to
[127.0.1.1:58341 on socket 11]]]
[roscpp_internal] [2010-09-14 20:28:22,944] [thread 0x41d92790]: [DEBUG]
Started node [/base_footprint_fixed_publisher], pid [32753], bound on
[arm7.jes.ee], xmlrpc port [44508], tcpros port [48584], logging to
[/home/ros/.ros/log/757e0c3e-c025-11df-8249-00c0ca1a0a72/base_footprint_fixed_publisher-8.log], using [real] time
[roscpp_internal] [2010-09-14 20:28:23,126] [thread 0x425a4420]: [DEBUG]
Accepted connection on socket [7], new socket [12]
[roscpp_internal] [2010-09-14 20:28:23,127] [thread 0x425a4420]: [DEBUG]
TCPROS received a connection from [127.0.1.1:58352]
[roscpp_internal] [2010-09-14 20:28:23,204] [thread 0x425a4420]: [DEBUG]
Connection: Creating TransportSubscriberLink for topic [/tf] connected
to [callerid=[/robot_pose_ekf] address=[TCPROS connection to
[127.0.1.1:58352 on socket 12]]]
[roscpp_internal] [2010-09-14 20:28:23,213] [thread 0x41d92790]: [DEBUG]
XML-RPC call [searchParam] returned an error (-1): [Cannot find
parameter [tf_prefix] in an upwards search]
ros at arm7:~/ros/ros$ 
---8<-------------

I am not completely stuck yet. I still have lot of ROS code to read to
analyze situation. But because this is 100% reproducable on Beagleboard
and not on PC, I post it here and ask if someone sees, what I do wrong?

   Tõnu




More information about the ros-users mailing list