Git Product home page Git Product logo

cros's People

Contributors

albertopretto avatar ceztko avatar gavanderhoorn avatar gerkey avatar mhaberler avatar onnivoro avatar rrcarrillo avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

cros's Issues

raw-api-test: absolute paths used in cRosServiceBuild(..) calls

This seems to only be a problem when CROS_MESSAGE_SERIALIZATION_TEST is defined, but for example here:

  [..]
  cRosService service;
  cRosServiceInit(&service);
  cRosServiceBuild(&service,"/home/nico/Desktop/test_msgs/nav_msgs/GetPlan.srv");
  [..]

Should those messages be included in the cROS distribution, or should the code be refactored somehow?

segfault starting api-test

Just compiled cros (0abb16d) on Ubuntu Precise (12.04), 32 bit (up-to-date as of 2015-04-28), then tried to start api-test and received the following SIGSEGV (note that the console output states that api-test is connecting to a roscore, but I did not start it):

Starting program: /home/user/ros/cros/cros-master/samples/bin/api-test 
Running node "/Gripper" with host : 127.0.0.1, roscore host : 127.0.0.1 and roscore port : 11311
To set a different node/host/port, take a look at the options: /home/user/ros/cros/cros-master/samples/bin/api-test -h
Publishing topic /rosout type rosgraph_msgs/Log 
Registering service /Gripper/get_loggers type roscpp/GetLoggers 
Registering service /Gripper/set_logger_level type roscpp/SetLoggerLevel 

[1430225884,0] cROS Node (version 0.90) created!
Subscribing to topic /gripperstatus type gripping_robot/GripperStatus 
Subscribing to topic /gripperjoints type gripping_robot/GripperJoints 
Registering service /close_clamps type gripping_robot/CloseGripper 
Registering service /open_clamps type gripping_robot/OpenGripper 
Registering service /park_configuration type gripping_robot/RestPosition 
Registering service /reconfigure type gripping_robot/Reconfigure 
Registering service /transfer type gripping_robot/Transfer 
Registering service /move_arm type gripping_robot/MoveArm 

Program received signal SIGSEGV, Segmentation fault.
0x08053170 in cRosNodeDoEventsLoop (n=0x8075008) at /home/user/ros/cros/cros-master/src/cros_node.c:2327
2327          if( FD_ISSET(server_fd, &err_fds) )

The backtrace at that point is:

(gdb) bt
#0  0x08053170 in cRosNodeDoEventsLoop (n=0x8075008) at /home/user/ros/cros/cros-master/src/cros_node.c:2327
#1  0x08053bb3 in cRosNodeStart (n=0x8075008, exit=0xbfffec3b "") at /home/user/ros/cros/cros-master/src/cros_node.c:2449
#2  0x0804da95 in main (argc=1, argv=0xbffff0f4) at /home/user/ros/cros/cros-master/samples/api-test.c:362
(gdb) print serv
server_fd             service_idx           service_type          serviceresponse_type  
service               service_name          servicerequest_type   services              
(gdb) print server_fd 
$1 = -1
(gdb) print err_fds 
$2 = {__fds_bits = {0 <repeats 32 times>}}

gcc: 4.6.4 (Ubuntu/Linaro 4.6.4-1ubuntu1~12.04)

I can provide more info if desired.

segfault running talker

(Ubuntu 14.04; 64 bit; ROS Indigo)
I compiled cros and started a roscore and the talker.
The node is running, but I get a warning:

Publishing topic /rosout type rosgraph_msgs/Log 
Registering service /talker/get_loggers type roscpp/GetLoggers 
Registering service /talker/set_logger_level type roscpp/SetLoggerLevel 
Publishing topic /chatter type std_msgs/String 
readSubcriptioHeader() WARNING : TCPROS_TCP_NODELAY_TAG not implemented

However, by running the command rostopic echo /chatter in another terminal the node crashes after publishing a varying amount of messages:

Publishing topic /rosout type rosgraph_msgs/Log 
Registering service /talker/get_loggers type roscpp/GetLoggers 
Registering service /talker/set_logger_level type roscpp/SetLoggerLevel 
Publishing topic /chatter type std_msgs/String 
readSubcriptioHeader() WARNING : TCPROS_TCP_NODELAY_TAG not implemented
readSubcriptioHeader() WARNING : TCPROS_TCP_NODELAY_TAG not implemented

[1494409124,0] hello world 0
[1494409124,0] hello world 0
[1494409124,0] hello world 0
[1494409124,0] hello world 0
[1494409124,0] hello world 0
Segmentation fault (core dumped)

If I run instead the listener, the listener itself crashes first with another warning:

Publishing topic /rosout type rosgraph_msgs/Log 
Registering service /listener/get_loggers type roscpp/GetLoggers 
Registering service /listener/set_logger_level type roscpp/SetLoggerLevel 
Subscribing to topic /chatter type std_msgs/String 
Host: 127.0.0.1
readPublicationHeader() WARNING : TCPROS_LATCHING_TAG not implemented

Segmentation fault (core dumped)

Multiple subscribers to the same topic do not receive the same msgs

Setup:

  • compile the samples
  • run a roscore
  • start a single instance of talker
  • start two instances of rostopic echo /chatter (rt0 and rt1 in the description below)

Observed:

both rt0 and rt1 start receiving messages, but rt0 gets the even publications, and rt1 gets the uneven publications (this is just an example, it could be the other way around):

output of rt0:

...

---
data: hello world 120

---
data: hello world 122

---
data: hello world 124
...

output of rt1:

...

---
data: hello world 121

---
data: hello world 123

---
data: hello world 125
...

Expected:

It would appear that the callback is called twice: once for each subscriber, giving each subscriber their own copy (or: a new message).

I would've expected the callback to be called once, and the resulting message (ie: hello world 121) copied to all connected subscribers.

No comms on OSX

I'm trying out cros on OSX 10.10. I have a branch that fixes simple compile problems and avoids passing -1 file descriptors to FD_SET() (the manpage says that this leads to undefined behavior, and while Linux tolerates it, OSX just segfaults):

master...gerkey:os_fixes2

So now I can build and run examples, but nothing connects. I don't see any indication that roscore is being contacted by the nodes. I'm happy to do the debugging, but I'd love to get some guidance on where to look for the problem

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.