Peu à peu les différentes briques s’assemblent les unes dans les autres. Nous allons maintenant procéder à la configuration de Direwolf ainsi qu’au réglage du niveau audio en réception.
Préparatifs
Branchez votre carte son CM108 sur un des ports USB de votre Orange Pi Zero3. Il faudra veiller par la suite à toujours utiliser le même port USB sous peine de devoir ajuster la configuration de Direwolf. Il y a bien une possibilité de nommer chaque carte son de façon fixe mais, par soucis de ne pas trop surcharger les tutos, nous ne le ferons pas.
L’image ci dessous montre mon Orange Pi Zero3 avec mon prototype de care CM108 fait à l’arrache. L’ensemble fonctionne avec un clone de Icom IC2E.
Il nous faut d’abord déterminer le nom de la carte son qu’il nous faudra ensuite saisir dans le fichier de configuration. Direwolf livre un petit utilitaire bien pratique pour cela. Saisissez la commande suivante:
cm108
L’utilitaire devrait vous afficher la sortie suivante:
Notez les deux colonnes « ADEVICE » celles-ci contiennent les noms de la carte son que nous pourrons utiliser par la suite. Prenez note d’un de ces noms. Nous pouvons choisir l’un ou l’autre. Pour ma part, je choisis plughw:Device,0
Création du fichier de configuration
Nous allons utiliser l’éditeur nano que nous avons déjà utilisé à l’étape de la configuration du WiFi. Nous n’utiliserons pas un des fichiers d’exemple livrés avec Direwolf mais allons en créer un de toutes pièces. Ouvrons donc l’éditeur nano en lui demandant de nous créer un fichier direwolf-tracker.conf qui sera placé dans le dossier /usr/local/etc/. Petite précision ici : par convention, tous les fichiers de configuration qui ne proviennent pas de programmes installés via le gestionnaire de paquets apt doivent se trouver dans le dossier /usr/local/etc. Ceci évite des conflits éventuels et garde le système bien ordonné!
sudo nano /usr/local/etc/direwolf-tracker.conf
Petit rappel quant à l’utilisation de nano : la navigation se fait avec les flèches du clavier, les touches CTRL et X permettent de quitter et l’éditeur demandera si le fichier doit être sauvegardé.
Ci-dessous, le contenu du fichier de configuration de Direwolf. La ligne ADEVICE0 devra être adaptée avec la valeur que vous avez noté à l’étape CM108 ! Pensez aussi à mettre votre propre indicatif! Le reste des options est explicité juste après.
# Audio Device
ADEVICE0 plughw:Device,0
ACHANNELS 1
# Configuration du port du TNC
CHANNEL 0
MYCALL N0CALL-9
MODEM 1200 AD+
PTT CM108
Langage du code : PHP (php)
- Les lignes commençant par des # sont des commentaires
- ADEVICE0 pour « Audio Device 0 » qui correspond au premier périphérique audio. Direwolf est capable de gérer plusieurs cartes sons en parallèle. La seule limite est la puissance du CPU. Ici, nous utilisons un seul périphérique audio, et indiquons que celui-ci doit est la carte son plughw:Device,0
- ACHANNELS 1 pour « Audio Channels 1 ». Nous indiquons ici que le ADEVICE mentionné juste au dessus n’utilisera qu’un seul canal. Il est en effet possible de « couper » une carte son stéréo en en deux et d’utiliser le côté gauche pour un mode et le côté droit pour un autre mode. Malheureusement, l’entrée audio de la CM108 est en mono, donc cela ne sera pas possible.
- CHANNEL 0 pour « Canal 0 ». Dans le temps, sur les TNC harware multi ports ont parlait de port. L’auteur de Direwolf a préféré appeler cela CHANNEL car le terme port prêtait à confusion selon lui. Ici c’est donc le premier canal audio du premier périphérique audio ou, dans la sémantique Direwolf le premeir CHANNEL du ADEVICE0. Si ADEVICE0 avait un second channel, cela serait CHANNEL 1.
- MYCALL N0CALL-9 pour « Mon Call ». Nous définissons ici l’indicatif qui sera utilisé pour CHANNEL 0. Remplacez N0CALL par votre propre indicatif. Conservez le SSID en -9 car nous allons faire du mobile!
- MODEM 1200 AD+ pour « Modem 1200bps Algorithme A et D avec neuf slicers ». Pour le décodage des trames AFSK Direwolf possède deux algorithmes différents. Nous pouvons les faire tourner en parallèle car nous avons largement assez de capacité CPU et ceci améliorera la qualité du décodage. Le + indique à Direwolf d’utiliser 9 « slicers » par algorithme de décodage. Les « slicers » sont tout simplement 9 combinaisons de filtres avec différents gains afin de compenser les différences d’amplitude éventuelles entre les deux tonalités (1200 et 2200Hz) du signal packet. Au total nous aurons donc 9 décodeurs qui tourneront en parallèle !
- PTT CM108 cette commande est plutôt explicite. On indique à Direwolf d’utiliser la carte son CM108 pour la commutation en émission.
Premier test de la configuration
Une fois la configuration en place nous pouvons la tester. Ne brancher pas votre TRX avec votre carte son, car vous risquez de commencer à recevoir des trames qui vont faire défiler l’écran et nous voulons analyser les éventuels avertissements liés à notre configuration.
Lancez Direwolf en lui indiquant le chemin complet du fichier de configuration. Ceci se fait au moyen du paramètre -c suivi du chemin complet du fichier de configuration.
direwolf -c /usr/local/etc/direwolf-tracker.conf
Réglage du niveau audio en réception
Branchez maintenant votre TRX à votre carte son, callez le sur 144.800MHz en FM. Si vous utilisez la sortie haut-parleur de votre poste reglez le volume entre 1/3 et 1/2.
Ensuite, relancez Direwolf comme ci-dessus en lui spécifiant le chemin de votre fichier de configuration.
direwolf -c /usr/local/etc/direwolf-tracker.conf
Vous devriez voir apparaître les trames APRS brutes reçues ainsi qu’une interprétation partielle de ces trames par Direwolf. Si vous voyez défiler du texte en rouge en dessous de ces trames, pas de panique! Vous n’avez aucun soucis. Le problème c’est les autres. Direwolf intègre une validation des trames APRS. Toutes les trames qui ne collent pas 100% à la spécification afficheront un texte en rouge avec le détail de ce qui ne va pas.
Nous allons maintenant passer au réglage des niveaux audio proprement dit. Laissez tourner Direwolf et ouvrez à présent une seconde instance de PuTTY et connectez vous une seconde fois à votre Orange Pi Zero3.
Dans cette seconde instance lancez la « table de mixage » alsamixer (Adanced Linux Sound Architecture Mixer)
alsamixer
Dans un premier temps il nous faut sélectionner notre carte son pour la configurer. Suivez les étapes ci-dessous afin de sélectionner la carte son USB et afficher les contrôles de niveau.
Maintenant que nous somme sur la configuration des niveaux de notre carte son USB CM108, nous allons commencer par désactiver l’AGC. C’est important, car cela évite à Direwolf d’avoir des niveaux qui bagottent sans cesse et viendraient perturber le décodage.
La navigation dans alsamixer et la séléction d’un élément se fait avec les flèches gauche et droite. Suivez la procédure ci-dessous afin de désactiver l’AGC
Placez vos deux instances de PuTTY (celle avec Direwolf et celle avec alsamixer) côte à côte. Observez les trames APRS qui défilent et notamment le valeur « audio level ». Vous constaterez que, peut être direwolf, râle quant au niveau d’entrée trop faible. Ne touchez pas au volume de votre poste.
Nous allons ajuster le niveau de l’entrée micro afin que l’audio reçu par Direwolf ai un niveau acceptable permettant un décodage fiable. Suivez la procédure ci-dessous:
Il faut régler le niveau audio afin que Direwolf affiche une valeur « audio level » d’environ 50 pour la grande majorité des trames reçues. Dans la pratique des valeurs comprises entre 40 et 60 sont acceptables. Il est important de savoir que les trames bruitées afficheront un niveau audio supérieur à des trames reçues fort et clair.
Une fois les niveaux réglés vous pouvez quitter alsamixer avec la touche Echap (Esc). Il ne nous reste plus qu’à sauvegarder les réglages audio via la commande
sudo alsactl store
Attention tout changement même minime dans le réglage du volume de votre poste nécessitera la revérification du niveau de réception!
Conclusion
A présent nous avons une configuration basique de Direwolf. Nous avons deux algorithmes de décodage actifs (chacun avec 9 sous décodeurs) et avons ajusté les niveaux audio. Au prochain épisode nous passerons au réglage du niveau d’émission.