> > 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 problem is that benchmark_usb.py opens usrp.sink() and usrp.source(), both which use the open() calls to access the device. On *BSD this is not possible and is exactly the some problem as seen with the audio.sink() and audio.source() function that I hacked around. A possible generic solution to this is to acquire the filedescriptor for the device which is then used by the subsequent calls. e.g.: usrp_dev = usrp.open() <- instantiate device sink = usrp.sink(usrp_dev, ....) <- open source source = usrp.source(usrp_dev, .....) <- open sink similar for other sink/source devices that are used with GnuRadio. Else, *BSD will not be able to run scripts that use sink and source of the same device simultaneously.. cheerio Berndt -- Every man who says frankly and fully what he thinks is doing a public service. [Leslie Stephen] _______________________________________________ Discuss-gnuradio mailing list [email protected] http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
