DAB+-Radio mit einem RPi+HifiBerry auf Basis des MonkeyBoards

  • Nachdem es bereits etliche Internetradios auf Basis des RPi gibt, habe ich vor, zur Abwechslung mal ein DAB+-Radio zu bauen.

    siehe auch hier


    Verlinkungen zu einigen weiteren DAB+-Projekten hier im Forum:

    * Software zum Auslesen der programmbegleitenden Daten bei einem DAB+-Radio

    Liste wird fortgesetzt...

    1. DAB+-Radioempfang testen

    Um einigermaßen schnell zu Ergebnissen zu kommen, begann ich meine Arbeiten mit dem MonkeyBoard PRO. Darauf befindet sich im Wesentlichen das DAB+-Empfangsmodul T2_L4A_8650C von KeyStone. Ansonsten befindet sich auf dem MonkeyBoard noch ein bereits programmierter PIC18F14K50-Mikrocontroller, der an der USB-Schnittstelle einen virtuellen COM-Port zur Verfügung stellt. Somit können am RPi über den UART-Port ttyACM0 serielle Kommandos zur Steuerung an das DAB-Empfangsmodul gesendet werden.

    Anmerkung: Möglicherweise könnte man aus dem MonkeyBoard alleine und ohne RPi ein vollwertiges DAB+-Radio bauen, wenn man den PIC für Tastensteuerung (und LED-Ausgabe) umprogrammiert. --> offen...

    Hier jedenfalls die Ausgabe von dmesg:

    Code
    [    2.611591] usb 1-1.2: new full-speed USB device number 5 using dwc_otg
    [    2.751209] usb 1-1.2: New USB device found, idVendor=04d8, idProduct=000a
    [    2.751228] usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
    [    2.751237] usb 1-1.2: Product: CDC RS-232 Emulation Demo
    [    2.751245] usb 1-1.2: Manufacturer: Microchip Technology Inc.
    
    [    3.114946] cdc_acm 1-1.2:1.0: ttyACM0: USB ACM device
    [    3.114946] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters

    Von der Monkeyboard-Internetseite kann auf dem RPi mit wget http://www.monkeyboard.org/images/products/dab_fm/raspberrypi_keystone.tgz das C++-Demoprogramm testdab.cpp heruntergeladen werden, mit dem ich meine ersten Tests durchführte. Diese Software ist leicht verständlich, um schnell kleine Anpassungen vornehmen zu können, aber den Softwareteil für dieses Projekt werde ich mir ohnehin erst später vorknöpfen... --> offen, ab Beitrag #6

    Hauptsache es läuft erst einmal -- leider nur Bayern 3, für meinen Lieblingssender Radio BOB! reicht die Feldstärke bei mir im Bastelkeller leider nicht aus ;(

    Ich werde noch querchecken, ob das generell nicht besser geht, oder ob nur die mit dem MonkeyBoard mitgelieferte Mini-Teleskopantenne (ausgezogen 34cm lang + 1,5m Anschlusskabel), im folgenden Drexantenne® genannt, so schlecht ist. --> gelöst in Beitrag #5

    * Neben DAB und DAB+ kann das KeyStone-Modul auch UKW empfangen. Hier habe ich im Keller das typische Stereorauschen bei schwachem Empfang.

    * Das MonkeyBoard unterstützt auch die DAB-SlideShow: Das sind in den ausgesendeten Daten enthaltene Grafiken (320 x 240 Pixel, Format genormt?)

    * ...und natürlich die entsprechenden DAB-Textinformationen inkl. Real Time Clock (RTC)

    * UKW: Teilmenge aus den RDS-Daten (Stationsname, RDS-Text, Genre, RTC)

    Die Audioausgabe des MonkeyBoards läuft entweder analog über eine 3,5mm-Klinkenbuchse oder digital über I²S. Damit komme ich schon zum zweiten Punkt.

    2. I²S-Audiosignal über HifiBerry DAC+ aufbereiten

    Ein sauberes I²S-Signal hat schon was und ich würde es gerne über den I²S-Port einer HifiBerry-Soundkarte wiedergeben, alleine schon um hardwaremäßig nur einen Audioausgang zu haben. Der Verdrahtungsaufwand sollte vorne beim I²S-Bus am kleinsten sein, anstatt hinten kompliziert mehrere Ausgangsquellen (MonkeyBoard / RPi) irgendwie zu verwalten und ohne Eingriffsmöglichkeit über ALSA auf der Radioseite :baeh2:

    Also habe ich auf einem Breadboard nur die relevanten Signale zwischen RPi und HifiBerry DAC+ gesteckt und das Ganze erfolgreich mit meinem yamuplay.py getestet -- prinzipiell mal keine Kunst. Mir ist klar, dass die HifiBerry-Karten nur dann die digitalen Audiodaten am I²S-Bus in Sound umwandeln, wenn am I²C-Steuerbus (RPi-Pins 3 (GPIO2, SDA) und 5 (GPIO3, SCL)) auch die entsprechenden Steuerkommandos an die HifiBerry-Karte geschickt werden. Ich habe die drei Leitungen für I²S zwischen RPi und HifiBerry getrennt und stattdessen den I²S-Bus des MonkeyBoards mit der HifiBerry-Karte verbunden. Nachdem es zunächst nicht lief und ich mich dazu herabließ, mein Oszi (ein Hameg HM407 -- ein cooles Teil) hervorzukramen, nur um festzustellen, dass die I²S-Signale vom RPi und MonkeyBoard prinzipiell gleich sind, steckte ich die I²S-Leitungen wieder auf den RPi um und dann nochmals auf das MonkeyBoard -- und plötzlich lief es! Das lag wohl nur an schlechten Kontakten auf dem Experimentierboard...

    Die Quintessenz sind folgende Erkenntnisse:

    * Nach Trennen einer I²S-Leitung und erneutem Anstecken läuft die Audiausgabe über I²S sofort wieder an :thumbup:

    * Nach Umstecken auf das MonkeyBoard muss an die HifiBerry-Karte per I²C ein Kommando "Audioausgabe ein" geschickt werden.

    * Eine Wiedergabepause (über fake-yamuplay) stört nicht, weil der I²S-Takt ("bit clock") am MonkeyBoard weiterläuft.

    * Ein vollständiger Wiedergabestop (über fake-yamuplay) führt zum Ausschalten der Audioausgabe (fehlendes Taktsignal "bit clock" EDIT: Wiedergabe auf HifiBerry DAC+ wird über I²C-Steuerkommando vom RPi gestoppt)

    * Zumindest beim HifiBerry DAC+ wirkt die ALSA-Lautstärkeeinstellung auch auf das MonkeyBoard!

    * Test erforderlich, ob dies auch bei HifiBerry DAC (ohne Plus) und HifiBerry MiniAmp funktioniert, die keine HW-Lautstärkeregelung unterstützen.

    Hier muss ich bei Gelegenheit mal schauen, ob meine MiniAmp-ALSA-Einstellungen vom Raspiblaster funktionieren, wenn die I²S-Daten vom MonkeyBoard und nicht vom RPi kommen... --> gelöst in Thread Stromlaufplan HifiBerry MiniAmp 1.0, Beitrag #2

    * Im fertigen Projekt müssen die drei I²S-Signale zwischen den Quellen RPi und MonkeyBoard (über Relais oder evtl. Optokoppler?) umgeschaltet werden, um das Ding dann auch als Internetradio oder vollwertigen Mediaplayer (omxplayer, MPD, mplayer, ...) verwenden zu können.

    3. Versuchsaufbau

    Der funktionierende Versuchsaufbau war schließlich so, wie in diesem EAGLE-Schaltplan schematisch dargestellt:

    wiring_schematics.pdf

    Impressionen vom Versuchsaufbau

    Und hier noch ein paar Bilder von meinem Versuchsaufbau:


    Es gefreut mich, dass es schon mal prinzipiell funktioniert!

    Ich werde Euch auf dem Laufenden halten.

    Gut's Nächtle!

  • DAB+-Radio mit einem RPi+HifiBerry auf Basis des MonkeyBoards? Schau mal ob du hier fündig wirst!

  • Antennenproblematik

    Die beim MonkeyBoard PRO mitgelieferte Stabantenne ist ziemlich mittelmäßig, da ich zum Vergleich ein 0815-Grundig-DAB-Radio von meinem Vater an der gleichen Stelle im Keller betrieb, das ebenfalls eine Stabantenne hat, aber die ist etwas länger. Damit funktioniert es deutlich besser, obwohl dieses Grundig-Radio an sich keinen besonders hochwertigen Eindruck macht.

    Grundsätzlich kann man bei mir zu Hause in der Rosenheimer Gegend DAB+-Sender auf den drei DAB+-Multiplex-Blöcken 5C, 10A und 11D empfangen:

    DABplus-Multiplex-Blöcke und ihre Empfangsqualität bei mir im Bastelkeller

    5C: deutschlandweiter DABplus-Multiplex (auch "Bundesmux" genannt, Quelle: Wikipedia -- Liste der DAB-Sender in Deutschland)

    11D: Bayernweiter Multiplex

    10A: Regionaler Multiplex (Oberbayern/Schwaben)

    Code
    Block (Bezeichnung)    | Sender      | Grundig | MonkeyBoard/RPi
    ----------------------------------------------------------------------
      5C  (DR Deutschland) | Radio BOB!  | mäßig   | nein
     11D  (Bayern)         | Bayern 3    | gut     | mäßig (gerade noch so, bisweilen gar nicht)
     10A  (Obb/Schw)       | -- noch nicht getestet --   

    Ich habe das Gefühl, dass die Empfangsqualität auch von der Tageszeit abhängt. Jetzt um 22:30 Uhr geht bei mir im Bastelkeller auf dem RPi gerade gar nichts, egal wie ich die Stabantenne drehe und wende :baeh2:

    Das mit dem schlechten Empfang im Bastelkeller betrachte ich als "Härtetest". Wenn ich das hier in den Griff bekommen sollte, weiß ich, dass die Empfangsqualität meines Radios gar nicht mal sooo schlecht ist...

    Neue Antenne:

    Ich habe mir dann die Flex-Autodachantenne - AM/FM, DAB, DAB+ passiv, 3940.01 (EDIT: Link korrigiert) Flex-Autodachantenne - AM/FM, DAB, DAB+ passiv, 3940.01 von ATBB (Antennentechnik Bad Blankenburg) gegönnt (Kurzdatenblatt als Dateianhang siehe unten). Dies ist eine passive Antenne ohne zusätzliche Antennenverstärkergaudi. Von Antennenverstärkern halte ich prinzipiell relativ wenig, denn ein vernünftiger physikalischer Antennengewinn ist durch nichts zu ersetzen, außer durch noch mehr Gewinn (ist wie beim Auto mit dem Hubraum ;))

    Nur leider brachte diese passive Antenne bisher noch gar nichts: Damit kann ich nicht einmal Bayern 3 auf dem starken Multiplex-Block 11D empfangen, was mit meiner mitgelieferten, äußerst mittelmäßigen Stabantenne wenigstens ansatzweise funktioniert. Da es sich um eine Autodachantenne handelt, wird bei der Montage der Masseanschluss des Antennenkabels mit einer scharfen Zahnscheibe fest mit der Autokarosserie verbunden. Damit hat man dann wirklich viel Masse, die vermutlich dann irgendwelche Dipoleigenschaften dieser Antenne positiv beenflussen (das ist jetzt vielleicht/hoffentlich etwas für'n jar, dessen Erfahrung bezüglich Analogtechnik ich sehr schätze). Bei meinem fliegenden Aufbau hängt die Masse nur am Masseanschluss der SMA-Antennenbuchse des MonkeyBoards, was gleichzeitig GND des MonkeyBoards ist (0,1R)

    Dabei muss ich gestehen, um von SMA(female) am MonkeyBoard auf FAKRA-Z(female) zu kommen, habe ich die beiden Teile DELOCK 88932 und SMA 2XST von Reichelt dazwischen gebaut.

    Was habe ich noch ausprobiert?

    * Den kurzen Antennenstab (23cm mit spiralförmig gewickelten Antennendraht) vom Fußteil abgeschraubt und durch eine selbstgebaute Drahtantenne (ca. 2m) ersetzt, die wirklich gut an einer passenden M5-Schraube am Fußteil befestigt ist. Bringt praktisch nichts

    * An der Zahnscheibe des Anschlusskabels (Masse) einen ebenfalls 2m langen Draht über eine große Karosseriescheibe angeschlossen und den Antennenpol sauber mit einem Stück (ungeschrumpften) Schrumpfschlauch schutzisoliert, um so etwas wie einen Dipol zu bekommen. Bringt ebenfalls nichts

    * Dann habe ich mir noch einen Dipol nach dieser YouTube-Anleitung gebaut, allerdings mit 2*40cm (lambda/2 = 80cm --> 188MHz) Da hat der Youtuber schon recht, das ist eine Wunderantenne -- ich musste mich wundern, dass es bei mir nicht gescheit funktioniert :baeh2:

    Ich glaube, ich werde um einen Antennenverstärker nicht herumkommen. Da werde ich mir das Modul 4723.01 von ATBB zulegen und schauen, was passiert. Die Edithwird in diesem Beitrag noch darüber berichten ;)

    Fazit:

    Wenn's oafach waar, kannt's a Depp aa!

    ...und hier noch ein paar Bilder von meinen Antennenbasteleien

          

          

  • Moin schlizbäda,

    da ich auch schon länger hinter DAB+ hinterher bin..

    Ich habe hier mal was bezüglich Antenne gelesen.

    Zitat

    Ich habe das aus 2 Beiträgen zusammen gebaut.

    Ist ev. von Interesse.

    Gruss Bernd

    Ich habe KEINE Ahnung und davon GANZ VIEL!!
    Bei einer Lösung freue ich mich über ein ":thumbup:"
    Vielleicht trifft man sich in der RPi-Plauderecke.
    Linux ist zum Lernen da, je mehr man lernt um so besser versteht man es.

  • Es ist genau so wie angenommen/befürchtet:

    Dieses Antennenverstärker-Glump (ATBB 4723.01) bringt gar nichts! :baeh2:

    Im DAB+-Modus des MonkeyBoards läuft mit dem Verstärkermodul gar nichts. Am besten (aber nicht wirklich gut :fies:) funktioniert stattdessen noch die Original-Drexantenne® (die werde ich zur Unterscheidung weiterhin so nennen, auch wenn sie vermutlich gar nicht einmal sooo schlecht ist)

    Gott sei Dank kann das MonkeyBoard auch UKW (zum Test: Bayern 1 auf 93,7MHz) empfangen. Damit habe ich im Bastelkeller gefühlt einen wesentlich besseren Empfang. Allerdings tritt das Stereorauschen mehr oder weniger stark in Erscheinung. Dies interpretiere ich als Maß für die tatsächliche Empfangsqualität, es lebe die Analogtechnik!

    Sendersituation in meiner Gegend

    Die Feldstärke von 93,7MHz UKW (Bayern 1) ist wohl grundsätzlich höher, da ich den sogar ganz ohne Antenne empfangen kann, zwar stark verrauscht aber immerhin. Sobald ewas am Antenneneingang dranhängt, ist der Empfang relativ gut. Zum Vergleich: Antenne Bayern (107,7MHz) ist mit der Drexantenne® sehr verrauscht, mit dem ATBB-Zeug funktioniert es gar nicht:

    93,7 MHz kommt mit 100kW Sendeleistung vom Sender Wendelstein, zu dem ich von mir zu Hause aus dem Garten hindernisfreien Sichtkontakt habe.

    107,7MHz kommt mit 50kW Sendeleistung vom Sender Hochries. Auch von diesem Berg sehe ich von zu Hause aus den Gipfel, aber da macht sich wohl die halbe Sendeleistung bemerkbar... Der ist generell als etwas schwächer, das merkt man auch an den klassischen UKW-Radios (z.B. im Auto).

    UKW-Lokalsender wie Radio Charivari (96,7MHz) kann ich mit dem MonkeyBoard (im Keller) gar nicht empfangen

    Die DAB+-Sender haben wesentlich geringere Sendeleistungen:

    Multiplex-Block 5C (Deutschland): 2kW Regelbetrieb (4kW max.)

    Multiplex-Block 11D (Bayerischer Rundfunk): 4kW
    Multiplex-Block 10A (Oberbayern): 4kW
    Quelle: Wikipedia

    Antennenverstärker ATBB 4723.01:

    Nachdem im DAB+-Betrieb kein Empfang möglich ist, teste ich mit UKW 93,7MHz:

    * ohne Antenne: stark verrauscht

    * Drexantenne®: guter Empfang mit leichtem Stereorauschen

    * ATBB 3940.01 (ohne Verstärkerzeug): guter Empfang mit leichtem Stereorauschen

    Hier reicht es, das Fußteil mit der geschirmten(!) Zuleitung anzuschließen :-/

    Mit dem Antennenstab wird's aber nicht wirklich besser:

    * Antennenverstärker ATBB 4723.01:

    - ohne Antenne 3940.01, ausgeschltet: schlechterer Empfang --> hier reicht wohl das Trumm selbst als Antennenersatz

    - ohne Antenne 3940.01, eingeschaltet: bringt keine Verbesserung

    - mit Antenne 3940.01, ausgeschaltet: bringt keine Verbesserung

    - mit Antenne 3940.01, eingeschaltet: bringt keine Verbesserung, tendenziell eher schlechter...

    EDIT:

    Ich habe die verschiedenen Antennen auch gedreht, waagrecht und senkrecht ausgerichtet. Das brachte alles nichts...

    Meine Fragen:

    * Funktioniert der Antennenverstärker überhaupt? Ich weiß nicht, wie ich das nachmessen soll...

    * Ist der Antennenverstärker richtig angeschlossen?

    * Es ist ein kombinierter Verstärker für DAB+ und UKW. Es gibt aber viele mit einer Splitterfunktion und zwei Ausgängen für DAB+ und UKW

    * Würde eine geometrisch gut geformte VHF-Dipolantenne (z.B. Dachantenne Wittenberg-Antennen WB305 oder WB301, die gibt's u.a. beim blau-gelben C) etwas bringen?

    Bernd666:

    Danke für den Link zum Beitrag auf mikrocontroller.net. :thumbup: Damit wurde mir bewusst, dass DAB+ im klassischen VHF-Frequenzband liegt.

    Die dort genannte Firma thiecom ist allerdings mittlerweile wohl etwas suspekt bis nicht mehr existent. Die haben offenbar etliche Kunden durch Nichtlieferung richtig vergrault. Wenn man nach "thiecom" duckt, kommen sehr nachdenklich stimmende Ergebnisse...

    Und wie immer: ein paar Bilder

           

    schlizbäda

  • So und jetzt kein mimimi, sondern ein geschmeidiges hähä!

    Ich habe mich heute ein bißchen in die Antennentechnik eingelesen, auch wenn's nur die Wikipedia war:

    Da gibt es die "klassische" λ/2-Dipolantenne oder Richtantennen wie die Yagi-Uda-Antennen für fetten Antennengewinn, von denen früher(tm) für den terrestrischen Fernsehempfang auf den meisten Häusern welche standen oder auch eine Marconi-Antenne (λ/4-Dipol, Viertelwellendipol, neudeutsch auch Groundplane-Antenne). Als Low-End gibt's auch noch die gerne unterschätzte Wurfantenne :lol:

    Meine ATBB 3940.01 ist eine KFZ-Dachantenne, die letztlich auf dem Prinzip der Marconi-Antenne beruht: Sie ist eine Abwandlung von der klassischen Dipolantenne, wobei eine Dipolhälfte richtig gescheit (=niederohmig) geerdet ist. Die andere Dipolhälfte schaut von der Erde (Masse) raus und hat demnach eine Solllänge von λ/4. Wenn man das weiß (und die Physik weiß es ;)), kann die ATBB 3940.01 ohne grimmige Verschraubung auf einem Masseblech nicht richtig funktionieren.

    Ich habe das Ding an einem alten Metallgehäuse aus der Arbeit verschraubt und siehe da:

    Jetzt kann ich im Bastelkeller Radio BOB! hören :thumbup:YEAH!

    Aber nur, wenn ich den Antennenstab durch eine 2m lange Wurfantenne (ein Stück Draht an einer M5-Schraube) ersetze!

    Radio BOB! im Erdgeschoss mit verschiedenen Antennen

    Radio BOB! befindet sich bei uns im T-DAB-Frequenzband III (VHF) auf Block 5C (178,352 MHz), und wird offenbar mit 2kW effektiver Strahlungsleistung vom Sender Wendelstein gesendet. Nachdem ich im Keller keinen vernünftigen Empfang hatte, habe ich das Zeug im Erdgeschoss aufgebaut. Dort herrschen wesentlich bessere Emfangsmöglichkeiten, da nicht unter der Erde und kein störender Baustahl in der Decke ist. Die angegebene prozentuale Signalstärke ist sicherlich etwas mit Vorsicht zu genießen, da sie nur auf den Messwerten des Empfangsmoduls T2_L4A_8650C des MonkeyBoards beruht.

    Drexantenne®:

    Auf nichtleitendem Papierstapel (Telefonbücher): 11%, 16%, 27%, 38% --> Werte schwanken, das Gespiel ist störanfällig

    Auf Metallgehäuse gestellt: 16% - 55% (tendenziell besser)

    ATBB 3940.01 passiv:

    Auf Papierstapel: 27%, 33%, 38%, 44% --> ähnlich zur Drexantenne®, aber es schwankt nicht ganz so stark

    In Metallgehäuse montiert: 38%, 55%-66% und relativ stabil! Die Antenne muss senkrecht stehen, je flacher umso schlechter wird der Empfang. Ist aber klar, da der Sender die DAB+-Signale mit senkrechter Polarisation abstrahlt (ebenfalls eine "stehende" Antenne).

    ATBB 3940.01 mit Antennenverstärker ATBB 4723.01:

    Der Verstärker bringt keine Verbesserung der Messwerte gegenüber der passiven ATBB 3940.01.

    Das bestätigt meine Meinung zu Antennenverstärkern. Wo nichts oder nur Rauschen ist, kann auch nur dieses Rauschen verstärkt werden. Da der Verstärker (angeblich) UKW und DAB+ abdeckt, ist vielleicht auch die Bandbreite der verstärkten Signale (87MHz-240MHz) zu groß?

    ATBB 3940.01-Antennenfuß mit 2m Drahtantenne im Keller:

    Wenn sie richtig liegt, liegt die Signalstärke konstant bei 38%

    Mit dem mitgelieferten Antennenstab funktioniert es im Keller nicht (0%)

    Das muss man nicht verstehen. Oder wie sagt mein Vater immer: VHF = Verdammt Hohe Frequenz

    Bilder vom Metallgehäuse, um die KFZ-Dachantenne marconimäßig einigermaßen vernünftig hinzubringen:

     

    Während ich diesen Beitrag verfasste, lief Radio BOB! ohne Aussetzer, außer bei der Drehung für das zweite Foto.

    Abmessungen der Box (b x h x t): 245mm x 85mm x 180mm.

    Da werde ich das DAB-Radio reinbauen...

  • Teil 2: Die Software

    Ich habe jetzt mal das C-Demoprogramm vom MonkeyBoard-Projekt (Download: http://www.monkeyboard.org/images/product…pi_keystone.tgz) im Unterverzeichnis keystonecomm/app in ein C++-Programm umgesetzt und erweitert:

    Es ist ein Kommandozeilenprogramm, das seine Kommandos über die Standardeingabe stdin einliest und anschließend auf dem MonkeyBoard (DAB-Radio) eine Aktion anstößt. Die Ergebnisse werden über die Standardausgabe stdout zurückgegeben. Die Details sind im Github-Repository https://github.com/schlizbaeda/DABradio beschrieben.

    Ich habe dieses Programm von der Oberfläche her bewusst primitiv gehalten, um das DAB-Radio modular zu halten:

    * Mit der Eingabe über die Tastatur ist prinzipiell eine Bedienung möglich

    * Es können auch einfache Anweisungslisten als Textdatei erstellt werden. Das DAB-Radio bekommt die Kommandos über eine Pipe:
      cat commandfile.txt | ./dabd

    * Zukunftsmusik tkinter-GUI in Python3 mit Named Pipes, siehe Beitrag #12:
    Es kann ein weiteres Programm (in einer beliebigen Programmiersprache) erstellt werden, das eine GUI zur Verfügung stellt, die Steuerkommandos über über stdout ausgibt und die Ergebnisse über stdin empfängt.

    * Zukunftsmusik:

    Ein weiterer Ausbauschritt ist eine Art Webserver, der über den Browser gesteuert wird, aber ansonsten stdin und stdout wie das GUI-Programm verwaltet. Merkzettel für mich, bis ich weider Zeit/Lust habe: "Skript über Webseite aufrufen und ausführen".

    * EDIT: Noch eine Zukunftsmusik:

    Oder ganz profan ein Programm, das auf Anzeige- und Bedienelemente an der GPIO-Leiste reagiert, aber ansonsten stdin und stdout wie das GUI-Programm verwaltet.


    EDIT:

    Das Buch Ulrich Breymann: Der C plus plus Programmierer [Anzeige] ist schon cool!

    EDIT (20.05.2019):

    In einem Anflug von Überheblichkeit beschloss ich heute, das DAB-Radioprogramm in dabd umzubenennen, da es sich um einen waschechten Linux-Daemon handelt :lol:

    --- Fortsetzung folgt ---

  • Leider bin ich erst heute auf diesen Thread aufmerksam geworden, liest sich insgesamt sehr interessant.

    Meine Erfahrungen mit DAB+ vs. klassischem FM sind eher gemischt, ich bevorzuge wegen der Empfangsproblematik, die du ja sehr ausführlich und schoen zu lesen beschreibst, immer noch FM oder Internetradio.

    Ich habe nicht allzuweit von dir in OB ein DAB+ Radio installiert, unglücklicherweise direkt unterm Fernseher. Wenn der eingeschaltet ist, geht definitiv kein DAB+. Da kann ich mit der mitgelieferten Wurfantenne machen was ich will.

    Ich habe von deinen Beiträgen den Eindruck, dass du tatsächlich weniger unter einer schlechten Antenne leidest als unter Interferenzen von anderen Geräten, wie z.B. dem offenen und nicht abgeschirmten Raspberry Pi, dem Bildschirm u.ä. DAB scheint eine Technik zu sein die auf sowas extrem empfindlich reagiert.

    Folgende Kommentare hab ich noch:

    Dieses Antennenverstärker-Glump (ATBB 4723.01) bringt gar nichts!

    Das wundert mich jetzt nicht. Nach der Friis-Formel ist hauptsächlich die erste Verstärkerstufe für das Gesamtrauschen verantwortlich. Damit das was bringt muss dein Antennenverstärker von der Rauschzahl her schon wesentlich besser sein als dein DAB Empfänger - was unwahrscheinlich ist.

    Man setzt Antennenverstärker vor allem dann direkt an der Antenne ein, wenn lange Strecken mit Koaxialkabeln überbrückt werden müssen. Du musst dir vorstellen, du verstärkst neben dem Signal ja auch das Hintergrundrauschen und die Interferenzen mit, plus dem thermischen Rauschen des Verstärkers. Das macht die Sache meistens nicht besser.

    das ist jetzt vielleicht/hoffentlich etwas für'n jar, dessen Erfahrung bezüglich Analogtechnik ich sehr schätze

    Analogtechnik ist nicht gleich HF-Technik. Ich teile mit dir die Wertschätzung von jar, allerdings wäre es mir neu wenn er was von HF verstünde...sorry.

    Dies ist eine passive Antenne ohne zusätzliche Antennenverstärkergaudi. Davon halte ich prinzipiell relativ wenig, denn ein vernünftiger physikalischer Antennengewinn ist durch nichts zu ersetzen, außer durch noch mehr Gewinn (ist wie beim Auto mit dem Hubraum ;) )

    "ein vernünftiger physikalischer Antennengewinn ist durch nichts zu ersetzen" - das ist ein totales Missverständnis! Und der Vergleich mit dem Hubraum geht eigentlich nicht -

    Ein Isotropstrahler ist eine Antenne die in alle Richtungen die selbe Strahlungsleistung abgibt, sie dient als ideale Referenz und hat somit einen Gewinn von 0 dBi. Ein Dipol hat eine gewisse Richtwirkung in bestimmte Richtungen von +3dBi, in anderen Richtungen aber empfängst du gar nix. Je hoeher der Antennengwinn einer Antenne, desto hoeher auch deren Richtwirkung. Wenn du für DAB Richtantennen mit viel Gewinn verwenden willst, werden die physikalisch ziemlich gross. Gegen die Physik kommst du nicht an. Also, die Grundregel lautet: je niedriger der Gewinn einer Antenne, desto universeller kannst du sie einsetzen und desto weniger Probleme hast du damit in der Praxis. Antennen mit viel Gewinn setzt man dann ein wenn die Antenne fest installiert ist und auf eine andere (Sender) Antenne zielt. im Auto geht das nicht. Siehe auch hier zum Thema.

  • Analogtechnik ist nicht gleich HF-Technik. Ich teile mit dir die Wertschätzung von jar, allerdings wäre es mir neu wenn er was von HF verstünde...sorry.

    als gelernter RFS Techniker bin ich leider + 30 Jahre aus dem Geschäft raus.

    Ich habe HF immer gehasst, Tuner zerlegen reparieren und abgleichen konnte ich mal.

    HF bleibt unsympatisch.

    Ein ehemaliger Mitlehrling und danch studierter Nachrichten.Ing. berichtete aus der Entwicklung was sich mehr wie Basteln ausging.

    Neue Platine entwerfen, Muster bauen lassen, messen und testen und dann verwerfen und von vorne neu.....

    Das ist nicht so meines, aber rudimentäre Kenntnisse habe ich schon.

    Ein SDR- Projekt auf Basis von RTL-chip Tuner habe ich am PC aber gut in Betrieb genommen, genauso wie ein FM-Tuner in Stereo auf GNU Radio Basis, Grundlagen sind hilfreich.

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

  • nurazur:

    Danke für Deinen fachlich fundierten Beitrag zur Antennenproblematik. Damit wird mein diesbezüglich stark vereinfachtes Weltbild weitestgehend bestätigt, räumt aber das gefährliche Halbwissen (=Fehlinformation oder auf neudeutsch "Fake News") in meinen obigen Beiträgen aus.

    jar:

    Deine Erfahrungen decken sich so ziemlich mit denen meines Vaters:

    Der sagt auch immer, dass es für die Antennendimensionierung Formeln(*) gibt. Aber das haben die in der Arbeit bei der Post (heutigen Telekom) damals in den 80ern bei der Einführung des Satelliten- und Kabelfernsehens nie verwendet, da die Formeln erstens zu kompliziert sind und zweitens keinerlei Randbedingungen berücksichtigen. Stattdessen wurden bei der Inbetriebnahme der Antennen und der daran verbundenen Hohlleiter die Reflexion gemessen und in bester try-and-error-Mentalität kurze Stücke am Hohlleiter entfernt oder dazugebaut, bis es messtechnisch passte.

    (*) Bääh, diese praktisch unlösbaren Differentialgleichungen! Außer für Trivialfälle nicht berechenbar. Damit wurden wir in der Schule im Physik-Leistungskurs geplagt!

  • Das fing ja schon mit Spulen berechnen an, erst rechnen, dann wickeln und dann wieder von vorne, wer vorher rechnet muss eh mindestens 2x rechnen.

    Bestes Beispiel Brücken, die Brooklyn Bridge mit viel Angstzuschlag gebaut war sicher nicht für heutige Belastungen gebaut, aber mit guter Pflege über 100 Jahre alt, heutige gut berechnete Brücken leben nicht mal 40 Jahre.

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

  • Tuner zerlegen reparieren und abgleichen konnte ich mal.

    Es ist gaaanz lang her, da hab ich Tuner entwickelt. Sowas hinzukriegen braucht verdammt viel Erfahrung, hilfreiche Simulationssoftware war noch in den Kinderschuhen und hat somit wenig gebracht, da bleibt nur ausprobieren,verwerfen, den Chef fragen, was anderes ausprobieren etc solange bis es passt. Da war (mir zu) viel schwarze Magie dabei, ich habs dann sein lassen und habe umgesattelt, bin der HF Technik aber treu geblieben.

  • Software: Eine tkinter-GUI in Python3 für dabd mit Anbindung über Named Pipes (FIFO)

    Nachdem ich beschlossen hatte, die Software für mein DAB-Radio ganz großspurig als Linux-Daemon zu deklarieren, habe ich das Hauptprogramm in dabd umbenannt.

    Bei der Gelegenheit wurde das Github-Repository github.com/schlizbaeda/DABradio etwas umstrukturiert und die README.md aktualisiert.

    Neu hinzugekommen ist die tkinter-GUI in Python3 dabgui.py. Dabei habe ich auch versucht, mich mal zur Abwechslung ein wenig an PEP8 zu halten. Allerdings ist dieses Python-Programm noch nicht ganz fertigprogrammiert, es fehlen noch etliche wichtige Steuerelemente. Vielmehr ist es eher eine Machbarkeitsstudie. Und so sieht es aus:

    Die Kommunikation erfolgt über die Umlenkung von stdin und stdout über die sogenannten Named Pipes aka FIFOs von Linux. Dazu werden zwei Named Pipes angelegt:

    Code
    mkfifo fromDABD toDABD

    Der Programmstart unter Verwendung der Named Pipes erfolgt über das Shellscript dabradio.sh, das lediglich aus folgenden Zeilen besteht:

    Bash
    #!/bin/bash
    ./dabd >fromDABD <toDABD &
    ./dabgui.py <fromDABD >toDABD

    Damit die Programme durch die Standardeingabe stdin nicht blockiert werden, habe ich mir sowohl im C++-Code als auch im Python3-Script die Auslagerung der Einleseroutinen in eigenständige Threads gegönnt :geek: *angeb*

    Die Details und eine Schritt-für-Schritt-Installationsanweisung sind im README.md des github-Repositorys beschrieben.

    Hinweis:

    Wer kein DAB-Radio bauen will, aber die Sache mit den Named Pipes ausprobieren will, ist herzlich eingeladen, das Repository dennoch herunterzuladen:

    Es gibt nämlich einfache Hilfskommandos für dabd, die nichts mit dem DAB-Radio zu tun haben:

    allgemeine dabd-Kommandos
    Code
    help                   show this help screen
    help <command>         show detailed help on the given command
    ver                    display the program version (v0.1)
    sleep <ms>             delay time in milliseconds
    exit || quit           exit/quit this application

    PS:

    Während ich das schrieb, lief Rock Antenne

  • Ich hatte gerade bei einem Kollegen DAB+ Radio probegehört,

    funktioniert gut, der Link zum Projekt

    https://github.com/JvanKatwijk/qt-dab

    qmake davor installieren

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

  • DAB+ und DVB-T2 HD Antennen...

    Ich habe gute Erfahrungen gemacht, nachdem ich den Magnetfuß der Antenne auf ein größeres Metallteil gepackt hatte.

    Eine Lochplatte aus dem Baumarkt

    https://www.hornbach.de/data/shop/D04/…20821143557.jpg

    reicht, um die Magnetantenne mit einem 'Gegengewicht' zu versehen, welches den Empfang unglaublich verbessert hatte.

    Das Ding liegt jetzt auf dem Schrank. (Die DAB-T Anlage habe ich weitergegeben ;) Nicht, weil sie nicht funktionierte, sondern weil ich sie nicht mehr brauchte.

    Computer ..... grrrrrr

  • Jetzt zu Zeiten des Corona-HomeOffice habe ich mir mein DAB-Radio für Rockantenne zum Arbeits-PC mit Windows 10 geholt. Win10 ist besser als sein Ruf oder anders gesagt, es bietet im Gegensatz zu Win7 einige von Linux abgekupferte Featrues wie systemseitiges Drucken in eine PDF-Datei oder ssh.

    Damit kann ich fauler Hund (weil ich bisher softwaremäßig keine DAB-Clients mehr programmiert habe) in einem cmd.exe-Fenster mich auf meinem DAB-RPi anmelden, dabd starten und mein Radio vollständig über Tastaturkommandos steuern.

  • Win10 ist besser als sein Ruf

    Welcher Ruf? Es gibt sicher etliches, was nervt. Angefangen von inkosistenten Einstellungen, mal mit "neuem" Gewand mit lustigen Schiebern und ähnlichem Gedöns, mal zum richtigen Einstellen, wie mans schon immer tat. Sowas nervt. Ansonsten ist mir das System deutlich zu geschwätzig "nach Hause". Was man erst abgewöhnen muss.

    Sonst funktioniert vieles außerordentlich gut. /OT ;)

  • ich mag Win10 wirklich überhaupt nicht. Wenn mein Arbeitgeber meint, die Geschwätzigkeit sei kein Problem, so ist das seine Sache und ich verwende es halt für die Arbeit. Aber privat kommt mir das auf keinen PC mehr drauf. Lieber kaufe ich mir ja einen anderen DJ-Controller...

    Aber ab und zu passieren denen bei MS "Ausrutscher" in Form von ssh oder als PDF drucken und Win10 wird aus Versehen in Ansätzen gut :S

  • Ich habe gute Erfahrungen gemacht, nachdem ich den Magnetfuß der Antenne auf ein größeres Metallteil gepackt hatte.

    Eine Lochplatte aus dem Baumarkt

    https://www.hornbach.de/data/shop/D04/…20821143557.jpg

    reicht, um die Magnetantenne mit einem 'Gegengewicht' zu versehen, welches den Empfang unglaublich verbessert hatte.

    Das Ding liegt jetzt auf dem Schrank.

    Genau das ist das Prinzip der Marconi-Antenne: Die eine Hälfte des gedachten λ/2-Dipols ist die Antenne selbst (λ/4), die andere Hälfte ist eine vernünftige Erdung. Da reicht eine relativ kleine Metallplatte als Gegengewicht, wie Du es treffend bezeichnest. Im KFZ-Bereich ist es ja ähnlich, da ist die Karosserie das Erdungsblech.

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!