Pour illustrer ce que permettra de faire la très proche version 0.16 et le système de scripts, voici un petit exemple : On cherche à faire un scanner de la bande FM, on va balayer de 88 à 108 Mhz, au pas de 100 KHz et s’arrêter à chaque fois qu’on trouve un signal assez fort.
Voici le script associé :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
/*——————————————–*/
/* Exemple de script pour scanner la bande FM */
/* demo gkSDR – (c) F4GKR */
/*——————————————–*/
var i=0 ;
var f = 0.0 ;
var level = 0 ;
// mettre le rxA en marche
gksdr.startRX();
// laisser le temps au récepteur de s’initialiser – attendre 300 millisecondes
gksdr.waitFor(300) ;
// en fonction de la fréquence actuelle, on regarde s’il faut retuner ou pas
f = gksdr.getRxFrequency();
if( (f>108.0) || (f<88.0)) {
// on se positionne sur 88 MHz
gksdr.setRxFrequency( 88.0 );
}
// on fixe le pas en fréquence à 100 KHz = 100 000 Hz
gksdr.setStepSize( 100000.0 );
// on se met en wfm … en demandant le démodulateur NBFM
// mais on positionne la bande sur 100 Khz = 2*50
gksdr.setDemodulator( ‘NBFM’,0,50000);
// scan
for( ;; ) {
gksdr.stepUp() ;
gksdr.waitFor( 300 );
level = gksdr.getSMeter();
if( level > –75 )
break ;
f = gksdr.getRxFrequency();
if( f > 108.0 ) {
gksdr.setRxFrequency( 88.0 );
}
}
|
Le script est sauvegardé dans le fichier “scripts/scanfm.js”. Le fichier de configuration gkSDR.conf est modifié en conséquence comme suit :
1
2
3
4
5
|
[Interface]
...
ACTION_2=./scripts/scann_fm.js
TEXT_2=Scanner FM
...
|
Le programme affiche alors un bouton (le bouton numéro 2) :
Il n’y a plus qu’à cliquer sur le bouton pour enclencher le scanner, qui s’arrêtera quand le S-mètre dépassera le seuil fixé ligne 30 et suivantes :
1
2
3
|
level = gksdr.getSMeter();
if( level > –75 )
break ;
|
A quoi ça sert de faire des scripts dans gkSDR ?
La suite est à lire sur le site de : F4GKR
A quoi ça sert de faire des scripts dans gkSDR ?