Grabber 7 bandes et programmation
Je sais pourquoi je n’aime pas la programmation, c’est toujours des prises de têtes sur fond de thread, mutex, références et ça fini à point d’heure… Je me suis encore torturé l’esprit, j’ai peu dormi, mais ça y est, j’ai gagné ! Mon dernier petit prog’ tourne au poil =)
J’ai écrit une application pour le qs1r, un récepteur SDR à conversion directe. Pour faire court, le programme relaye 7 réceptions différentes dans des câbles audio virtuels. Ceci permet de faire tourner derrière des programmes comme SpectrumLab, et ainsi générer des captures de waterfall QRSS.
Le gros du travail avait déjà été fait en amont par Alex (VE3NEA) qui à écrit le code Verilog pour le FPGA qui permet de downsampler 7 streams (cordic, décimation cic & filtrage). Lui-même à utilisé le framework open source de Phil (N8VB) qui à conçu et commercialisé le qs1r.
Le récepteur qs1r
Au passage, un gros merci à Alex, a qui j’avais demandé l’année passée de publier une partie de son code verilog. Depuis ce moment, je n’avais pas trouvé le temps de réaliser ces quelques lignes de code, mais j’ai enfin fini par m’y attaquer.
Un peu plus techniquement, j’utilise le framework QT avec GCC. La compilation est faite pour le moment pour Windows, mais le code est facilement portable sur Linux ou Mac (merci QT ! 🙂
Actuellement, je teste la stabilité du programme sur une semaine et ceci pour 3 bandes. Ensuite, après quelques petits correctifs (méthode push plutôt que pull, nettoyage du code et commentaire, etc…) je mettrais le source sur mon github ainsi qu’une release pour les binaires.
Voici un petit aperçu : (initialement 40m, 30m et 20m, mais les fréquences changent en fonction des demandes)
Dans les possibles évolutions, le programme pourrait être modifié pour fonctionner derrière CwSkimmer et sortir en plus des spots CW, des captures QRSS. Comme la communauté Skimmer/ReverseBeaconNetwork est assez peuplée et que le qs1r est largement utilisé, ceci pourrait donner un coup de boost aux activités QRSS.
Par ailleurs, le soft QRSS VD (de Scott, AJ4VD) pourrait être modifié pour accepter directement les données du qs1r sans passer par des câbles audio virtuels (VAC pour Windows, Jack pour Linux).
L’interface de configuration
Pour terminer, un rappel de la page du grabber installé à Foulab (VA2LTF). Pour le moment, je laisse tourner 3 bandes, et prochainement, plein pot sur 7 bandes 🙂
Update : Je l’ai passé en 7 bandes, ça fait plaisir à voir sur une seule page 🙂