NXP TEF6686 auf Arduino

Das Radioforum. Hier dreht sich alles um die technischen Seiten des Radio- und TV-Empfangs.
Radio-DX
Beiträge: 849
Registriert: Fr 31. Aug 2018, 22:08
Wohnort: Nähe Neustadt a.d. Orla (Ostthüringen)

Re: NXP TEF6686 auf Arduino

Beitrag von Radio-DX »

Mein Bekannter hat sich das Radio mit der 4-zeiligen Anzeige gebaut.
Nun besteht bei ihm das Problem, dass nach einiger Zeit der Empfang stark verrauscht ist.
Dieser Fehler war ja bereits bekannt.
Ich soll hier mal fragen, ob es inzwischen eine andere (fehlerfreie) Software-Variante
für die 4-zeiligen Anzeigen gibt.
Nach einigen Wochen mit wilden Software-Versuchen haben wir etwas den Überblick verloren. :D

Noch eine Beobachtung von mir.
Habe das Gerät nun etwas getestet.
Der PI-Code ist leider sehr "nervös" und wird eigentlich fast nur bei recht starken Sendern zuverlässig angezeigt.
Bei schwächeren Sendern erscheint auch viel sinnloses Zeug auf dem Display.
Teilweise wird alle paar Sekunden etwas anderes angezeigt.
Sehr seltsam kommt mir auch vor, dass der PS fest angezeigt wird und der PI ständig wechselt.
Bei allen anderen RDS-Decodern ist es genau andersrum. Der PS ist am empfindlichsten.
Bei meinem Eigenbau RDS-Decoder wird der PI angezeigt und bleibt dann stehen bis ein neuer eingelesen wird.
Es kommt nur selten vor, dass der Code bei dem eingestellten Sender wieder wechselt.
Das passiert nur bei Senderwechsel.
Kann da an der Software noch etwas geändert werden?
Ich bin da etwas verwöhnt und es nervt bei Sporadic-E.
Man kann sich nicht auf die Anzeige verlassen. :rolleyes:
Eigentlich wollte ich doch damit noch mehr Logs sammeln. :)
QTH: Nähe Neustadt a.d. Orla (Ostthüringen)
Empfangsrekord mit RDS-PS: 3075 km (Madeira: 88,0 MHz, Radio Renascenca, Sporadic-E am 12.06.2013)
carkiller08
Beiträge: 1658
Registriert: Fr 31. Aug 2018, 17:01
Wohnort: Sachsen-Anhalt / Harzvorland

Re: NXP TEF6686 auf Arduino

Beitrag von carkiller08 »

Versuche mal die Version aus meinem Beitrag aus dem Technik-Forum vom 15.Mai.
In der Zip-Datei sind mehrere Versionen mit dem neueren Patch-Code p222.

* TEF6686_nocom
Das ist die Version , die fast 8kB RAM benötigt und sich nicht für Erweiterungen eignet.

* TEF6686_nocom_progmem
Das ist die Version mit PROGMEM, die sich aufgrund von mehr freien RAM besser für Erweiterungen eignet.

Im Prinzip sollte es reichen , wenn dein Kumpel von der Version "TEF6686_nocom_progmem" die 3 Dateien
Tuner_interface.h
Tuner_interface.cpp
Tuner_patch_Lithio_p222.h

rauskopiert und in seinen Sketch einsetzt. Dann sollte der Audio-Fehler nicht mehr auftreten. :cheers:

Wegen PI-Code müsste jemand mit mehr Ahnung ran.
Vieleicht lässt sich dass wie mit dem PS lösen wie im Putty-Sketch oder Nicu's V3-Version,
wo einmal ein Safe_PS und ein Unsafe_PS gibt bzw. dies erkannt wird.
Zuletzt geändert von carkiller08 am Mo 25. Mai 2020, 23:35, insgesamt 2-mal geändert.
DXHR
Beiträge: 348
Registriert: Sa 27. Apr 2019, 20:27

Re: NXP TEF6686 auf Arduino

Beitrag von DXHR »

Fredfrei hat geschrieben: Mo 25. Mai 2020, 22:18 Ich denke das ist die Abschirmung ,ich habe das auch mit GND verbunden.
Aber da können dir die Elektroniker hier bestimmt mehr dazu sagen .
Meinst du diese "Metalllaschen"? Die sind bei dir mit GND verbunden?
Fredfrei hat geschrieben: Mo 25. Mai 2020, 22:18 Wenn du Tasten und ein Display hast versuch mal mit einer Batterie, wirst sehen noch weniger Störungen.
Aber das sieht doch gut bei dir aus.
:spos:
Ich bin so verliebt in das XDR-GTK mit dem ich das ganze gesteuert hab. Aber ich hab noch eine 16x2 Anzeige, paar Tasten und einen Batterieanschluss liegen, wird dann morgen getestet.
Standort: Wien, Österreich
Empfänger: Airspy HF+ Discovery, TEF6686 Portable, Dual MCR 200
Radio-DX
Beiträge: 849
Registriert: Fr 31. Aug 2018, 22:08
Wohnort: Nähe Neustadt a.d. Orla (Ostthüringen)

Re: NXP TEF6686 auf Arduino

Beitrag von Radio-DX »

@ carkiller08
Danke, werde es so weitergeben.
Ansonsten ein schönes Spielzeug. :)
Kumpel ist besonders von der Empfindlichkeit begeistert.
QTH: Nähe Neustadt a.d. Orla (Ostthüringen)
Empfangsrekord mit RDS-PS: 3075 km (Madeira: 88,0 MHz, Radio Renascenca, Sporadic-E am 12.06.2013)
carkiller08
Beiträge: 1658
Registriert: Fr 31. Aug 2018, 17:01
Wohnort: Sachsen-Anhalt / Harzvorland

Re: NXP TEF6686 auf Arduino

Beitrag von carkiller08 »

TEF_Tuner.png
Wenn mit "Metalllaschen" die beiden Teile links und rechts neben den Anschlüssen gemeint sind, die
Teil des Metallgehäuses sind, können die natürlich mit Masse verbunden werden.

Man kann den TEF6686 auch so konfigurieren (legacy rds decoder), dass zwei GPIO Anschlüsse
RDS-CLK und RDS-Data ausgeben. Dann lässt sich ein ganz normaler RDS-Decoder extern anschließen.

Bei dem alten Sketch für XDR-GTK hatte ich das mal getestet, als die RDS.Daten noch nicht an XDR-GTK
weitergegeben wurden. Das funktionierte mit folgenden drei Zeilen Erweiterungs-Code in den Property-Settings.

Code: Alles auswählen

9, 0x40,0x03,0x01,0x00,0x00,0x00,0x20,0x01,0x04,// GPIO0Pin=RDS_DATA
9, 0x40,0x03,0x01,0x00,0x01,0x00,0x20,0x01,0x05,// GPIO1Pin=RDS_CLOCK
9, 0x20,0x51,0x01,0x00,0x01,0x00,0x02,0x00,0x04,// RDS legacy output enable 
Das müsste dann in der Datei Tuner_Interface.cpp entsprechend ergänzt werden.





Bei den 19-poligen Tunern sind zwei GPIO-Pins nach aussen geführt.
Bei den 10-poligen sind sie zumindest offiziell nich heraus geführt.
Es gibt aber mindestens eine Zeichnung in einem YT-Video, wo es so aussah, als ob
das doch ginge. Eigentlich sind diese beiden Anschlüsse aber mit nc (not connected) beschriftet.
Radio-DX
Beiträge: 849
Registriert: Fr 31. Aug 2018, 22:08
Wohnort: Nähe Neustadt a.d. Orla (Ostthüringen)

Re: NXP TEF6686 auf Arduino

Beitrag von Radio-DX »

Habe mal den Belegungplan des Chips im Technik-Forum gepostet.
Herausführen der GPIO-Anschlüsse wäre wünschenswert.
Da könnte ich meinen vorhandenen (Top-) RDS Decoder wieder verwenden oder den PC anschließen. :)
QTH: Nähe Neustadt a.d. Orla (Ostthüringen)
Empfangsrekord mit RDS-PS: 3075 km (Madeira: 88,0 MHz, Radio Renascenca, Sporadic-E am 12.06.2013)
DXHR
Beiträge: 348
Registriert: Sa 27. Apr 2019, 20:27

Re: NXP TEF6686 auf Arduino

Beitrag von DXHR »

carkiller08 hat geschrieben: Di 26. Mai 2020, 00:08 Wenn mit "Metalllaschen" die beiden Teile links und rechts neben den Anschlüssen gemeint sind, die
Teil des Metallgehäuses sind, können die natürlich mit Masse verbunden werden.
Danke für die Info!

Mir hat das Ganze aber jetzt keine Ruhe gelassen, deshalb habe ich das PC-lose Setup schnell aufgebaut.
Alles verkabelt, Code umgeschrieben damit er mit meinem Tastenfeld und ganz ohne PC funktioniert.
Das Ergebnis war etwas enttäuschend.

Ich habe das Gefühl, dass der Empfang über XDR-GTK besser läuft, als über Seriellen Monitor oder per Knöpfchen und LCD Display.
Auch das Audio war gefühlt schlechter und undeutlicher, obwohl an der Verkabelung nicht viel geändert wurde.
Der riesige Vorteil von XDR-GTK ist auch, dass man in sekundenschnelle Frequenzen ändern kann, so konnte ich gestern auch kurz ein E-skip Fading aus der Türkei erwischen.
Mit meinem Tastenfeld wär da sicher schon eine halbe Minute weg gewesen. Nachteil ist halt, dass es nicht so portabel ist wie das Knöpfchen-LCD Setup.

Vielleicht gibt es ja wen mit ähnlichen Erfahrungen :gruebel:

Zum Audio muss ich noch sagen:
Komischerweise bekomme ich nur bei meinem JBL Lautsprecher klaren Sound per Klinkenstecker. Der LSP kann auch selber die Lautstärke regulieren.
Wenn ich Kopfhörer anschließe ist es entweder sehr leise (wenn ich in XDR-GTK die Lautstärke etwas runterdrehe) oder total übersteuert. Dazwischen gibts nichts.
Weiß da einer eine Löusung?
Standort: Wien, Österreich
Empfänger: Airspy HF+ Discovery, TEF6686 Portable, Dual MCR 200
carkiller08
Beiträge: 1658
Registriert: Fr 31. Aug 2018, 17:01
Wohnort: Sachsen-Anhalt / Harzvorland

Re: NXP TEF6686 auf Arduino

Beitrag von carkiller08 »

Versuche mal zwei Widerstände zwischen Tuner und Kopfhörer zwischenzuschalten.

Genaue Werte kann ich dir nicht sagen, da dies auch vom Kopfhörer abhängig ist.
Ich würde es mal mit 470 Ohm oder 680 Ohm versuchen.

Sauber einstellen lässt sich die Lautstärke eigentlich über xdr-gtk.

Bei mir habe ich einen TDA2822M Audioverstärker mit Lautsprecher hinter dem Tuner angeschlossen.
Zwischen Tunerausgang und Verstärkereingang (R_in 10kOhm) sind noch Elkos (DC-Blocker) und
160kOhm-Widerstände zur Pegelreduzierung.
Fredfrei
Beiträge: 65
Registriert: Di 25. Feb 2020, 22:37

Re: NXP TEF6686 auf Arduino

Beitrag von Fredfrei »

Kannst du mal den Link zu dem zip. Posten
.
Onkyo 4970 / Pioneer F 502 / Yamaha CT-610 /Seangean DT 800 / Sony XDR-S60DBR / Sangean ATS 909/TEF6686 Der letzte seiner Art
Fredfrei
Beiträge: 65
Registriert: Di 25. Feb 2020, 22:37

Re: NXP TEF6686 auf Arduino

Beitrag von Fredfrei »

Hat jemand schon das mit der nervösen Pi Anzeige in den griff bekommen ?
Onkyo 4970 / Pioneer F 502 / Yamaha CT-610 /Seangean DT 800 / Sony XDR-S60DBR / Sangean ATS 909/TEF6686 Der letzte seiner Art
Radio-DX
Beiträge: 849
Registriert: Fr 31. Aug 2018, 22:08
Wohnort: Nähe Neustadt a.d. Orla (Ostthüringen)

Re: NXP TEF6686 auf Arduino

Beitrag von Radio-DX »

Bisher sind hier noch keine Erfolge zu verzeichnen.
Wird wohl nur durch Software-Eingriffe zu lösen sein.
QTH: Nähe Neustadt a.d. Orla (Ostthüringen)
Empfangsrekord mit RDS-PS: 3075 km (Madeira: 88,0 MHz, Radio Renascenca, Sporadic-E am 12.06.2013)
Fredfrei
Beiträge: 65
Registriert: Di 25. Feb 2020, 22:37

Re: NXP TEF6686 auf Arduino

Beitrag von Fredfrei »

Danke für die Info, müssen wir also noch etwas warten.
Onkyo 4970 / Pioneer F 502 / Yamaha CT-610 /Seangean DT 800 / Sony XDR-S60DBR / Sangean ATS 909/TEF6686 Der letzte seiner Art
Fredfrei
Beiträge: 65
Registriert: Di 25. Feb 2020, 22:37

Re: NXP TEF6686 auf Arduino

Beitrag von Fredfrei »

Wegen der Pi Anzeige ,ich da habe etwas gefunden.
Könnte das mal jemand testen.
Es muss in der TEF6686.cpp Datei, folgendes eingefügt werden
if (errA == 0) {
und am Ende ein }

wo der pi code steht.
hier noch ein bild
Dateianhänge
DSC00202.JPG
Onkyo 4970 / Pioneer F 502 / Yamaha CT-610 /Seangean DT 800 / Sony XDR-S60DBR / Sangean ATS 909/TEF6686 Der letzte seiner Art
carkiller08
Beiträge: 1658
Registriert: Fr 31. Aug 2018, 17:01
Wohnort: Sachsen-Anhalt / Harzvorland

Re: NXP TEF6686 auf Arduino

Beitrag von carkiller08 »

Bei einem Sender, wo die PI-Anzeige eigentlich gleich da ist, aber sich dann immer mal ändert,
habe ich so eine eindeutige Verbesserung. :spos:

Bei einem schwachen Sender (SS 14..15) , wo erstmal kein PI kommt, kann nach einiger Zeit aber trotzdem
noch ein falscher PI kommen.

Das kann aber selbst mit XDR-GTK (anderer Sketch) gelegentlich vorkommen.

Mit welcher Zuverlässigkeit solche Fehler über Checkword+Offset erkennbar sind, weiß ich nicht so genau.
Bei grenzwertigen Empfang wird es aber immer eine Herausforderung in Sachen Zuverlässigkeit bleiben.

Bild
Fredfrei
Beiträge: 65
Registriert: Di 25. Feb 2020, 22:37

Re: NXP TEF6686 auf Arduino

Beitrag von Fredfrei »

Ich verstehe leider den RDS Code noch nicht richtig.
Wenn jemand weis wie man den Checkword+Offset auslesen kann,könnte man das ja mal testen.
Ich bin mir auch noch nicht sicher ob das die perfekte Einstellung ist ,ich bin noch am schauen.
wenn jemand lust hat kann es mal mit <=1 testen oder einer anderen zahl.
Ich schaue mir zur Zeit noch die Ausgaben von Serial.println(errA); an.
bzw. die anderen RDS Ausgaben.
Wenn das mal jemand mit logen und vergleichen könnte wäre super.


MfG
Onkyo 4970 / Pioneer F 502 / Yamaha CT-610 /Seangean DT 800 / Sony XDR-S60DBR / Sangean ATS 909/TEF6686 Der letzte seiner Art
Antworten