<div>On Fri, Jun 8, 2012 at 8:06 PM, John Galloway <span dir="ltr"><<a href="mailto:jrg@toasterfish.com" target="_blank">jrg@toasterfish.com</a>></span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

It appears (i.e. just reading the docs, I haven't brought up a ROS env yet) that at present every ROS device has to have an executable (or driver) on a host (which is found in the package for that device).  It would seem ideal that a device using USB (for example) could have its driver embedded to allow a generic USB driver to detect that this is a ROS device and link it into the graph of nodes (allowing the device to publish and subscribe etc) without a device specific driver being needed.  Is this possible within the current APIs?<br>

</blockquote><div><br></div>John,<div><br></div><div>There are definitely others who are interested in pushing computation into embedded systems. At ROSCon last month, Morgan Quigley presented this related idea, motivated by the needs of realtime control.</div>

<div><br></div><div>You can check out his thoughts on the subject here: </div><div><a href="http://www.youtube.com/watch?v=3wnab6AjAwc&feature=player_detailpage#t=1648s">http://www.youtube.com/watch?v=3wnab6AjAwc&feature=player_detailpage#t=1648s</a></div>

<div><br></div><div>As to having a ROS USB device driver, I don't see any reason why you couldn't have an embedded system identify itself as a device that talks in ROS messages, and then have a single driver recognize it via udev rules or something and hook it up to a given ROS master.</div>

<div><br></div><div>Have you looked at rosserial? <a href="http://ros.org/wiki/rosserial">http://ros.org/wiki/rosserial</a> While I haven't used it, it seems like it gets part of the way there by having embedded devices that talk in ROS messages, and they just connect to a generic rosserial driver on a host machine: <a href="http://ros.org/wiki/rosserial_python">http://ros.org/wiki/rosserial_python</a></div>

<div><br></div><div><div>(ahhh it looks like Morgan also replied while I was finishing writing this!)</div></div><div><br></div><div>best,</div><div>-j</div><div> </div></div><br clear="all"><div><br></div>-- <br><div style="font-family:arial,sans-serif;font-size:13px">

<span style="background-color:rgb(255,255,255)">Jonathan Bohren</span></div><div style="font-family:arial,sans-serif;font-size:13px"><span style="background-color:rgb(255,255,255)">PhD Student</span></div><div style="font-family:arial,sans-serif;font-size:13px">

<span style="background-color:rgb(255,255,255)">Dynamical Systems and Control Laboratory</span></div><div style="font-family:arial,sans-serif;font-size:13px"><span style="background-color:rgb(255,255,255)">Laboratory for Computational Sensing and Robotics</span></div>

<div style="font-family:arial,sans-serif;font-size:13px"><span style="background-color:rgb(255,255,255)">The Johns Hopkins University</span></div><div style="font-family:arial,sans-serif;font-size:13px"><span style="background-color:rgb(255,255,255)"><br>

</span></div><div style="font-family:arial,sans-serif;font-size:13px"><font style="background-color:rgb(255,255,255)" color="#000000">(707) 520-4736</font></div><div style="font-family:arial,sans-serif;font-size:13px"><font style="background-color:rgb(255,255,255)" color="#000000"><a href="mailto:jbo@jhu.edu" target="_blank">jbo@jhu.edu</a></font></div>

<br>
</div>