F4HQJ: Balise WSPR 14 Mhz v2.00 à base de ESP32 et SI5351

Cette balise a été conçue pour émettre automatiquement des trames WSPR sur la bande radioamateur des 20 mètres.
Elle fait suite à la V1.0 qui elle n’était pas connectable.

Présentation

Le projet repose sur un ESP32U qui assure la gestion générale de la balise :
Génération des trames WSPR, programmation des émissions, affichage, interface utilisateur et serveur Web.

Une horloge DS3231 permet à la balise de fonctionner de manière totalement autonome, sans nécessiter de connexion Internet permanente.
Le Wi-Fi reste une fonction optionnelle destinée principalement à la configuration et à la synchronisation de l’heure.

La chaîne générale est :
ESP32U → Si5351 → filtre passe-bas →  amplificateur RF → filtre passe-bas de sortie

ESP32U – Le contrôleur principal

L’ESP32U constitue le cœur de la balise.

Il assure notamment :

  • la génération du message WSPR ;
  • le pilotage du Si5351 ;
  • la lecture de l’horloge DS3231 ;
  • le calcul des créneaux d’émission ;
  • la gestion de l’écran TFT ;
  • la lecture de l’encodeur KY-040 ;
  • la gestion du contact CW manuel ;
  • la mémorisation des paramètres ;
  • la connexion Wi-Fi optionnelle ;
  • le fonctionnement du serveur Web.

Si5351 – Générateur RF

Le Si5351 génère directement le signal RF utilisé pour l’émission.
Il est piloté par l’ESP32 via le bus I²C.

Pour le WSPR, l’ESP32 fait varier très légèrement sa fréquence afin de produire les quatre tonalités FSK du protocole WSPR.

Le niveau de sortie du Si5351 peut être sélectionné par logiciel :
2 mA / 4 mA / 6 mA / 8 mA et dans mon montage, le réglage 4 mA a notamment été testé.

Après filtrage et sur une charge de 50 Ω, nous avons mesuré environ +5 dBm.

Filtre passe-bas après le Si5351

Le signal brut produit par le Si5351 est de nature numérique et contient donc de nombreuses composantes harmoniques.

Un filtre passe-bas 20 mètres est installé après le générateur.

Son rôle est de conserver essentiellement le fondamental autour de 14 MHz et d’atténuer les harmoniques supérieures.
La mesure effectuée après ce filtre montre une belle sinusoïde d’environ 1,12 Vpp sur 50 Ω.

Amplificateur RF

Un premier amplificateur a été réalisé autour d’un 2N5109.

Son rôle est d’amplifier les quelques milliwatts provenant du Si5351 pour obtenir une puissance RF suffisante pour l’émission WSPR.

Les essais ont montré qu’il était possible d’obtenir plusieurs centaines de milliwatts, mais également que l’étage devenait sensible à la charge présentée par le filtre de sortie.

Un courant de repos d’environ 60 mA a notamment été testé avec un échauffement raisonnable du transistor.

Un nouvel étage utilisant un 2N3866 est également étudié afin d’obtenir une puissance de l’ordre de 300 mW avec une bonne stabilité. C’est ce dernier qui a été retenu.


Filtre passe-bas de sortie

Un deuxième filtre passe-bas est prévu après l’amplificateur RF.
Il est indispensable, même si un filtre est déjà présent après le Si5351.

En effet, l’amplificateur RF peut lui-même recréer des harmoniques. C’est le même que celui trouvé dans la V1.0

La chaîne devient donc :

Si5351 → LPF  → amplificateur → LPF → antenne

Le filtre final doit notamment réduire les composantes à :

  • 28 MHz : deuxième harmonique ;
  • 42 MHz : troisième harmonique ;
  • Ainsi que les harmoniques supérieures.

DS3231 – Horloge temps réel

Le DS3231 fournit à la balise une horloge précise et indépendante.

C’est particulièrement important pour le WSPR, car les émissions doivent commencer sur des créneaux temporels précisément définis.

La présence du DS3231 permet à la balise de continuer à fonctionner même si :

  • le Wi-Fi est absent ;
  • la box Internet est arrêtée ;
  • Internet est indisponible.

Le Wi-Fi n’est donc pas nécessaire au fonctionnement normal de la balise.

L’heure peut également être synchronisée par NTP lorsque le Wi-Fi est disponible.

Écran TFT ST7735 128 × 160

L’écran couleur ST7735 constitue l’interface principale de la balise.
L’affichage a été spécialement conçu pour rester lisible sur ce petit écran.

Il indique notamment :

  • QRZ
  • Locator
  • La fréquence d’émission ;
  • L’heure UTC ;
  • La puissance WSPR programmée ;
  • L’heure du prochain créneau d’émission.

Pendant une transmission WSPR, un écran spécifique indique que la balise est en émission.

Le programme a également été optimisé pour éviter le clignotement de l’écran lors de la mise à jour de l’heure.

Encodeur KY-040

Le KY-040 permet de commander localement la balise sans ordinateur ni téléphone.

La rotation de l’encodeur permet de parcourir les différentes options du menu et son bouton-poussoir permet de sélectionner une fonction.

Il permet notamment d’accéder aux réglages d’émission et aux fonctions principales de la balise.

Contact CW manuel

Une entrée supplémentaire de l’ESP32 est réservée à un contact CW.

Lorsque ce contact est fermé, la balise peut produire une porteuse RF continue.

Cette fonction est particulièrement utile pour :

  • contrôler la fréquence ;
  • régler l’amplificateur RF ;
  • régler les filtres ;
  • mesurer la puissance ;
  • effectuer les mesures à l’oscilloscope ;
  • tester l’antenne.

Elle évite d’avoir à attendre une trame WSPR pour effectuer les réglages RF.

Interface Web Wi-Fi

Le Wi-Fi est volontairement optionnel.

Lorsque la balise réussit à se connecter au réseau Wi-Fi, son adresse IP est affichée pendant environ 3 secondes au démarrage.

Il suffit ensuite d’entrer cette adresse dans le navigateur d’un ordinateur, d’une tablette ou d’un smartphone connecté au même réseau.

La page Web permet notamment :

  • De visualiser l’état de la balise ;
  • De modifier l’indicatif ;
  • De modifier le locator ;
  • De régler la fréquence ;
  • De régler la puissance WSPR déclarée ;
  • De modifier l’intervalle entre les transmissions ;
  • De régler manuellement le DS3231 ;
  • De synchroniser l’horloge par NTP ;
  • D’appliquer une correction au Si5351 ;
  • D’activer ou désactiver les transmissions ;
  • De consulter le compteur de trames ;
  • De consulter la température du DS3231 ;
  • De redémarrer l’ESP32.

Les paramètres importants sont mémorisés dans la mémoire non volatile de l’ESP32.

Fonctionnement sans Wi-Fi

L’une des caractéristiques importantes du projet est son autonomie.

Une fois configurée, la balise peut fonctionner simplement avec :

ESP32U + DS3231 + Si5351 + écran + étage RF

Le DS3231 fournit l’heure et l’ESP32 détermine automatiquement les prochains créneaux d’émission.

Le Wi-Fi peut donc être indisponible sans empêcher les transmissions WSPR.

Après avoir branché le montage sur mon antenne « en V » à 1,80m du sol, les repprts sont arrivés sur le site WSPR.MAP.

Architecture générale

La balise complète peut être résumée ainsi :

DS3231

ESP32U

Si5351

Filtre passe-bas 20 m

Amplificateur RF

Filtre passe-bas 20 m de sortie

Charge 50 Ω / antenne

Objectif final

L’objectif est d’obtenir une petite balise WSPR 20 mètres d’environ 300 mW, autonome, stable en fréquence et suffisamment propre spectralement pour être raccordée à une antenne.

Le choix d’une puissance relativement faible est parfaitement adapté au principe du WSPR : Ce mode est précisément conçu pour permettre la détection de signaux extrêmement faibles sur de très longues distances.

La priorité du projet n’est donc pas d’obtenir la puissance maximale, mais d’obtenir une émission stable en fréquence, correctement synchronisée et spectralement propre.

Voici le tableau de câblage complet de la balise WSPR 20 m F4HQJ avec :

  • ESP32U
  • Si5351
  • DS3231
  • ST7735 128×160
  • KY-040
  • Contact CW manuel

 

Alimentation

Module Alimentation
ESP32U 5 V sur VIN ou USB
Si5351 3,3 V
DS3231 3,3 V
ST7735 3,3 V
KY-040 3,3 V
Contact CW Aucun

Toutes les masses doivent être reliées ensemble.

 

Si5351

Si5351 ESP32U
VCC 3V3
GND GND
SDA GPIO21
SCL GPIO22
CLK0 Vers filtre passe-bas 20 m

Découplage :

  • 100 nF entre VCC et GND
  • 10 µF entre VCC et GND

au plus près du module.

 

DS3231

DS3231 ESP32U
VCC 3V3
GND GND
SDA GPIO21
SCL GPIO22

Le DS3231 partage le bus I²C avec le Si5351.

Découplage :

  • 100 nF
  • 10 µF

 

Écran ST7735

ST7735 ESP32U
VCC 3V3
GND GND
SCL GPIO18
SDA (MOSI) GPIO23
RES GPIO4
DC GPIO2
CS GPIO5
BL 3V3

 

KY-040

KY040 ESP32U
+ 3V3
GND GND
CLK GPIO32
DT GPIO33
SW GPIO25

Ajouter :

  • 100 nF entre + et GND

 

Contact CW manuel

Contact ESP32U
Une borne GPIO26
Autre borne GND

Configuration :

GPIO26 —- contact —- GND

L’entrée est configurée en :

INPUT_PULLUP

Sortie RF

Élément
CLK0 Si5351
Filtre passe-bas 20 m
Atténuateur 6 à 10 dB
Driver RF
Filtre passe-bas final
Antenne ou charge 50 Ω

Découplage alimentation ESP32

Au plus près de l’ESP32 :

Valeur Type
100 nF céramique
10 µF électrolytique
470 µF électrolytique

Découplage alimentation driver RF

Sur le +13 V :

 

+13V

470µF

100nF

RFC

Collecteur

Le 100 nF doit être au plus près du transistor.

Résumé des GPIO utilisés

Fonction GPIO
I²C SDA 21
I²C SCL 22
ST7735 MOSI 23
ST7735 SCK 18
ST7735 CS 5
ST7735 DC 2
ST7735 RESET 4
KY040 CLK 32
KY040 DT 33
KY040 SW 25
Contact CW 26

Télécharger le fichier WSPRV2_ESP32.ino

Bonne réalisation. F4HQJ

Vous pouvez contacter Frédéric à l’adresse ci-dessous:

Vous pouvez recevoir un email dès la parution d’un article sur le Blog F8ASB.COM ainsi que des actualités Tech et radio, en entrant votre adresse email ICI. Tous les articles en 1 clic ICI
Ce contenu a été publié dans electronique, F4HQJ, informatique, Microcontrolleur, radioamateur, avec comme mot(s)-clé(s) , , , , , , , , , . Vous pouvez le mettre en favoris avec ce permalien.

Laisser un commentaire

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

Time limit is exhausted. Please reload CAPTCHA.

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur la façon dont les données de vos commentaires sont traitées.