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

p2os connection

asked 2012-09-07 10:43:44 -0500

Jyo gravatar image

updated 2012-09-10 09:50:13 -0500

I have 3 pioneers, only one of which is running p2os. The two running Aria are all set up in terms of teleop and working with the navigation stack, I am having a problem with the Pioneer 2 with p2os. I followed the tutorials carefully, but I have an error I can't seem to fix. I have an external laptop hooked up via USB2Serial connection. I have a launch script like so

 <node name="p2os" pkg="p2os_driver" type="p2os" ns="$(env NAMESPACE)" output="screen" >
      <param name="port" value="/dev/Aria" />
      <remap from="/cmd_vel" to="/virtual_joystick/cmd_vel" />
      <remap from="pose" to="odom" />
   </node>

When I run the launch, it outputs the following message repeatedly for about a minute before crashing. I have tried changing permissions on my symlink, on ttyUSB*, and directly on the bus port its on, to no avail.

[ERROR] [1347049242.964984100][/robot_brain_3/p2os]: Error reading packet header from robot connection: P2OSPacket():Receive():read(): [Receive]

Also if you look on the display screen on the robot, it says No Conn 9.6kb p2os v1.p 14.8 Specifically the no conn presumably means no connection...but the output is different than if I just turned off the pioneer. It is clearly receiving something.

Oh and running the dashboard works, but it just spams the error in it's little logger, can't get any other useful information.

Any ideas?

Edit* Sample process

sudo apt-get install ros-electric-p2os
sudo chmod 777 -R /dev/ttyUSB0
sudo chmod 777 -R /dev/Aria
sudo chmod 777 -R /dev/bus/usb/001/126  #these are all the same, just for sanity's sake
roslaunch p2os_launch sample_p2os.launch #where sample_p2os.launch is a script like above

[INFO] [/robot_brain_3/p2os]: using serial [port]: [/dev/Aria] [P2OSNODE]
[INFO] [/robot_brain_3/p2os]: P2OS connection opening serial port /dev/Aria...[Setup]
[ERROR] [/robot_brain_3/p2os]: Error reading packet header from robot connection: P2OSPacket():Receive():read(): [Receive]
[ERROR] [/robot_brain_3/p2os]: Error reading packet header from robot connection: P2OSPacket():Receive():read(): [Receive]
[ERROR] [/robot_brain_3/p2os]: Error reading packet header from robot connection: P2OSPacket():Receive():read(): [Receive]
edit retag flag offensive close merge delete

Comments

Does "/dev/Aria" exist, and what is it on this system if you're not using Aria?

jbohren gravatar image jbohren  ( 2012-09-09 01:26:24 -0500 )edit

`/dev/Aria does exist, and it is the usb2serial device to the pioneer. It is called Aria just for consistency sake, it could be renamed to /dev/pioneer or something.

Jyo gravatar image Jyo  ( 2012-09-10 09:26:16 -0500 )edit

Did you ever get this working?

jbohren gravatar image jbohren  ( 2012-09-29 08:30:50 -0500 )edit

What version of P2OS does your pioneer have? I found one with 1.D and it's giving the same error. Apparently the latest version is 1.Q

jbohren gravatar image jbohren  ( 2012-09-29 10:48:17 -0500 )edit

I have not gotten it working yet, it has been kind of sidelined, but I am using 1.P. I could try flashing the newest version, but it seems odd that that would be the issue :/

Jyo gravatar image Jyo  ( 2012-10-01 10:11:31 -0500 )edit

Yeah, if you're only one version off, it's probably not that. We spent some time hacking on a Pioneer2 over the weekend and got stuck with the same error you're reporting.

jbohren gravatar image jbohren  ( 2012-10-01 10:13:06 -0500 )edit

Has anybody managed to solve this problem? I'm facing the same issue... I'm using a Pioneer P3-AT, Ubuntu 12.04 LTS, ROS Hydro.

Mendelson gravatar image Mendelson  ( 2013-09-30 08:37:59 -0500 )edit

2 Answers

Sort by ยป oldest newest most voted
2

answered 2012-10-10 23:49:43 -0500

Markus Bader gravatar image

Add the user to the group dialout

Don't waist time to set rights on your usb devices.

On Ubuntu 12.04 it is enough to add the user to the group dialout

sudo usermod -a -G dialout $USER

The user have to logout and to login again to update the policy.

Greetings Markus

edit flag offensive delete link more
1

answered 2012-09-09 06:45:37 -0500

allenh1 gravatar image

I don't recommend you use Aria. We have three pioneers at Vanderbilt, all of which are running ubuntu and working with ROS. No Aria is required. There P2OS driver is working with electric and is installable through the package manager.

To fix your current problem, you might try this:

sudo chmod 777 -R /dev/ttyUSB0

It is picky about user rights.

edit flag offensive delete link more

Comments

I did try sudo chmod 777 -R /dev/ttyUSB0. And I am also using that p2os driver. However Is the p2os driver really only compatible with electric? I am using fuerte on this install, that could be the issue?
Edit* Just tried on a electric install, no go.

Jyo gravatar image Jyo  ( 2012-09-10 09:29:51 -0500 )edit

Which version of P2OS is on your pioneers?

jbohren gravatar image jbohren  ( 2012-10-03 07:45:58 -0500 )edit

The ros-electric-p2os package from the ubuntu repository.

allenh1 gravatar image allenh1  ( 2012-10-03 10:51:32 -0500 )edit

I mean the version of the embedded OS on the pioneer robot itself. 1.A... 1.Q?

jbohren gravatar image jbohren  ( 2012-10-03 10:52:22 -0500 )edit

I'll have to get back to you on that... They are Pioneer-3DX robots. I am not sure how to get the OS version, but, if you provide instructions, I am very willing to.

allenh1 gravatar image allenh1  ( 2012-10-03 10:56:45 -0500 )edit

Aha! So I'm pretty sure our problem is Pioneer 2 related.

jbohren gravatar image jbohren  ( 2012-10-03 10:57:33 -0500 )edit

Question Tools

2 followers

Stats

Asked: 2012-09-07 10:43:44 -0500

Seen: 1,493 times

Last updated: Oct 10 '12