Ajouter un S-mètre vocal à son relais SVXLink

Dans ma configuration de relais SVXLink, j’utilise un raspberry pi et deux postes Kenwood TM451 (voir descriptif sommaire du relais). Je vais vous expliquer la partie logicielle qui vous permet de faire connaitre à l’utilisateur du relais le niveau de signal auquel il arrive au relais. J’ai écris un article spécifique pour présenter l’endroit où récupérer le signal RSSI sur le Kenwood TM-451.

Le Raspberry Pi n’est pas équipé d’entrée analogique direct. Nous devons faire l’acquisition de la tension RSSI renvoyé par le transceiver, par l’intermédiaire d’un circuit intégré convertisseur et communiquant en SPI (Serial Peripheral Interface). Ce bus fonctionne sur 4 fils. J’ai choisi un MCP3204 de Microship qui dispose de 4 voies d’entrées analogiques (soit 3 réserves disponibles), convertisseur 12 bits (2.77€ chez Reichelt hors port).
MCP 3204Voici le raccordement réalisé sur le port GPIO du Raspberry Pi :

  • PIN1 – CH0 = Entrée à mesurée (attention max 3.3V pour le Raspberry – mise à niveau en amont nécessaire, avec un pont diviseur dans mon cas, mais de “haute” impédance – quelques M? pour ne pas dégrader l’affichage du S-metre sur le poste)
  • PIN2 à PIN4 –  CH1,CH2, CH3 (autres canaux analogiques ) en réserves
  • PIN7 – DGND mis à la masse
  • PIN 8 – CE\ / SHDN branché sur Raspberry Port P1 – PIN 24 GPIO 8 – CE0
  • PIN 9 – DIN branché sur Raspberry Port P1 – PIN 19 GPIO 10 MOSI
  • PIN 10 – DOUT branché sur Raspberry Port P1 – PIN 21 GPIO 9 MISO
  • PIN 11 – CLK branché sur Raspberry Port P1 – PIN 23 GPIO 11 SCLK
  • PIN12 – AGND branché à la masse
  • PIN 13 – VREF à +3.3V
  • PIN 14 – VDD à +3.3V

Coté logiciel, dans un premier temps, nous allons installer le langage python et le module de gestion du bus SPI.

et valider le fonctionnement (Me demande si cela est nécessaire si pas blackliste levé ?),

Puis, modifier l’interdiction (blacklist) d’exploitation du port SPI (mettre en commentaire la ligne spi-bcm2708 si elle existe dans le fichier de configuration).

 

 

Enfin, le corps du script python va effectuer la mesure en boucle des quatre voies analogiques. Vous le modifierez pour mettre à l’échelle les mesures (mise en correspondance les tensions au S-mètre. (source https://gist.github.com/yoggy/7096133)

 

 Dans le fichier /etc/svxlink/smeter/smeter.tcl, la variable “signal” va ainsi contenir la valeur courante de S-mètre entre -1 à 24 .

Donnez les droits d’exécution sur le fichier

 

Et demander le lancement automatique au démarrage dans /etc/rc.local

Ensuite, vous aurez créer les fichiers audio (.wav) correspondant S1.wav, S2.wav,… S9.wav, S9+.wav).

Le fichier de gestion du roger beep Logics.tcl est à modifier pour qu’au laché de micro, le fichier son correspondant au signal soit joué.

Ajouter l’appel à la fonction smetre dans proc send_rgr_sound.

 “Je complète avec quelques éléments plus précis ultérieurement…”

Une réflexion au sujet de « Ajouter un S-mètre vocal à son relais SVXLink »

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *