dji-sdk / Guidance-SDK-ROS

The official ROS package of Guidance SDK for 32/64 bit Ubuntu and XU3
80 stars 87 forks source link

rosrun guidance guidanceNode Error #16

Closed wkyoun closed 8 years ago

wkyoun commented 8 years ago

I've been getting this error for a couple of days now. Unable to debug.

Running via guidance sdk work fine, but I get this via the ros wrapper:

wkyoun@wkyoun-15Z960-GA70K:~$ rosrun guidance guidanceNode
hdev NULL!  usb.cpp 351
open failed   001!
usb write error!: Interrupted system call
llibusb_get_device_list ret = 7 !!! 
open failed   001!
llibusb_get_device_list ret = 7 !!! 
open failed   001!
llibusb_get_device_list ret = 7 !!! 
open failed   001!
Error: e_timeout at 237,/home/wkyoun/catkin_ws/src/Guidance-SDK-ROS/src/GuidanceNode.cpp

release usb,usb.cpp 301

but when executing following:

wkyoun@wkyoun-15Z960-GA70K:~$ rosrun guidance guidanceNodeTest

It does not produce any errors;

I have not done any calibration yet,

I am trying to run basic ros node for dji guidance. (is the cause of above problem due to calibration problem?)

tangketan commented 8 years ago

USB errors are mostly caused by improper connection of USB cable, or USB permission. Did you add the rule file to /etc/udev/rules.d to allow USB read/write permission for non-root users? guidanceNodeTest only read messages produced by guidanceNode, that's why no errors are produed by it.

wkyoun commented 8 years ago

It works after writing permission! Thanks a lot!

acdriec commented 8 years ago

SOLVED: usblib was linked to other older usblib...

I got a similar problem:

root@tegra-ubuntu:~/dji_ws# rosrun guidance guidanceNode
llibusb_get_device_list ret = 7 !!! 
Waiting for board ready...
Error: e_timeout at 237,/home/ubuntu/dji_ws/src/Guidance-SDK-ROS/src/GuidanceNode.cpp

I gave permissions. Any idea ?

Kind Regards, Dries

tngan commented 8 years ago

@tangketan, @acdriec I got a similar problem and I am not using root. I have also added the rule file to /etc/udev/rules.d .

Update: See the closed issue. #19

peteflorence commented 7 years ago

In case it is helpful to anyone:

I get a similar error when plugged into a USB 3.0 port:

llibusb_get_device_list ret = 19 !!! 
llibusb_get_device_list ret = 19 !!! 
llibusb_get_device_list ret = 19 !!! 
llibusb_get_device_list ret = 19 !!! 
llibusb_get_device_list ret = 19 !!! 
hdev NULL!  usb.cpp 351
usb write error!: Resource temporarily unavailable

This is fixed for me by switching to a USB 2.0 port

kamze commented 6 years ago

I am having the same problem: hdev NULL! usb.cpp 351 usb write error!: Resource temporarily unavailable. I put the rules switched to usb no thing worked so far. I noticed that the rule for my example (Guidance-SDK) was not correct because the idVendor and idProduct did not match with the lsusb output so I changed the rule and it didnt work any idea please ?