Installation d'une carte USRP N210¶
Après avoir installé le pilote UHD, nous pouvons à présent piloter une carte de radio logicielle Ettus Research USRP N210 connectée à l'ordinateur via une interface Gigabit Ethernet. Nous supposons par la suite une installation sous Ubuntu 14.04 avec le pilote UHD précompilé par Ettus (voir Installation du pilote UHD et de GNU Radio).
Assemblage de la carte¶
Les cartes de radio logicielle utilisées sur la plate-forme RIESCO se composent de trois parties :- une carte mère USRP N210 ;
- une carte fille radiofréquence WBX ;
- une horloge asservie par GPS.
- TX/RX -> RF1 ;
- RX2 -> RF2.
Attention : ne jamais mettre sous-tension une carte USRP sans avoir appliqué une charge adaptée sur le port RF1.
Configuration réseau et optimisation du système d'exploitation¶
Nous supposons que la carte USRP possède l'adresse 192.168.10.2
avec un masque de 24 bits (par défaut) ; par conséquent, nous positionnons l’interface de l’ordinateur sur 192.168.10.1
.
La configuration statique de l’interface peut être réalisée dans le fichier /etc/network/interfaces
dans lequel on ajoute les lignes suivantes.
auto eth0 iface eth0 inet static address 192.168.10.1 netmask 255.255.255.0
Il reste ensuite à redémarrer les connexions réseau avec
sudo service network-manager restart sudo service networking restart
Une fois l’interface réseau configurée (vérifier avec sudo ifconfig
), nous pouvons détecter la carte à l’aide du pilote UHD.
uhd_find_devices
Des informations supplémentaires sur la configuration matérielle de la carte peuvent être obtenues à l’aide de la commande suivante (ex. : carte fille, type de connexion...).
uhd_usrp_probe
Si la commande précédente renvoie une erreur liée à une incompatibilité entre le pilote UHD et le firmware, il est nécessaire de mettre à jour ce dernier à l'aide de la commande suivante.
sudo uhd_images_downloader /usr/lib/uhd/utils/usrp_n2xx_simple_net_burner --addr=192.168.10.2
Optimisation du système pour le pilote UHD¶
Priorité d'exécution du pilote UHD¶
Il est généralement nécessaire d'accorder aux utilisateurs du pilote un haut niveau de priorité pour le traitement en temps réel des échantillons. Pour cela, il faut ajouter dans /etc/security/limits.conf
la ligne suivante
@usrp - rtprio 99
On créé ensuite le groupe usrp
et l'on ajoute dans ce groupe les différents utilisateurs du système susceptibles d'utiliser le pilote UHD.
groupadd usrp adduser <nom_d'utilisateur> usrp
Taille maximale des tampons d'émission-réception¶
Il est également recommandé de modifier la taille des tampons d'émission-réception en ajoutant les lignes suivantes au fichier /etc/sysctl.conf
.
net.core.rmem_max=33554432 net.core.wmem_max=33554432
Après avoir configuré ces deux axes d'optimisation, il est nécessaire de redémarrer la machine afin de pouvoir en bénéficier.
Vérification du bon fonctionnement¶
La carte de radio logicielle est à présent prête à l’emploi, nous pouvons ainsi vérifier que la liaison entre celle-ci et l’ordinateur fonctionne correctement.
/usr/share/uhd/examples/benchmark_rate --duration 20 --rx_rate 10e6
Parmi les erreurs rencontrées, la perte de segments se matérialise par l’affichage de symboles “UUUUUU...” ou “OOO...” sur la sortie standard. Ces deux cas de figure signifient respectivement que l’ordinateur n’envoie pas les données suffisamment rapidement à la carte ou que celle-ci envoie les données trop rapidement à l’ordinateur (voir http://gnuradio.org/redmine/projects/gnuradio/wiki/UsrpFAQGen).
Mis à jour par Damien Roque il y a environ 10 ans · 2 révisions