ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Ola Ringdahl's profile - activity

2016-02-17 04:54:00 -0500 received badge  Good Answer (source)
2016-02-16 07:04:02 -0500 commented answer Communication between ROS and wxWidgets

Yes you should create a wxTimerEvent. In onInit, I do the following: char* argvForRos = new char[argc]; for (int i = 0; i < argc; ++i) { argvForRos[i] = strdup(wxString(argv[i]).mb_str()); } ros::init(argc, _argvForRos, "my

Gui");

2015-11-26 03:22:25 -0500 marked best answer rxtools not found in Groovy

In order to use RosoutPanel in C++ I include rxtools/rosout_panel.h in my class and depend on rxtools in manifest.xml. In Fuerte this works fine, but in Groovy I get a compile error because it cannot find rosout_panel.h:

fatal error: rxtools/rosout_panel.h: No such file or directory

The .h-file is present on the file system (/opt/ros/groovy/share/rxtools/src/rxtools), so why is it not found?

2015-11-06 16:13:46 -0500 marked best answer Package swig-wx not found in rxtools in Groovy

I have a package that depends on rxtools which in turn depends on swig-wx. My package will not compile in Groovy since it says that swig-wx does not exist. Running rosdep check on my package results in "resource not found [swig-wx]", but ros-groovy-swig-wx is installed:

 $ rosdep resolve swig-wx
 #apt
 ros-groovy-swig-wx

Does this have to do with rxtools being deprecated in Groovy? Everything works fine in Fuerte.

2015-02-25 07:31:34 -0500 received badge  Self-Learner (source)
2014-06-24 07:43:31 -0500 received badge  Nice Answer (source)
2014-06-24 07:26:59 -0500 answered a question Cannot add or delete files from opt/ros/hydro/share.

You should not put any files in that location. If you are developing your own nodes, create a ros workspace where you have permission to write (see http://wiki.ros.org/catkin/Tutorials/... ). If you for some reason still want to add files to /opt/ros just use sudo cp.

2014-05-22 22:49:55 -0500 received badge  Famous Question (source)
2014-01-28 17:27:57 -0500 marked best answer Calling xn_sensor_server_cleanup.sh from launchfile

There are a lot of threads on a bug in openni that crash the kinect because xnsensorserver is not shut down correctly. The solution seems to be to run this script (xn_sensor_server_cleanup.sh) from the launchfile to kill xnsensorserver automatically.

I tried to call this from my launchfile, but it just waits for ctrl-c without starting any of the nodes that should be started by the launchfile. Have anyone been successful in running this script? Currently I call the script by this command (in the end of the launchfile):

<param name="cleanup" command="$(find crops_fruit_localization)/include/xn_sensor_server_cleanup.sh"/>
2014-01-28 17:27:53 -0500 marked best answer Tooltips in wxWidgets not working

I have implemented tooltips for buttons and such in my wxWidgets GUI, but they do not show. It has worked before, but I cannot get it to work now regardless of version of ROS and Ubuntu (tested electric and fuerte in 11.10 and 12.04). Implementing tooltips the same way in a simple GUI without any ROS code works fine. I use the setToolTip() method like this:

wxButton* myButton = new wxButton(...);
myButton->SetToolTip(_("this is a tooltip"));

Any suggestions on what might be wrong?

2014-01-28 17:27:49 -0500 marked best answer No registered depth image in Fuerte

I am using the /camera/depth_registered/image_rect message from a kinect using openni_launch, but he message is not sent in Fuerte. I tried setting depth_registration:

roslaunch openni_launch openni.launch depth_registration:=true

but still no registered depth image. In Electric everything works fine. Do I have to do something more to turn om the registered depth images in Fuerte?

2014-01-28 17:25:30 -0500 marked best answer RosoutPanel not included in Fuerte?

The rxtools libraries do not seem to be included in Fuerte. Is there any way to install them (or have they been moved to a new place maybe)? I have connected a RosoutPanel to my GUI, so it would be nice to be able to use it in the new relase too. To clarify, i'm looking for the C++ source code, not rxconsole. I'm including rxtools/rosout_panel.h in my code, but can not find it in Fuerte.

2014-01-28 17:23:18 -0500 marked best answer Diagnostic aggregator not resetting between runs

I'm having a problem that the diagnostic aggregator contains analyzers from a previous run. The situation is this:

  1. Start roscore
  2. Start an application, including diagnostic aggreggator, using roslaunch
  3. Stop the application and launch another one with a new yaml-file
  4. The aggregator message now contains analyzers from both the new and the old application (the old ones are stale now of cource).

The problem arises when having roscore running and starting different applications with roslaunch (so skipping step one would fix the problem). The reason I start roscore is that I have a GUI that can start (and close down) different applications. This GUI is a rosnode, so I have to have roscore running while starting and stopping other applications.

Is there a way of resetting the aggregator so it just listens to new messages (the ones specified specified in the last yaml-file loaded)?

2014-01-28 17:23:09 -0500 marked best answer Communication between ROS and wxWidgets

What's the best way of sending and receiving ROS messages to and from a wxWidgets GUI in C++? I have a GUI that should be updated with status of some ROS nodes and I want to be able to send some ROS messages to ROS nodes when a button is clicked i the GUI (or similar).

I have tried to make wxApp as a ROS node and update the GUI when a ROS message is received, but it does not work (some problems with threads).

There must be a 'default' way of communicating with other C++ programs in a wxWidgets GUI?

2014-01-08 01:34:10 -0500 received badge  Notable Question (source)
2013-12-04 10:43:33 -0500 received badge  Self-Learner (source)
2013-12-04 10:43:33 -0500 marked best answer Error in rosconsole when running GigE camera

I'm trying to wrap the driver to our Basler GigE camera in ROS, but get the following error at runtime:

 Basler_camera: /usr/include/boost/regex/v4/match_results.hpp:503: void boost::match_results<BidiIterator, Allocator>::set_first(BidiIterator) [with BidiIterator = __gnu_cxx::__normal_iterator<const char*, std::basic_string<char> >, Allocator = std::allocator<boost::sub_match<__gnu_cxx::__normal_iterator<const char*, std::basic_string<char> > > >]: Assertion `m_subs.size() > 2' failed.
Aborted

Debugging with gdb gave the following traceback:

#0  0xb7fe1424 in __kernel_vsyscall ()
#1  0xb783be71 in raise () from /lib/i386-linux-gnu/libc.so.6
#2  0xb783f34e in abort () from /lib/i386-linux-gnu/libc.so.6
#3  0xb7834888 in __assert_fail () from /lib/i386-linux-gnu/libc.so.6
#4  0xb7fa975c in set_first (this=0xbfffe384)
    at /usr/include/boost/regex/v4/match_results.hpp:503
#5  boost::re_detail::perl_matcher<__gnu_cxx::__normal_iterator<char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<boost::sub_match<__gnu_cxx::__normal_iterator<char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, boost::regex_traits<char, boost::cpp_regex_traits<char> > >::match_prefix (this=0xbfffe384)
    at /usr/include/boost/regex/v4/perl_matcher_common.hpp:321
#6  0xb7d7955a in boost::re_detail::perl_matcher<__gnu_cxx::__normal_iterator<char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<boost::sub_match<__gnu_cxx::__normal_iterator<char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, boost::regex_traits<char, boost::cpp_regex_traits<char> > >::find_restart_any (this=0xbfffe384)
    at /usr/include/boost/regex/v4/perl_matcher_common.hpp:771
#7  0xb7d77220 in boost::re_detail::perl_matcher<__gnu_cxx::__normal_iterator<char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<boost::sub_match<__gnu_cxx::__normal_iterator<char const*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >, boost::regex_traits<char, boost::cpp_regex_traits<char> > >::find_imp (this=0xbfffe384)
    at /usr/include/boost/regex/v4/perl_matcher_common.hpp:300
#8  0xb7d77715 in find (first=..., last=..., m=..., e=..., 
    flags=boost::regex_constants::match_default, base=...)
    at /usr/include/boost/regex/v4/perl_matcher_common.hpp:230
#9  boost::regex_search<__gnu_cxx::__normal_iterator<char const*, std::basic_string<char> >, std::allocator<boost::sub_match<__gnu_cxx::__normal_iterator<char const*, std::basic_string<char> > > >, char, boost::regex_traits<char> > (first=..., last=..., 
    m=..., e=..., flags=boost::regex_constants::match_default, base=...)
    at /usr/include/boost/regex/v4/regex_search.hpp:56
#10 0xb7d7778d in boost::regex_search<__gnu_cxx::__normal_iterator<char const*, std::basic_string<char> >, std::allocator<boost::sub_match<__gnu_cxx::__normal_iterator<char const*, std::basic_string<char> > > >, char, boost::regex_traits<char> > (
    first=..., last=..., m=..., e=..., flags=boost::regex_constants::match_default)
    at /usr/include/boost/regex/v4/regex_search.hpp:42
#11 0xb7d778ea in ros::console::Formatter::init (this=0xb7d85380, 
    fmt=0xb7d7c644 "[${severity}] [${time}]: ${message}")
    at /tmp/buildd/ros-diamondback-ros-comm-1.4.7/debian/ros-diamondback-ros-comm/opt/ros/diamondback/stacks/ros_comm/tools/rosconsole/src/rosconsole/rosconsole.cpp:282
#12 0xb7d6e004 in ros::console::do_initialize ()
    at /tmp/buildd/ros-diamondback-ros-comm-1.4.7/debian/ros-diamondback-ros-comm/opt/ros/diamondback/stacks/ros_comm/tools/rosconsole/src/rosconsole/rosconsole.cpp:417
#13 0xb7d6e49c in ros::console::initialize ()
    at /tmp/buildd/ros-diamondback-ros-comm-1.4.7/debian/ros-diamondback-ros-comm/opt/ros/diamondback/stacks/ros_comm/tools/rosconsole/src/rosconsole/rosconsole.cpp:429
#14 0xb7d6e7f9 in StaticInit ()
    at /tmp/buildd/ros-diamondback-ros-comm-1.4.7/debian/ros-diamondback-ros-comm/opt/ros/diamondback/stacks/ros_comm/tools/rosconsole/src/rosconsole/rosconsole.cpp:676
#15 ...
(more)
2013-12-04 10:43:18 -0500 received badge  Nice Question (source)
2013-12-02 06:59:03 -0500 received badge  Organizer (source)
2013-12-02 06:56:01 -0500 received badge  Popular Question (source)
2013-11-27 06:25:14 -0500 marked best answer How to make rosbuild package depend on catkin package?

In my rosbuild package I have a dependency one of my catkin packages:

<depend package="myCatkinPackage"/>

Calling rosmake myRosbuildPackage generates an error since the catkin package was not found. I can roscd to both catkin and rosbuild packages. I tried overlaying my rosbuild ws on top of my catkin ws:

$ cd ~/path/to/rosbuild_ws
$ rosws init . ~/path/to/catkin_ws/devel
$ source setup.sh

Now it does not find any rosbuild packages (only the catkin_ws is in the ROS_PACKAGE_PATH). What is the correct way of depending on catkin packages from rosbuild?

2013-11-27 06:25:12 -0500 commented answer How to make rosbuild package depend on catkin package?

This is basically what setup.sh does (but it does not add it to bashrc of course). On top of that, the setup file also changes ROS_PACKAGE_PATH to point only on catkin_ws (but not rosbuild_ws), which is kind of counterproductive. The best thing with my solution is that it works ;-)