Projets:Lab:2018:Red Pitaya

From Electrolab
Jump to: navigation, search

Modifications de la carte Red Pitaya en radio logicielle (SDR)

Page référencée dans Passion :
Radio Radios logicielles, transmissions numériques, expérimentations HF

Emetteur-récepteur logiciel à base de carte de développement Red Pitaya

Pour qui, pourquoi ?

La carte d’expérimentation/développement Red Pitaya, initialement destinée au marché de l’enseignement technique, a été très largement détourné par la communauté radioamateur dans le but de la transformer en radio logicielle. La version 14 bits 125 MSPS couvre un spectre de 60 MHz d’un seul tenant et offre, moyennant des modifications assez simples, des performances comparables à celles d’un Anan 10«E» pour le tiers de son prix environ.

En outre, grâce au portage du firmware OpenHPSDR réalisé par Pavel Denim, Red Pitaya est capable de piloter un véritable Frontend de la famille Alexiares -filtrage, amplification faible bruit, commutation d’antenne… voir la page consacrée à cet ensemble . Ou n’importe quel autre type de filtre, par le truchement de son bus I2C et de la carte AlexI2C .

La carte Red Pitaya entourée des différents modules de l'étage préselecteur Alexiares

L'approche commerciale

La Red Pitaya est avant tout un instrument de mesure polyvalent (oscilloscope, analyseur de spectre, analyseur logique… ) et, comme tel, présente une impédance très élevée sur ses ports d’entrée. Tout le contraire d’un émetteur-récepteur dont l’impédance caractéristique se situe généralement aux environs de 50 Ohms. C’est la raison pour laquelle la majorité des radioamateurs font précéder les deux entrées de leurs cartes par un transformateur 9 :1 ou 16 :1 abaisseur d’impédance.

Voir à ce sujet les travaux de DC6HL (première pièce attachée présente sur cette page.

Cette platine présente plusieurs avantages

  • Son schéma est simple et facilement reproductible
  • La modification elle-même est externe et n’affecte pas l’intégrité de la Red Pitaya… il est donc toujours possible de revendre la carte si le propriétaire décide de s’en séparer
  • …et une version prête à l’emploi, soudée-testée est vendu sur le site Allemand FunkAmateur

Cette approche est cependant entachée de quelques inconvénients.

  • Le transfert d’énergie HF n’est pas optimal, et le niveau de bruit injecté par l’amplification ne vient pas arranger les choses
  • Cette extension n’élimine pas les limitations provoquées par la conception de l’étage d’entrée de la Red Pitaya.

Quelques radioamateurs Russes se sont donc penchés sur la question et ont entamé un travail d’ingénierie inverse (voir le chapitre notes et ressources en bas de page)

L’étage d’entrée de la Red Pitaya

… est constitué de 5 parties

  • Un sélecteur/diviseur de tension (par cavaliers sur broches au pas de 1,25)
  • Un amplificateur à gain unitaire AD8066ARMZ
  • Un filtre passe-bas (antialiasing) ne laissant passer que la première zone de Nyquist qui sera traitée par le convertisseur analogique/numérique du SDR DDC/DUC
  • Un amplificateur spécifique large bande LTC6403-1 (driver), faible bruit d’origine Analog Device destiné à attaquer le port d’entrée de l’ADC
  • L’ADC lui-même.
Le schéma de l'étage d'entrée de la carte Red Pitaya et les principaux points de modifications abordés dans cet article. Droits Réservés Stemlab. Ne cherchez pas le LTC6403-1 ou le filtre anti-aliasing. Tout est caché dans le cartouche "Amplifier & Filter". Ce sont là les joies du "closed hardware"


Première modification, l’étage d’entrée

L’opération consiste à éliminer le diviseur de tension d’entrée, supprimer l’amplificateur « tampon » qui n’apporte strictement rien hormis un peu de bruit et quelques légères erreurs de linéarité, d’évincer également le filtrage passe-bas qui sera reporté sur une carte de filtrage amont laissée à l’appréciation de chaque utilisateur.

Notons qu’il existe des filtres performants au catalogue MCL (lpf 50+, RLP50+) et que les fontend Alexiares, tout comme les préselecteurs des transceivers Apache Labs, insèrent un filtre équivalent en permanence dans le circuit de réception. Dans tous les cas de figure, ce filtre est absolument impératif si l’on ne souhaite pas récupérer les signaux parfois excessivement puissants des stations broadcast de la bande FM situés en troisième zone de Nyquist.

L’élimination de ces différentes section -sélecteur de tension, premier buffer, filtrage- ne nécessite pas le démontage de tous les composants du chemin. Le dessoudage de quelques composants passifs intermédiaires suffit à donner accès directement au driver.

La photo ci-dessus indique les deux réseaux Résistance/Self/Capa à éliminer pour isoler le buffer AD8066ARMZ et le filtre antialiasing d’origine. (Encadré par le trait bleu et noté « Entfernen », « à écarter »). Il est plus simple d’utiliser deux fers à souder « pointe fine » pour saisir les composants de part et d’autre en mode « baguettes Chinoises ». Attention à la proximité du connecteur E2 qui n’apprécie pas les coups de chaud.
Les transformateur 9:1 sont ensuite bobinés sur des binoculaires en ferrite "large bande" (matériau 43 ou 61)
Le résultat final après élimination des composants. On note au passage que les connecteurs 6 broches ont également été dessoudés, afin de réserver une place confortable aux deux transformateurs d'impédance qui seront installés plus tard


A ce stade, plusieurs options sont possibles

  • La plus simple consiste à insérer sans autre forme de procès un transformateur 9 :1 entre le connecteur SMA et l’entrée non-inverseuse du driver d’ADC (LTC6403) (utilisé sur le prototype Electrolab).
Ce cliché montre les points de branchement du transformateur 9 :1 reliant l’entrée de chaque SMA vers l’entrée de chaque LTC6403-1 driver d’ADC. Notez que le coté froid du primaire (bobinage 1) sera plus facilement soudé sur la masse des prises SMA plutôt que sur la minuscule pastille de la résistance. Se référer aux photos ci-après
Photo des transformateur « installés », vue opposée.
Photo des transformateur « installés ». Pour gagner de la place, le support de jumpers a été dessoudé. De cette manière, le transformateur entre totalement dans l’espace utile de la carte et peut être intégré dans le boitier en aluminium moulé prévu spécifiquement pour la Red Pitaya.Ce boitier est plus efficace que le dissipateur installé d’origine, le FPGA ayant tendance à particulièrement chauffer sur certains modèles de première génération -parfois plus de 80°C à 90°C en surface.


  • Trois autres approches sont également envisageables, avec ou sans transformateur, attaquant le driver en mode différentiel ou asymétrique, avec plus ou moins de correction de gain. Toutes ont été testées avec succès par plusieurs radioamateurs Russes. Ces modifications exigent une certaine maitrise des CMS format 0603/0402. Ne perdons pas de vue que ces chipotages de gain relèvent de la chasse au pouillème de dB et ne sont pas franchement nécessaires pour qui prend des sueurs froides à la simple vue de la taille des passifs.
Attaque du driver en mode symétrique avec un transformateur à point milieu. Cette approche nécessite un travail bien plus minutieux et délicat
Une légère variante de la modification par défaut modifiant la résistance de contre-réaction du driver d'ADC
Modification comparable à la précédente, amélioration du gain de l'ampli



  • Dans tous les cas, il est vivement recommandé de coller une résistance genre 1k (ou moins) vers GND sur l’entrée non inverseuse de l’AD8066 pour ne pas risquer de provoquer des bruits dans les rails d’alimentation ou des oscillations indésirables. Même non utilisé, un ampli op peut semer la pagaille dans un circuit si ses entrées sont laissées flottantes.

Seconde modification, l’horloge

Celle-ci est optionnelle. Elle se limite à supprimer R25 et R26, souder une « zéro Ohms » aux emplacements R23 et R24, et tirer un câble coaxial ou paire torsadée en direction d’un oscillateur externe plus stable que le circuit utilisé sur la carte Red Pitaya. Attention, le niveau et le signal de cette horloge 125 MHz doit respecter la norme lvds (signaux différentiels, offset de 1V, delta de tension entre fils de 0, 4V)

On trouve des oscillateurs 125 MHz pilotés tcxo sur Ebay pour moins de 20 euros. Ce sont des modules destiné aux audiophiles, le 125 MHz étant souvent une fréquence utilisée par les DAC de certains lecteurs de CD.

En général, les oscillateurs "made in eBay" fournissent un signal sur une sortie asymétrique. Il suffit d'ajouter un transformateur 1:1 à point milieu sur la sortie en question, suivie d'un atténuateur symétrique (ou atténuer en amont avec un atténuateur classique en Pi ou un Té et faire suivre avec le transformateur de symétrisation).

Insistons sur le fait qu'il s'agit vraiment d'une amélioration secondaire. L’oscillateur local installé par défaut est déjà très stable et très peu bruyant. Cette modification d’horloge est donc réservée aux personnes soucieuses de leur stabilité en fréquence (balises, utilisation de la Red Pitaya en analyseur vectoriel… ). Les amateurs de transmissions codées genre FT8 peuvent totalement ignorer cette étape et stabiliser le SDR à l’aide d’un récepteur GPS annexe (géré par le firmware de Pavel Denim en mode FT8 et WSPR).

Un module GPS -dans le cas présent un Neo-N8M- fournit à l'horloge temps réel du processeur ARM local les signaux nécessaires à sa synchronisation.Le verrouillage de l'oscillateur système avec le signal GPS est contrôlé par les firmware FT8 et WSPR de Pavel Denim. Pour que cette extension soit prise en charge, deux légers changement des fichiers ft8.cron et upload-ft8.sh sont à réaliser. Se reporter aux instructions de l'auteur


Troisième modification, l’alimentation de l’ADC

C’est, de très loin, la modification la plus simple à réaliser et la plus payante en matière de dynamique. Le gain est proche de 10 dB (si si!).

En d’autres termes, si le charcutage du frontend vous fait peur, effectuez déjà ce patch, il vous apportera bien plus que tous les autres perfectionnements réunis.

L'opération consiste à élever à 2V Peak-peak (+/- 1V ) la tension de la broche « Sense » de l’ADC (tension initialement fixée à 1V crête, +/- 0,5V, voir le schéma général Fig 1). Cette opération ne demande que le déplacement de la résistance 0 Ohm (0402) de l’emplacement R17 vers R22 et l’ajout d’un découplage 0603 de 470nF à 1 uF -selon l’état des stocks de chacun- à l’emplacement C18.

Après modification : la 0 Ohm en 0402 n'ayant pas survécu au dessoudage, une minuscule queue de composant vient la remplacer sur l'emplacement R22
Carte Red Pitaya avant modification "Vom hier" et "Nach da" signifie respectivement "d'ici à là"... on ne peut être plus clair. Noter l'absence de la capa de découplage dans cette configuration
Explication de la modification


Quatrième modification, l’alimentation du DAC

C'est là un perfectionnement optionnel (meilleure réponse en fréquence sur l’ensemble du spectre, meilleur facteur de bruit). La sortie HF de la Red Pitaya est désormais flottante et non plus fixée avec une tension d’offset positive.

Le détail de ces modifications est donné sur le site Shards of Silicon . Attention, après intervention, il est nécessaire d’ajouter un DC-Block sur les sorties des DAC.

Ici encore, ce changement n’a quasiment aucune influence notable sur le comportement de la Red Pitaya utilisé en SDR. Il peut être intéressant en utilisation VNA (amplitude de signal plus constante sur l'ensemble du spectre du port TX) .

Cinquième modification, l’adaptation d’impédance des DAC

Cette évolution des deux étages de sortie -non encore testée- se limite à l’ajout d’un transformateur d’impédance entre les deux SMA « TX » et le DAC (ref T1-1T-KK81+ )

Ces travaux étant quasi propriétaires (groupe Charly25), nous nous contenteront de fournir le lien d’une analyse exhaustive et d’une impressionnante série de mesures réalisées par ON7YI et publiées sur sa page QRZ.com .

L’ajout de ces transformateurs fait chuter de 3 à 5 dB le niveau général de sortie des DAC et dégrade fortement le niveau d’énergie transmise en dessous de 1 MHz (à prendre en compte si l’on utilise la Red Pitaya en mode VNA).

La plage dynamique du niveau de sortie, quel que soit l’atténuation, est inchangée, à 20 dB sur l’ensemble du spectre. Le niveau maximum de sortie sans transformateur est donné pour 9 dBm par Stemlab, mais se situe plutôt aux environs de 10 dBm pour l’ensemble des cartes testées par les membres de l’Electrolab. ON7YI, pour sa part, possède une carte capable de délivrer jusqu’à 12 dBm. Ce niveau baisse sensiblement et perd à peu près 3 dB sur la bande des 6 mètres.

Le groupe Charly25 à l’origine des modifications décrites par Peter ON7YI fait preuve d’une approche assez radicale quant aux circuits de réception, puisqu’il recommande d’éliminer le driver LTC6403-1 et d'attaquer directement l’ADC avec la sortie du transformateur d’impédance. C’est là une option qui nous a semblé fortement discutable, le driver étant spécifiquement étudié pour précéder l’ADC. En outre, l’intégralité des montages du groupe est fortement typé « contest/chasse au DX » et fait appel à un préselecteur empilant un impressionnant bloc de filtres de bandes en lame de couteau. C’est à notre avis un facteur pénalisant pour l’ADC, que même les mécanismes de dithering ne pourront compenser… plus les filtres sont étroits, plus le seuil de détection du premier bit d’échantillonnage est laborieux. C’est également une vision étriquée du radioamateurisme qui se limite à l’exploitation des bande et non plus à l’expérimentation ou à l'écoute du reste du spectre.

Références bibliographiques et ressources

  • Le site de StemLab, les fabricants de la Red Pitaya . Peu de renseignements techniques, mais quelques informations à glaner dans les contributions du forum (onglet Community)
  • CQ-NRW de Jörg Saure (site Allemand, les interventions peuvent se dérouler en Anglais). Un forum très actif , quelques articles relatifs aux SDR très bien écrits… aber aus Deutsch.
  • Github de Pavel Denim : alias les Red Pitaya Notes. C’est LE site de référence qui détaille à la fois le portage du firmware OpenHPSDR écrit par Pavel, ainsi que les instructions d’installation et de branchement des différentes périphériques gérés par le firmware et/ou le logiciel client (PowerSDR mRX, Kiss Konsole, Quisk etc)
  • La page QRZ.com de Peter ON7YI : Un passionnant travail de bénédictin, une foultitude de mesures et de résultats de tests qui nous ont été indispensables pour comprendre le comportement des étages d’entrée et de sortie de la carte Red Pitaya
  • Le forum CQ-HamRU (oui, en Russe) à l’origine de toutes les modifications de la Red Pitaya. A parcourir avec attention, les schémas se passant de traduction.
  • Un préampli à gain variable par DC2PD piloté par bus I2C a été publié dans le numéro 12 de 2016 de la revue Funkamateur. Droits d’auteur obligent, il est conseillé d’aller récupérer cet article -disponible gratuitement- dans les archives du journal
  • Comparaison par PA0AER (en Néerlandais) de la Red Pitaya (non modifiée) et du Flex 6500. Le résultat est sans appel : plancher de bruit à -130 dBm sur le Flex, -120 sur la Red Pitaya (-130 dBm après modification de la tension « Sense » de l’ADC), suppression des produits d’intermodulation de 97 dB sur le Flex, 75 dB sur la Red Pitaya, qui peut, pour sa part, améliorer les choses avec l’utilisation de la fonction Pure Signal (et des filtres énergiques). 4300 dollars pour le Flex, 319 euros pour la Red Pitaya,certains dB deviennent vite hors de prix.
  • La page de XQ6FOD Manfred, qui expérimente notamment une approche "chic et pas chère" pour piloter un amplificateur en mode EER
  • Le Wiki de l’Electrolab consacré au frontend Alexiares et notamment la carte AlexI2C spécifiquement conçue pour exploiter les sorties I2C de la Red Pitaya conformément aux recommandations d’attribution de commandes de DC2PD et intitulé « RedPitaya HPSDR Ausgänge zur Antennen und Bandfilterumschaltung ».