discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Discuss-gnuradio] Unable to find USRP


From: Berndt Josef Wulf
Subject: Re: [Discuss-gnuradio] Unable to find USRP
Date: Sun, 15 May 2005 09:11:45 +0930
User-agent: KMail/1.7.2

On Sunday 15 May 2005 03:32, Eric Blossom wrote:
> On Sat, May 14, 2005 at 06:41:04PM +0930, Berndt Josef Wulf wrote:
> > Ok, it's working again. I had to rebuild libusb after a kernel upgrade.
> > The usrp example script files run fine now. It seems to perform better
> > than previously. This prompted me to run the benchmark_usb.py script,
> > which unfortunately fails with the following message:
>
> OK.
>
> It's failing to open the control end point and can't load it's firmware.
>
> Perhaps it's some kind of file permission problem.
>
> A quick look at the bsd.c file from libusb-0.1.10a reveals that it
> tries to open files with names like these:
>
>       /dev/usb*
>       /dev/ugen*
>
> If this semi-informed guess doesn't work go to "Plan B".
>
> Plan B: run gdb on "usrper load_standard_bits" and step into the
> libusb code to figure out where it's really failing to open the cmd
> interface.  [The libusb interface doesn't propagate much useful info
> up to the app when it can't open a device/endpoint.]

Plan A:
The permissions and they are fine.

Plan B:
/usr/pkg/bin/usrper load_standard_bits
executes without errors. 

I ran ktruss on the benchmark.py script itself revealing that the ugen device 
is busy when accessed. It appears that this device was opened prior and never 
closed.

[...]
29861 python2p3 resume kernel
 29861 python2p3 ioctl(0x3, _IOWR('U',0x6f,0x18), 0xbfbfdbb0) = 0
       "address@hidden"
 29861 python2p3 access("/usr/pkg/share/usrp/rev2/usrp_firmware.ihx", 0x4) = 0
 29861 python2p3 open("/dev/ugen0.00", 0x2, 0xbd4be02f) Err#16 EBUSY
 29861 python2p3 open("/dev/ugen0.00", 0, 0xbd4be02f) Err#16 EBUSY
 29861 python2p3 issetugid()                       = 0
 29861 python2p3 issetugid()                       = 0
 29861 python2p3 open("/usr/share/nls/nls.alias.db", 0, 0) Err#2 ENOENT
 29861 python2p3 open("/usr/share/nls/nls.alias", 0, 0xbfbfcc38) = 6
 29861 python2p3 fcntl(0x6, 0x2, 0x1)              = 0
 29861 python2p3 __fstat13(0x6, 0xbfbfcc40)        = 0
 29861 python2p3 mmap(0, 0x5f0, 0x1, 0x2, 0x6, 0, 0, 0) = 0xbd452000
 29861 python2p3 close(0x6)                        = 0
 29861 python2p3 munmap(0xbd452000, 0x5f0)         = 0
 29861 python2p3 open("/usr/share/nls/C/libc.cat", 0, 0xbfbfcce8) = 6
 29861 python2p3 __fstat13(0x6, 0xbfbfccd0)        = 0
 29861 python2p3 mmap(0, 0x105b, 0x1, 0x1, 0x6, 0, 0, 0) = 0xbd451000
 29861 python2p3 close(0x6)                        = 0
 29861 python2p3 munmap(0xbd451000, 0x105b)        = 0
 29861 python2p3 write(0x2, 0xbfbfd1d0, 0x32)      = 50
       "open_nth_cmd_interface: open_cmd_interface failed\n"
 29861 python2p3 write(0x2, 0xbfbfd220, 0x4a)      = 74
       "usrp: failed to load firmware /usr/pkg/share/usrp/rev2/usrp_firmware."
 29861 python2p3 break(0x83da000)                  = 0
 29861 python2p3 break(0x83de000)                  = 0
 29861 python2p3 break(0x83e1000)                  = 0
 29861 python2p3 write(0x2, 0xbdbc0a00, 0x23)      = 35
       "Traceback (most recent call last):\n"
 29861 python2p3 open("./benchmark_usb.py", 0, 0x1b6) = 6
 29861 python2p3 write(0x2, 0xbfbfde50, 0x2c)      = 44
       "  File "./benchmark_usb.py", line 106, in ?\n"
 29861 python2p3 __fstat13(0x6, 0xbfbfd8d0)        = 0
 29861 python2p3 read(0x6, 0x83df000, 0x2000)      = 3282
       "#!/usr/bin/env python\n#\n# Copyright 2004,2005 Free Software Foundat"
 29861 python2p3 write(0x2, 0xbdbb062e, 0x4)       = 4
       "    "
[...]

This is similar to the problem I had with the audio device that doesn't permit 
it to be opened by two or more processes, see the lines containing EBUSY. I 
will try to figure out which part of benchmark_usb.py doesn't close the ugen 
device.

The complete logfile is available on

ftp://ftp.netbsd.org/pub/NetBSD/misc/wulf/benchmark_usb.log

cheerio Berndt
-- 
Every man who says frankly and fully what he thinks is doing a public service.
[Leslie Stephen]




reply via email to

[Prev in Thread] Current Thread [Next in Thread]