Digital Speaky

  • Hallo zusammen,


    schon seit langer Zeit (eben solange ich den Speaky aufgebaut habe) gärt es in mir, ihm ein neues Benutzerinterface und einen neuen Microcontroller zu verordnen. Die ersten Schritte waren etwas steinig, weil viele Schaltungsteile zusammengesucht werden mussten.


    Heute habe ich dann endlich eine Lösung für die Ansteuerung des neuen Displays gefunden und das Ganze mal "ugly" auf einem Steckboard zusammengebaut:


    [Blockierte Grafik: http://www.dk6tm.de/images/stories/Speaky_digital/_dsc3757-20080727-145038.jpg]


    Und wie man sieht: Es zeigt etwas sinnvolles an! :)


    Der Aufbau war für mich ein Beweis dafür, dass die Schaltung und die Programmierung generell funktioniert und ich kann mich jetzt daran begeben, die restlichen Funktionen festzulegen und eine neue Frontplatten-Platine zu machen.


    Noch kurz zum Hintergrund:


    Im Speaky ist ein Atmel-Microcontroller (AT2313) verbaut, der die Frequenzaufbereitung (DDS) steuert und zusätzlich noch den CW-Keyer enthält. Außerdem sind noch ein paar andere Funktionen integriert. Dieser Chip wird seitens Atmel nicht mehr hergestellt, ist also nicht mehr wirklich am Markt verfügbar. Außerdem ist er praktisch "voll", für Erweiterungen müsste also ein größerer Controller her.


    Um auch für zukünftige Erweiterungen gerüstet zu sein, wird die Frontplatten-Platine einen ATmega32 Controller (A) enthalten, der das Display, mehrere Tasten, zwei Dreh-Encoder und die geräteinterne Kommunikation steuert. Ein zweiter Controller (ATmega88V) ist für die Ansteuerung der DDS und die Bandumschaltung zuständig und ein Dritter wird für den Zähler und ein serielles CAT-Interface eingesetzt. Die Controller kommunizieren untereinander mittels I^2C-Bus und sollen über das CAT-Interface mit Updates der Firmware versorgt werden können.


    Hoffen wir mal, dass das alles so schön realisierbar ist, wie ich mir das vorstelle :D

    73 de Stefan DK6TM

  • Hallo Stefan,


    wirst Du Deine Controllerfabrik dann in ein Schirmgehäuse packen.... :D?


    Liest sich aber nicht schlecht.


    Bin mal gespannt, was Du demnächst vorstellst.


    vy 73
    Andy
    DK3JI

    AK

  • Moin Andy,


    ich weiß noch nicht ob das nötig sein wird, aber eine Blechwand zwischen Frontplatte und Speaky-Mainboard wird wohl nötig... :D


    Andererseits sitzt der 2313 ja auch direkt auf dem Mainboard und ist nicht zu hören. Einfach mal schauen, was sich ergibt.

    73 de Stefan DK6TM

  • Hallo zusammen,


    es geht weiter! :D


    Um nach den vielen Experimenten auf Steckboards (hier sieht es inzwischen ziemlich abenteuerlich aus) habe ich jetzt für die Bandumschaltung und die Ansteuerung der DDS eine Platine gemacht. Die Steckboards bringe ich so nie in den Speaky hinein. :rolleyes:


    [Blockierte Grafik: http://www.dk6tm.de/images/stories/Speaky_digital/speaky_bandschalter_dds.jpg]


    Ich habe die Platine bewußt groß gehalten (derzeit 60x90mm), damit noch Experimente möglich sind. Zentraler Bestandteil ist ein Atmel ATMega88V Microcontroller, der die Daten von seinem großen Bruder auf der Frontplatten-Platine per I2C-Bus bekommt. Er erledigt sowohl die Bandumschaltung (mittels 5 SIL-Relais), als auch die Ansteuerung des AD9835 im Speaky. Außerdem habe ich die restlichen Ports noch nach außen geführt, um evtl. noch Zusatzfunktionen unterzubringen. Die Platine ist nicht die endgültige Version (zu groß), sondern eher als Experimentierboard zu verstehen. Die endgültige Platine wird wahrscheinlich weniger als halb so groß (mit dem Atmega88V im TQFP32-Gehäuse)!


    Bisheriger Stand:


    - Displayansteuerung mit Text und Grafik funktioniert
    - I2C (TWI) Datenübertragung funktioniert
    - Stromaufnahme der bisherigen Gesamtschaltung (2x Atmega168@16MHz mit Reglern und Zusatzhardware und Display) <10mA
    - Drehgeberabfrage funktioniert (auch mit zwei Drehgebern gleichzeitig)
    - Ansteuerung der DDS muss noch getestet werden (deshalb die Platine)
    - Schaltung und Codefragmente für den Frequenzzähler sind vorhanden (aber noch nicht zusammengebaut)
    - S-Meter und SWR-Meter mit Displayanzeige geplant


    Zu klären sind noch ein paar Kleinigkeiten, z.B. welche Funktionen über die Controller verarbeitet werden und welche besser "analog" bzw. mit Schaltern oder Tastern direkt gesteuert werden sollen. CW/SSB-Umschaltung soll auf jeden Fall der Controller machen, ebenso wie die RIT/Split-Steuerung. Bisher werden TX-Leistung, NF, HF, Mic-Pegel und Preselektor über Potis gesteuert. Ich habe überlegt, ob es wohl möglich ist, den Preselektor Frequenzabhängig mit dem Controller zu steuern, das würde aber einen präzisen Abgleich des Preselektors voraussetzen. Digitalpotis zu diesem Zweck sind verfügbar und man könnte die Automatik wenn notwendig mit dem zweiten Drehgeber "überfahren".


    Und jetzt gehe ich erst mal die Umschalterplatine bestücken. :)

    73 de Stefan DK6TM

    Einmal editiert, zuletzt von DK6TM ()

  • Hallo,


    wollte mal nachfragen wie denn der aktuelle Status der geplanten Erweiterung ist.

    73 de Detlef / DC3DEK

  • Hallo Detlef,


    es geht weiter :) Nur halt nicht immer sichtbar.


    Das Layout für die Frontplatten-Platine ist praktisch fertig, nur eine Platine habe ich aus Zeitmangel noch nicht machen können. Ein paar Kleinigkeiten werden sich wohl noch ändern. Ich habe jetzt noch sozusagen im letzten Moment ein optisch ansprechendes Cursor-Kreuz gefunden, für die Menüsteuerung, Band- und Betriebsartenumschaltung.


    Sobald das Layout soweit ist, stelle ich es hier vor.


    Die Kommunikation zwischen den Controllern läuft mittlerweile stabil, es gibt evtl. sogar einen Weg, wie man die Controller per I2C updaten kann.


    Ansonsten ist das Ganze Projekt auf einem guten Weg, allerdings auf einen längeren Zeitraum angelegt, weil ich zur Zeit nur Teilzeitbastler bin...

    73 de Stefan DK6TM

  • Hallo zusammen,


    nachdem jetzt so lange Zeit vergangen ist (>>> QRL lässt grüßen :( ), geht es jetzt endlich weiter...


    Die Platinen sind soweit fertig (nach der dritten Überarbeitung), dass man etwas damit anfangen kann und ich habe begonnen, die Komfort-Funktionen zu programmieren.


    Hier findet ihr eine Beschreibung der Komponenten des Digitalteils:


    http://www.dk6tm.de/index.php?…gcategory&id=20&Itemid=41


    (wird immer wieder ergänzt)

    73 de Stefan DK6TM

  • Hallo,


    schön das es weitergeht!!!


    Wird man die Platinen und programmierten Controller bei dir erwerben können?


    Wie schaut es dann mit der Frontplatte aus. Wird man wohl erneuern müssen, oder? Gibt es da schon eine grobe Skizze wie die neue aussehen könnte / wird?

    73 de Detlef / DC3DEK

  • Moin Detlef,


    Die Frontplatte wird man (schon wegen des Displays, das um einiges größer ist, als das vom originalen Zähler) komplett erneuern müssen. Sobald ich auf den Platinen, die jetzt endlich bei mir sind, einen funktionierenden Prototypen aufgebaut habe, kann ich auch die Abmessungen und Positionen der Bedienelemente nennen.


    Der Controller wird letztlich mit einem Bootloader programmiert sein, mit dem sich dann die Betriebssoftware per Terminal (Seriell oder USB) einspielen lässt. Wahrscheinlich werden auch mehrere Controller verbaut sein. Die "Nebencontroller" werden aber fest programmiert sein, ohne software-Update-Möglichkeit (Zähler).


    Ich arbeite im Moment mit zwei verschiedenen Platinenversionen, eine mit konventionellem Drehgeber und eine mit dem magnetischen luxus-Geber. Die Varianten unterscheiden sich sowohl mechanisch als auch elektrisch.


    Die Platinen sind doppelseitig und durchkontaktiert, also nichts, was man noch leicht selbst herstellen könnte. Ich hoffe, dass sich dann, wenn das Layout endgültig steht, jemand findet, der ein paar davon produziert :) Insgesamt werden es vier, bzw. fünf Platinen sein (Frontplatte, Zähler, Echtzeituhr, Pegelwandler und Relais-Board).


    Zur zeit sieht die Frontplatten-Platine in etwa so aus (es sind aber in diesem Layout noch zwei drei Fehler drin, die auf den Platinen nicht mehr drauf sind):


    [Blockierte Grafik: http://www.dk6tm.de/images/stories/Speaky_digital/speaky%20display%20platine.jpg]

    73 de Stefan DK6TM

  • Hallo Stefan ,


    das sieht alles sehr vielversprechend aus , es würde mich doch sehr reizen einen profesionell
    aussehenden Speaky mit den geschilderten Möglichkeiten aufzubauen . Schön wäre aber , wenn das unter
    mitwirkung von QRPeter hier geschehen könnte , wenn er überhaupt noch Zeit findet . Eine wohlwollende Unterststützung des Erweiterungsprojekts und der Zukunftssicherung des Speaky (abgekündigterAtmel) durch Peter wäre schön . Wenn die Entwichlungsphase abgeschlossen ist Stefan , kann man dann vorprogrammierte Bauteile über Dich beziehen , oder soll das doch mehr für einen
    kleineren Kreis von Spezialisten sein ?


    73 u.55 Stephan

  • Hallo Stephan,


    Peter begleitet die Entwicklung der Steuerung für den Speaky schon jetzt, deshalb wird das Ganze, wenn es nachbausicher ausgereift ist, auch "professionell" verfügbar sein. Die Controller und evtl. auch die Spezialbausteine könnte ich vorprogrammiert liefern. Aber bis dahin ist noch viel Arbeit zu tun, vor allem, weil das Ganze auch halbwegs modular und flexibel bleiben soll. Deshalb auch die relativ vielen verschiedenen Platinen.


    Ich denke, dass jeder, der die Fähigkeiten für so einen Umbau mitbringt, das auch machen können sollte. Die Beschaffung der Bauteile und Platinen kriegen wir schon hin. :)

    73 de Stefan DK6TM

  • Zitat

    Original von DK6TM
    Hallo Stephan,


    Peter begleitet die Entwicklung der Steuerung für den Speaky schon jetzt, deshalb wird das Ganze, wenn es nachbausicher ausgereift ist, auch "professionell" verfügbar sein. Die Controller und evtl. auch die Spezialbausteine könnte ich vorprogrammiert liefern. Aber bis dahin ist noch viel Arbeit zu tun, vor allem, weil das Ganze auch halbwegs modular und flexibel bleiben soll. Deshalb auch die relativ vielen verschiedenen Platinen.


    Ich denke, dass jeder, der die Fähigkeiten für so einen Umbau mitbringt, das auch machen können sollte. Die Beschaffung der Bauteile und Platinen kriegen wir schon hin. :)


    Ohne zu viel verraten zu wollen: Stefans Speaky - Erweiterung dient parallel als Studie für den geplanten high end Stationstransceiver, an dem wir schon seit > 1 Jahr arbeiten. Wir sind jetzt konsequent modular geworden, ein weiteres Modul des Projektes kennt ih auch schon, die DL-QRP-AG PA 2008 gehört ebenfalls zu dem neuen Projekt.

    73/2 de Peter, DL2FI
    Proud member of Second Class Operators Club SOC and Flying Pig Zapper #OOO (Certificated Kit Destroyer)

  • Hallo zusammen,


    so, und es geht weiter...
    (es geht immer weiter, auch wenn mich mein Gesundheitszustand zur Zeit öfter mal zurückwirft als mir lieb ist... :( )


    Ich habe jetzt einen Prototypen der Steuerung laufen, zur Zeit vier Platinen (Frontplatine, Bandschalter/PTT/CW-Tastung, Echtzeituhr, Huckepack-Platine für den Speaky-Controller).


    Die Huckepack-Platine und die Platine für den Uhrenchip sind noch im "Experimentierstatus", weil ich erst sicher wissen will, ob die Teile so laufen, wie ich mir das vorgestellt habe. Ein Knackpunkt ist der doch relativ geringe Speicherplatz auf dem Uhrenchip (56 Byte), bisher habe ich aber alle Parameter gespeichert bekommen. Das zweite Problem ist die Ansteuerung der DDS, weswegen ich die Huckepack-Platine noch nicht als geätzte Platine vorliegen habe. Die Zählerplatine ist fertig aber noch nicht aufgebaut.


    Aber der Rest läuft. Die Software deckt zur Zeit 5 Bänder (die im Speaky bestückbar sind) ab, jeweils mit VFO A/B. Per Taster können alle wichtigen Parameter umgeschaltet werden (Betriebsart, VFO, USB/LSB, Band (mit Durchtasten oder UP/Down), etc. Außerdem existiert eine Abfrage für einen Leistungs-/SWR-Messkopf und zusätzlich 2-3 analoge bzw. digitale Eingänge. Inzwischen ist auch ein relativ umfangreiches Menüsystem entstanden, das in zwei Ebenen wichtige und eher selten gebrauchte Funktionen bereitstellt (ZF, Tune, div. Parameter, Speicher etc.). Alle Parameter die sich im Speaky ändern lassen, werden vom Menü erfasst. Wird das Gerät ausgeschaltet, bleiben alle eingestellten Parameter erhalten, auch die Frequenzen der VFO und der Bänder. Allerdings werden die Frequenzen nur mit 100Hz Auflösung gespeichert, ein Kompromiss, zu dem mich der geringe Speicherplatz auf dem Uhrenchip gezwungen hat.


    Wenn die Zählerplatine fertig ist, wird auch hoffentlich die Steuerung für den mitlaufenden Preselektor so arbeiten, wie ich mir das vorgestellt habe (das größte Problem ist die Umsetzung von 5V Logikspannung (also 0-5V analog) auf 0-10V analog). Der Zähler selbst ist relativ aufwendig gestaltet, er zählt die LO-Frequenz (wie im Speaky vorgesehen) und ist für eine ZF-Ablage programmierbar (die Verrechnung der Ablage geschieht nicht im Zähler selbst sondern im Hauptcontroller). Der Zähler wird eine Auflösung von 10Hz bieten, die unabhängig von der Auflösung der VFO immer angezeigt wird.


    Die einzelnen Komponenten sind wie schon erwähnt mittels I2C verbunden. Die Kommunikation über den Bus läuft zuverlässig. Für die Ansteuerung der Band-, PTT- und CW-Tastung kommen die genannten Portexpander zum Einsatz. Auf der Platine für die Bandumschaltung sind derzeit noch einige Ports frei, die noch mit Zusatzfunktionen belegt werden können. Meine Überlegung ist, diese z.B. für eine Schaltkaskade (PA-Steuerung etc.) zu verwenden.


    Ich werde auf jeden Fall den Prototypen (auch schon in den Speaky "eingebaut" mit nach Silberthal bringen, zum ansehen, spielen und verbessern. :)


    Das soll es erst einmal gewesen sein, ausführliche Informationen mit Fotos und evtl. einem kurzen Video erscheinen in den nächsten Tagen auf meiner Internetseite.

    73 de Stefan DK6TM

  • Moin Stefan,

    Zitat

    Ein Knackpunkt ist der doch relativ geringe Speicherplatz auf dem Uhrenchip (56 Byte), ...


    ich weiss leider nicht, ob du die Uhrenfunktion des Chips verwendest, oder ihn nur als Speicher "missbrauchst". Aber wenn es dir an "bestaendigem" Speicher mangelt, und du sowieso mit I2C "hantierst", waere vielleicht ein I2C-FlashROM eine Moeglichkeit. Die Dinger gibts mechanisch klein, mit einer Menge Platz, und fuer kleines Geld. Aber das ist nur eine Idee...


    73 de Roland / DK1RM

  • Hallo Roland,


    ja, so einer wird auch vorgesehen, wenn der Uhrenchip voll ist. Ich verwende natürlich auch die Uhr in dem Uhrenchip, und dabei ist der Speicher sozusagen als Abfallprodukt abgefallen. Ich versuche damit erst einmal auszukommen. Ansonsten wird natürlich ein FlashROM verwendet.

    73 de Stefan DK6TM

  • Hallo,


    da das Jahr zur neige geht will ich dochmal nachhören wie der Stand der Dinge ist. Gibt es was neues?

    73 de Detlef / DC3DEK

  • Hallo,


    vielleicht ist ja über die Weihnachtstage untergegangen.


    Da sich bisher keiner gemeldet hat möchte ich nochmal nachfragen wie denn der Stand der Dinge ist.

    73 de Detlef / DC3DEK

  • Zitat

    Original von DC3DEK
    Hallo,


    vielleicht ist ja über die Weihnachtstage untergegangen.


    Da sich bisher keiner gemeldet hat möchte ich nochmal nachfragen wie denn der Stand der Dinge ist.


    Nun hör doch mal auf zu drängen, Detlef. Wir sind heftig zugange und wenn wir so weit sind, dann erfährst du es hier im Forum sicher eher als der Rest der Welt.

    73/2 de Peter, DL2FI
    Proud member of Second Class Operators Club SOC and Flying Pig Zapper #OOO (Certificated Kit Destroyer)

  • Hallo Peter,



    toller Stil !


    Sorry das ich gefragt habe. Soll garantiert nicht mehr vorkommen.

    73 de Detlef / DC3DEK