Construire un émetteur SSTV avec le RP2350: du schéma au PCB avec JLCPCB
12 min
- SSTV PICO: un émetteur d'images HF compact à base de RP2350
- Générer directement le signal HF avec le RP2350
- Schéma électronique de l'émetteur SSTV PICO
- Fichiers Gerber et fabrication du PCB double couche
- Installer le firmware SSTV PICO
- Tester les modes SSTV et les sources d'images
- Vérifier la réception avec Yoniq ou QSSTV
- Conclusion: une caméra SSTV portable sans ordinateur à l'émission
- Références et fichiers du projet
À retenir
Le projet SSTV PICO d'Anthony Le Cren, F4GOH, transforme une image prise par une caméra OV5640 en signal radio HF grâce au microcontrôleur RP2350. Un PCB double couche réunit l'interface de commande, l'amplificateur et le filtre de sortie pour réaliser un émetteur SSTV compact.
- Acquisition d'images et commande depuis un écran tactile de 2 pouces
- Génération directe du signal HF à l'aide des blocs PIO du RP2350
- Émission manuelle ou automatique dans plusieurs modes SSTV
- Code source, firmware UF2 et fichiers Gerber disponibles dans le dépôt du projet
SSTV PICO: un émetteur d'images HF compact à base de RP2350
Je suis tombé par hasard sur un module Waveshare RP2350 Touch LCD 2 équipé d'un afficheur couleur tactile et d'un connecteur pour une mini-caméra. Grâce à l'expérience acquise lors de la conception de la balise WSPR, j'ai immédiatement vu le potentiel de cette carte pour réaliser un émetteur SSTV compact. Comme dans le projet WSPR, le microcontrôleur délivre directement le signal HF.

Figure 1: Le circuit imprimé enfiché sur le module Waveshare RP2350 Touch LCD 2.
Qu'est-ce que la SSTV?
La SSTV, pour Slow Scan Television, permet d'envoyer des images fixes sur une liaison radio. Contrairement à la télévision classique, elle transmet une image lentement, sous la forme d'un signal audio, en quelques dizaines de secondes ou quelques minutes.
Caractéristiques de l'émetteur SSTV
- Microcontrôleur Raspberry Pi RP2350
- 520 Ko de SRAM
- 16 Mo de mémoire flash
- Connecteur USB-C
- Écran LCD IPS tactile capacitif de 2 pouces
- Définition de 240 × 320 pixels et 262 000 couleurs
- Connecteur pour caméra OV5640
- Connecteur intégré pour la recharge d'une batterie Li-ion
- Prise en charge de PlatformIO sous macOS, Windows et Linux
- Alimentation par USB ou par une source externe de +5 V
- Amplificateur à transistor 2N2222, puissance maximale de 0,1 W sur la bande des 20 m
- Filtre passe-bas à composants montés en surface (CMS)
- PCB double couche disponible au format Gerber
- Bandes annoncées pour le projet: 160 m, 80 m, 60 m, 40 m, 30 m et 20 m
- Modes SSTV: Scottie 1, Scottie 2, Scottie DX, Martin 1, Martin 2, Wraase, Robot 36, Robot 72, PD50, PD90 et MP73
Générer directement le signal HF avec le RP2350
Le RP2350 peut générer directement le signal HF au lieu de produire uniquement l'audio SSTV destiné à un émetteur externe. La chaîne de transmission suit le principe suivant:
Acquisition de l'image → encodage SSTV → génération du signal HF → amplificateur → filtre → antenne
Le microcontrôleur génère numériquement les fréquences et les modulations nécessaires à la transmission. Cette approche de radio logicielle, ou SDR, permet de supprimer une partie de la chaîne analogique traditionnelle et d'obtenir un appareil très compact. L'augmentation des performances des microcontrôleurs rend ainsi possibles des montages qui auraient été beaucoup plus encombrants quelques années auparavant.
Les blocs PIO, pour Programmable I/O, constituent un atout majeur du RP2350. Ils exécutent des instructions rapides indépendamment du processeur principal, ce qui convient à la génération précise des signaux HF/SSTV en temps réel.

Figure 2: L'ensemble forme un appareil compact, utilisable comme une petite caméra SSTV portable.
Schéma électronique de l'émetteur SSTV PICO
Le montage s'organise autour de quatre blocs principaux: le module RP2350, l'interface utilisateur et la caméra, l'étage de génération HF, puis le filtre de sortie.
Module RP2350 Touch LCD 2
Le RP2350 constitue le cœur du système. Il est relié à l'écran tactile LCD, à la caméra OV5640, à l'OLED et aux boutons. Le connecteur J1 comporte notamment les signaux HF_PICO, GP29, SCL et SDA. Le bus I2C est partagé entre les différents périphériques.
Interface utilisateur, caméra OV5640 et PCF8574
La caméra OV5640 fournit les images au RP2350. La référence utilisée est une DVP 5MP ESP32-CAM OV5640, avec un angle de 65 degrés et un diamètre de 1,4 cm. Il faut respecter cette référence, car le logiciel du projet ne prend en charge que cette caméra.
Le PCF8574 sert d'extension d'entrées/sorties pour le bouton BP_MENU et les différentes commandes. Les GPIO des connecteurs J1 et J2 étant presque tous occupés par l'afficheur et la caméra, j'ai ajouté ce circuit pour commander une LED, gérer la commande PTT et détecter l'appui sur le bouton donnant accès au menu de configuration.
Sortie HF sur GPIO28 et amplification par le 2N2222
Le GPIO28 est disponible pour la sortie HF. Il s'agit de la seule broche libre permettant de réaliser cette fonction avec ce module. Le signal HF est ensuite amplifié par le transistor Q3, un 2N2222.
Lors de l'assemblage, le guide d'identification des broches d'un transistor au multimètre peut aider à vérifier le brochage du composant avant sa mise en place.
Filtre passe-bas et sortie pour la bande des 40 m
Le filtre passe-bas est constitué des inductances L3 et L4 et des condensateurs C5, C6 et C7. Il atténue les composantes HF indésirables produites par la génération numérique. Les valeurs du schéma correspondent à la bande des 40 m.
La sortie filtrée arrive sur le connecteur J5, identifié comme BNC sur le schéma et marqué HF OUT. Le filtre doit être adapté à la bande utilisée. Sa réalisation suit le même principe que dans le projet WSPR PICO, également présenté dans le numéro 1008 de Radio-REF.
Pour approfondir les contraintes de routage autour de l'étage HF et du filtre, consultez le guide de conception et fabrication des PCB RF.
Figure 3: Schéma électronique de l'émetteur. Cliquez sur l'image pour consulter les valeurs des composants en taille originale.
Fichiers Gerber et fabrication du PCB double couche
Le dépôt GitHub SSTV PICO contient les fichiers Gerber du circuit imprimé, le code source du logiciel et le firmware déjà compilé SSTV_pico_new.uf2.
Pour préparer le circuit à la fabrication, le guide des fichiers Gerber PCB explique le rôle des différentes données de fabrication. Vous pouvez ensuite importer les fichiers du projet afin d'obtenir un devis pour le PCB.
Installer le firmware SSTV PICO
Pour programmer le module, maintenez le bouton blanc BOOT enfoncé tout en branchant le câble USB. L'ordinateur reconnaît alors le module comme un disque amovible, de la même manière qu'une clé USB.
Copiez le fichier SSTV_pico_new.uf2 sur ce disque. Une fois la programmation terminée, le module redémarre automatiquement.
Accéder au menu de configuration
Maintenez le bouton BP_MENU du circuit imprimé enfoncé pendant le branchement de l'alimentation USB. Un port série de type COMx apparaît sous Windows, ou /dev/ttyACM0 sous Linux. Le message MENU s'affiche en jaune sur l'écran.
Ouvrez un terminal série, par exemple PuTTY, configuré à 115 200 bauds. Vous pouvez alors saisir les commandes de configuration. Le principe est identique à celui des projets WSPR précédents et permet d'utiliser différents ordinateurs et systèmes d'exploitation.
La commande help affiche les commandes disponibles. Les noms de commandes, les identifiants des modes et les messages ci-dessous sont conservés tels qu'ils apparaissent dans le firmware.
>help
Available commands
Set transmission frequency : freq 7040100
Set offset value : offset -200
Set callsign : call F4XYZ
Set locator : loc JN07DV
Set mode scottie1 scottie2 scottieDX : mode martin1
martin1 martin2 wrasse robot36
robot72 pd50 pd90 mp73
Set band 80m,60m,40m,30m,20m,freq : band 40m
Set modulo in minutes : minute 5
Set manual 0 /automatic 1 : auto 1
Set text overlay x : posx 15
Set text overlay y : posy 15
Set text color (0 to 9) : color 5
0: Black 1: White 2: Red 3: Orange
4: Yellow 5: Green 6: Cyan 7: Blue
8: Magenta 9: Gray
Scan I2C bus : scan
Save current configuration to EEPROM : save
Display current configuration : show
Reset all parameters to default : raz
Restart RPI pico : restart
Show this help message : help
Exit menu : exit
>
Exemple de configuration pour un premier essai
Voici la séquence utilisée pour configurer un essai en mode Martin 1 sur la bande des 40 m. L'indicatif F4GOH et le locator JN07DV correspondent à mon exemple et sont à remplacer par ceux de votre station.
>raz
>call F4GOH
>band 40m
>loc JN07DV
>mode martin1
>minute 5
>posx 10
>posy 200
>color 2
>auto 0
>save
>show
razréinitialise les paramètrescalletlocdéfinissent l'indicatif et le locatorband 40msélectionne la bande etmode martin1le mode de transmissionminute 5définit un intervalle de 5 minutes pour le fonctionnement automatiqueposx 10etposy 200règlent la position du texte incrustécolor 2sélectionne le rouge pour le texteauto 0conserve le déclenchement manuel de l'émissionsaveenregistre la configuration etshowl'affiche
Dans cet exemple, la commande show retourne la configuration suivante:
>show
Current configuration :
freq : 7035000 Hz
offset : -300
call : F4GOH
locator : JN07DV
mode : martin1
band : 40m
posx : 10
posy : 200
color : Red
TXing mode : MANUAL
minute : 5 min
>
Positionner l'indicatif et choisir le déclenchement
Les commandes posx et posy définissent les coordonnées du texte sur l'image. Le menu propose 10 couleurs, tandis que la police de caractères reste fixe.
Avec auto 0, il faut appuyer sur l'écran tactile pour envoyer une image. Avec auto 1, une image prise par la caméra est envoyée automatiquement selon l'intervalle choisi, soit toutes les 5 minutes dans cet exemple.
Tester les modes SSTV et les sources d'images
Lorsque la caméra fonctionne, le moniteur série permet d'effectuer des essais d'émission sans modifier la configuration initiale. Appuyez sur h pour afficher l'aide. Pour passer au mode Robot 36, par exemple, appuyez sur 7.
ktransmet l'image issue de la caméramtransmet une mire de testptransmet une image préenregistréeiactive le mode porteuse, utile pour régler le récepteursactive la veille avec le gain HF désactivé
Le mode i, appelé Idle mode dans le logiciel, génère une porteuse. Il facilite le réglage du récepteur pour placer cette porteuse à 1 200 Hz dans l'affichage en cascade, ou waterfall, du logiciel de décodage.

Figure 4: Une image prise par la caméra avec les informations de la station incrustées.

Figure 5: Exemple d'image préenregistrée utilisable pour les essais de transmission.

Figure 6: Mire de test à barres de couleur.
Raccourcis du moniteur série
Console exit
========== SSTV HELP ==========
1 : Select Scottie1 (RGB)
2 : Select Scottie2 (RGB)
3 : Select ScottieDX (RGB)
4 : Select Martin1 (RGB)
5 : Select Martin2 (RGB)
6 : Select Wrasse (RGB)
7 : Select Robot36 (YUV)
8 : Select Robot72 (YUV)
9 : Select PD50 (YUV)
a : Select PD90 (YUV)
b : Select MP73-N (YUV, Narrow)
k : Transmit camera image
m : Transmit test pattern
p : Transmit loaded image
i : Idle mode
s : Standby (RF gain off)
h : Show this help
===============================
Vérifier la réception avec Yoniq ou QSSTV
J'utilise Yoniq sous Windows. QSSTV constitue une autre possibilité sous Linux. Bien que Yoniq soit présenté en espagnol, son interface peut être configurée en anglais. Une fois l'entrée audio provenant du récepteur HF correctement paramétrée, le décodage des images est immédiat.
Ajustez si nécessaire le paramètre offset, qui sert de compensation, pour que la fréquence VFO du récepteur augmentée de 1 200 Hz corresponde à la fréquence configurée dans le menu de l'émetteur.
Pourquoi le projet utilise-t-il le QVGA?
Dans cette implémentation, la RAM disponible, limitée à 520 Ko, ne permet pas de transmettre une image en VGA, soit 640 × 480 pixels. Le logiciel utilise trois tampons mémoire pour convertir l'image de la caméra en RGB565 ou en YUV. Le format retenu est donc le QVGA, soit 320 × 240 pixels.
Conclusion: une caméra SSTV portable sans ordinateur à l'émission
L'intérêt principal du projet est de transformer directement une image en signal SSTV HF au moyen du microcontrôleur, sans passer obligatoirement par un ordinateur, une carte son ou un émetteur-récepteur HF classique. Le matériel est compact et peu coûteux: il ressemble à un mini-appareil photo portable SSTV.
Un Raspberry Pi sous Linux pouvait déjà réaliser une émission SSTV, mais avec une consommation et un coût plus élevés. Les projets d'émission et de réception SDR autour des microcontrôleurs de la famille Pico se multiplient et ouvrent de nouvelles possibilités pour les montages radio compacts.
Pour réaliser votre circuit imprimé à partir des fichiers du projet, importez les fichiers Gerber et obtenez un devis JLCPCB.
Références et fichiers du projet
Articles les plus lus
• Contrôleur Astronomique ESP32 : Un Système de Contrôle Professionnel pour l'Astrophotographie | PCB 4 Couches, Haute Puissance (30A) Fabriqué par JLCPCB
• PCBs d’effets guitare en petites séries de haute qualité – Fabrication JLCPCB
• JLCPCB au service de l’innovation : l’aventure d’un véhicule d’exploration autonome
• Comment les PCB flexibles de JLCPCB améliorent les dispositifs de suivi GPS intelligents
• Construire un ordinateur portable personnalisé avec les services complets de JLCPCB
Continuez à apprendre
Construire un émetteur SSTV avec le RP2350: du schéma au PCB avec JLCPCB
À retenir Le projet SSTV PICO d'Anthony Le Cren, F4GOH, transforme une image prise par une caméra OV5640 en signal radio HF grâce au microcontrôleur RP2350. Un PCB double couche réunit l'interface de commande, l'amplificateur et le filtre de sortie pour réaliser un émetteur SSTV compact. Acquisition d'images et commande depuis un écran tactile de 2 pouces Génération directe du signal HF à l'aide des blocs PIO du RP2350 Émission manuelle ou automatique dans plusieurs modes SSTV Code source, firmware UF......
Du prototypage à des PCB de qualité professionnelle avec Philippe Demerliac et JLCPCB
Comment Philippe Demerliac s’appuie sur JLCPCB pour concevoir, tester et partager ses projets électroniques Passionné d’électronique depuis plusieurs décennies, Philippe Demerliac conçoit aujourd’hui des appareils de mesure, des outils de prototypage et des systèmes électroniques open source qu’il partage avec sa communauté Cyrob. Lorsqu’un projet nécessite une carte plus complexe ou plusieurs exemplaires, il fait régulièrement appel à JLCPCB pour transformer ses conceptions en circuits imprimés profe......
Adapter un encodeur absolu SSI à un automate industriel avec JLCPCB
Introduction: résoudre un problème de compatibilité industrielle Dans les installations industrielles, les encodeurs absolus sont utilisés pour déterminer précisément la position d'un axe, d'un mécanisme ou d'un élément mobile. Contrairement à un encodeur incrémental, un encodeur absolu fournit une valeur de position directement exploitable, y compris après une coupure puis une remise sous tension de l'installation. Dans le cadre de ce projet, une machine industrielle était initialement équipée d'un e......
Memo-1 : Comment Benoit Aveline a Construit son Propre Micro-Ordinateur 8-bit avec JLCPCB
Depuis des années, Benoit Aveline, aussi connu comme Mémoire Morte collectionne et restaure des micro-ordinateurs 8 et 16 bits. Chaque dimanche matin, il partage cette passion en direct sur Twitch, où il démonte, répare et remet en service des machines que beaucoup considèreraient comme irrécupérables. Au fil du temps, une véritable communauté s’est formée autour de ces sessions, rassemblant des passionnés fascinés par les architectures informatiques d’une époque où un système entier pouvait encore êt......
Projet Sega Neptune – 1ère partie avec JLCPCB
Lorsqu'il s'agit de réparer des consoles, il est fréquent que des demandes de modifications (ou "mods") soient formulées. PrintoLab, passionné par les projets DIY autour des consoles de jeux hors du commun, reste toujours attentif aux tendances du modding. Grâce à des partages d'autres moddeurs, AreUBready a récemment découvert le projet GitHub - Board-Folk/Neptune: Recreation of the cancelled Sega console that combines Mega Drive/Genesis with 32X. · GitHub—une initiative qui redonne vie à un concept ......
Le Parcours de Nic034 avec la NeoGeo AES et JLCPCB
Nic034 est un passionné de la mythique console SNK NeoGeo AES – la version home de la légendaire borne d’arcade – et un réparateur amateur. Créateur du module Neopass pour NeoGeo AES, son aventure dans l’électronique a débuté par la réparation de consoles, avant de se concentrer sur la plateforme NeoGeo AES après avoir reçu de nombreuses demandes de joueurs rencontrant des pannes matérielles. Rapidement, Nic034 s’est retrouvé confronté aux limites de la conception d’origine de SNK, ce qui l’a poussé à......
