При попытке использовать мой USRP в GNU Radio я получаю" нет устройств, найденных для - - - - - > " ошибка
при попытке выполнить радиопрограмму GNU, использующую USRP, я получаю обратную трассировку ошибки ,которая (в Python) обычно заканчивается:
self.u = uhd.usrp_source(device_addr=args, stream_args=uhd.stream_args('fc32'))
File "/home/marcus/.usrlocal/lib64/python2.7/site-packages/gnuradio/uhd/__init__.py", line 122, in constructor_interceptor
return old_constructor(*args)
File "/home/marcus/.usrlocal/lib64/python2.7/site-packages/gnuradio/uhd/uhd_swig.py", line 2351, in make
return _uhd_swig.usrp_source_make(*args)
RuntimeError: LookupError: KeyError: No devices found for ----->
USRP работает.
2 ответов
вы всегда должны сначала протестировать функциональность raw UHD с помощью uhd_find_devices
инструмент:
uhd_find_devices
если он не находит ваше устройство, хотя оно загружается, мой опыт заключается в том, что у вас есть высокий шанс просто не иметь возможности общаться с устройством:
- если вы не используете UHD версия от Ettus' собственные репозитории, особенно на не-Новом Ubuntus, ваш UHD может быть просто старше устройства и не может поговорить с ним. Первая строка вывода
uhd_find_devices
будет содержать информацию о версии. На момент написания (октябрь 2014), 3.9 является последней версией. Если возможно, всегда используйте последнюю версию.- B200 / B210 нуждается по крайней мере 3.6.0, но функциональность значительно улучшилась с 3.8.4
- X300 / X310 необходимо по крайней мере 3.7.0
- B200mini нуждается в 3.9
- USRP1/2 / B100/N200/N210 должны напрямую поддерживаться, но самые старые версии вы найдете в дикий. Не так много для всех дочерних плат, которые вы можете использовать с ними – как уже упоминалось, попробуйте использовать последнюю версию.
- если вы используете USB подключенное устройство (USRP B200, B210, B200mini, B100, USRP1), скорее всего, вы либо
- в Linux: нет установлены правила udev необходимо разрешить "нормальным" пользователям общаться с USRPs; проверьте, есть ли
/etc/udev/rules.d/
содержится что-то вродеuhd-usrp.rules
. - в Windows: возможно, у вас нет установлены драйверы USB для Windows.
- если вы сами создали UHD (также, если вы установили GNU Radio через
build-gnuradio.sh
илиpybombs
), возможно, отсутствовали библиотеки USB. Убедитесь, что ваши журналы UHD cmake содержат "включение USB". - USB3: некоторые хост-контроллеры USB3 не ведут себя в соответствии со стандартами, и подключение не может быть достигнуто. Если ваш USRP обнаружен, когда подключенный к порту USB2 (любой, кто обычно не Синий), Вы должны быть в порядке.
- в Linux: нет установлены правила udev необходимо разрешить "нормальным" пользователям общаться с USRPs; проверьте, есть ли
- если у вас networked устройства (платы USRP Х300/X310 с 1Гбит/10Гбит сети Ethernet, платы USRP П200части/N210, USRP2)
- убедитесь, что ваш сетевой интерфейс
- 1Gbit-способный (или 10GE, если применяется); "быстрый Ethernet" (10/100Mbit) NICs не работают С USRPs.
- не сетевой контроллер Intel 82579LM (только Сетевой контроллер PCIe IC известен тем, что иногда сбрасывает пакеты, не сообщая операционной системе
- не адаптер USB3-Gigabit (они, как правило, делают интересный переупорядочивание пакетов, что делает их непригодными для высокоскоростных образцов реального времени)
- убедитесь, что ваш компьютер находится в той же IP-сети. По умолчанию USRPs имеют адреса из , а не на вашем ПК.
- убедитесь, что ваш сетевой интерфейс
как быстрый тест ли ваши ПК, УСРП и конфигурация ИП привязывать и прибора правильны, загружают течение GNU Radio Live DVD2 (который, кстати, также содержит обильное количество классных примеров), загрузите его, и попробовать uhd_find_devices
там.
1 ваш пробег может отличаться, так как каждый дистрибутив имеет свое представление о том, как управление брандмауэром
2 пожалуйста, используйте торрент-файлы , если это возможно-трафик Amazon AWS не является бесплатным для сопровождающих проекта GNU Radio. Торрент-файл также использует серверы AWS в качестве источника, но пытается получить часть изображения от других пользователей.
Выполнить Следующую Команду :
sudo gedit /usr/lib/python2.7/dist-packages/gnuradio/uhd/uhd_swig.py
в строке containig device_addr
добавить B210
как его значение.
Args:
device_addr : B210