SDR mit PSoC5 Mikrocontroller (ohne PC)

  • Hallo Om's,
    es geht um einen SDR- Transceiver, der ohne PC auskommt. Die gesamte Signalverarbeitung findet im Mikrocontroller statt. Zusätzlich werden lediglich Filter und Schaltermischer benötigt.
    Im Internet findet man folgende Seiten zum Thema:


    http://cwtd.org/psoc.html
    http://ae9rb.com/index.php?mai…roduct_info&products_id=8


    http://www.simplecircuits.com/SimpleSDR.html



    Besonders letztere Seite ist interessant, weil die wichtigsten Unterlagen (Schaltbild, Programme) offengelegt sind. Bei den verwendeten PSoC- Typen handelt es sich um Mikrocontroller der Firma Cypress, die ich schon seit einiger Zeit verwende. Es reizte mich das Problem, den IQ- Generator für den gesamten Bereich 450 kHz bis ca. 30 MHz auszubauen. Dieses Ziel ist erreicht. Ein besonderes Merkmal der Baugruppe ist die Verwendung der internen PLL, die eigentlich zur Bereitstellung des Prozessortaktes dient. Das Konzept des Simple SDR Receivers beruht noch auf der Verwendung eines PC, der z.B. die gesamte Bedienung erledigt, und zwar mit dem Programm "Ham Radio de Luxe". Das Bedienkonzept soll auf Mikrocontroller- Steuerung umgestellt werden.
    Nun wäre es schön, wenn sich Mitstreiter fänden, die an dem Projekt Interesse haben.
    Als Hardware benutze ich bisher die PSoC3 bzw. PSoC5 Starterkits sowie den Freesoc- Explorer (mit einem PSoC5LP).
    Auf Reaktionen freut sich Wolfgang, DH1AKF.
    73 und eine schöne Weihnachtszeit!

  • Hallo Wolfgang,
    Eine schoene Projekt-Idee! Da gibt es viel Ueberschneidung meinen
    Projekten. Ich habe die letzten zwei Jahre viel mit Frequenz-Synthese
    gespielt: DDS selbstgebaut auf AVR Basis, DDS mit AD9850 + Arduino,
    Si570, Parallax Propeller, FPGAs.
    Von daher wuerden mich mehr Informationen ueber das "Herzstueck"
    Deines Projektes interessieren: Der 450kHz bis 30MHz I/Q. Hellhoerig
    bin ich geworden, als Du in dem Zusammenhang die Verwendung einer
    PLL angesprochen hast. Wie gut funktioniert dieses Konzept?
    Hintergrund ist, dass ich vor ca. einem Jahr einen Rechteck I/Q
    Generator mit dem Parallax Propeller versucht habe. Leider "jittert"
    das ziemlich stark.

    Ciao,
    Uwe / DO8UL.

  • Hallo Wolfgang,


    ein sehr interessantes Projekt.
    ... wenn man statt der beschriebenen SoftRock einen FA-SDR (hat die gleichen Schnittstellen) benutzt, hat man einen Transceiver von 160-10m.
    Und hier gleich einige Fragen:
    - ist in der Software nur Demodulation (Empfang) implementiert oder erzeugt er auch die I/Q-Sendesignale (USB,LSB,CW .....) ?
    - in welcher Sprache ist programmiert (C, Assembler, ...) ?
    - kann man ein Spektrum oder Wasserfall darstellen. Ist das schon implementiert ?


    Der I/Q-Generator von 450kHz - 30MHz interessiert mich sehr. Man könnte sich den SI570 mit Teiler sparen.
    Kann man bei diesem Generator den Phasenversatz (90 Grad) softwaremässig einstellen ? Wenn Ja, in welcher Schrittweite ?


    PS: ich habe den FA-SDR mit dem SDR-Cube gekoppelt. Funktioniert auch ohne PC.

  • Es gibt ja zum Thema I/Q schon fundierte Vorarbeiten.


    Von Günter Richter und Detlef Rhode wurde dazu einiges ua.a im FA publiziert.


    Zur Mischtechnik hat sich u.a. Ralf Rudersdorfer mehrfach fundiert geäußert.


    Zu den Ergebnissen mit den FA - SDR - Bausätzen gibts auch einiges zu lesen.


    Ich schlage jedem eine umfasssende eigene Recherche vor, bevor weitergebastelt wird...


    Echtes SDR ohne Mischer: z.B. N2ADR..


    vy 73 de DH6TF

  • An Jochen (DH6TF): Es soll kein High- End SDR entstehen, mit Direktabtastung und FPGA, aber ein Gerät wie der Yuma TRX etwa, nur mit moderneren Mitteln.


    Ich möchte kurz die Vorgehensweise demonstrieren. So etwa sieht der Entwurf von Michael Hightower, KF6SJ aus:


    http://www.wkiefer.de/temp/SDR1.jpg



    Ein Problem war der originale IQ- Generator, der nur bei geradzahligen Teilern (t= 4 * n also 4, 8, 12 usw.)richtig funktioniert.


    Nach meinen Vorstellungen wurde der IQ- Generator umgestaltet:
    http://www.wkiefer.de/temp/IQ_Gen.jpg



    Wobei die obere Baugruppe (Teiler durch Faktor 2) folgendes Innenleben enthält:
    http://www.wkiefer.de/temp/IQ_Gen2.jpg



    Ich brauchte übrigens nichts zu löten, um die Schaltung zu produzieren. Das macht alles die Software...
    Aber was tun bei anderen Faktoren (t = 4 * n + 2 also 6, 10, 14 usw.) ??
    - Ich musste VERILOG lernen, denn die Baugruppe ist in dieser Hardware- Beschreibungssprache konstruiert. Es gibt also davon kein Schaltbild.
    Nur soviel: Man muss in diesem Fall in der Mitte des gewünschten Impulses, also bei fallender Taktflanke, das Q- Signal wechseln. Am besten zeichnet man sich das mal auf, um es zu verstehen.


    Nun zu den Fragen:
    - Nein, man kann keine freizügige Phasenverschiebung programmieren, alle Aktionen beziehen sich auf die Taktflanken des Eingangssignals.
    Lediglich gewisse Verzögerungszeiten im Nanosekundenbereich lassen sich durch Einfügung von Gattern erzeugen.
    - Bisher ist nur der RX programmiert, aber es sind alle notwendigen Baugruppen für den TX vorhanden.
    - Die gesamte Steuerung übernimmt bisher der PC. Der Mikrocontroller simuliert einen K2. Für eine Fernsteuerung ist somit alles vorbereitet.
    Aber natürlich müssen alle grafischen Ausgaben ebenfalls durch den PC erfolgen.


    Was mich an den PSoC- Dingern so fasziniert ist die programmierbare Hardware, bestehend aus einer umfangreichen Sammlung von einfachen Grundbausteinen, aber auch komplexen Baugruppen wie z.B. digitale Filter, AD- und DA- Wandler. Die notwendigen Steuerprogramme (die Firmware) werden automatisch mit erzeugt, wenn man eine solche Baugruppe in seinen Entwurf aufnimmt. Man muss allerdings die Sprache "C" verstehen.


    Ich hoffe, ich habe alle bisherigen Fragen beantwortet. Es gibt noch viel zu tun...


    73, Wolfgang

  • Hallo Wolfgang,
    Deine aktuellen Entwicklungen wuerden also auf diesem Board laufen?
    Dieses Board wuerde damit auch als Plattform fuer interessierte
    Mitbauer taugen?

    Ciao,
    Uwe / DO8UL.

  • noch vergessen:
    Hast Du die Moeglichkeit, dass Spektrum eines Traegers (mein Hauptinteresse ist das 80m Band, z.B. 3.560MHz)
    zu messen und hier einzustellen?

    Ciao,
    Uwe / DO8UL.

  • Hi, Uwe!
    Genau ein solches Board befindet sich zur Zeit auf dem Postweg. (Eines von der gleichen Sorte ist bereits verbaut in meinem SWR/Powermeter
    siehe hier: http://www.wkiefer.de/x28/Verd…%20mittels%20Software.htm )
    Aber für die ersten orientierenden Versuche verwende ich die PSoC First Touch Starterkits.
    Und als Mischer werde ich einen FA-SDR mißbrauchen. Danke, Uli (DF5SF) für diesen Tip! Das Kästchen schlummert in der Ecke, weil es so viele Leitungen zum PC benötigt, hi.
    Ich bin noch nicht so weit, dass ich hier Spektren zeigen kann.
    73, Wolfgang