NXP TEF6686 auf Arduino

Das Radioforum. Hier dreht sich alles um die technischen Seiten des Radio- und TV-Empfangs.
Fredfrei
Beiträge: 65
Registriert: Di 25. Feb 2020, 22:37

Re: NXP TEF6686 auf Arduino

Beitrag von Fredfrei »

Bei dem Shield muss man in der Datei Button.ino unter A0 die Werte anpassen.
So wie ich es verstanden habe ist der pin A0 an einem Widerstandsnetzwerk und das sind halt die Toleranzen.
Ich habe einfach ein Beispiel aus dem Netz genommen und getestet.
Ich bin auch noch am lernen wie so ein Arduino bzw. Coden dafür funktioniert .
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 »

Ich habe eben mal dein Pythoncode getestet .
Leider erhalte ich keinen Ton ,kannst du dir mal die Ausgabe der Konsole anschauen .
Ich kann leider nicht erkennen was für einen Fehler ich mach.

pi@raspberrypi:~ $ ipython3 /home/pi/Desktop/pytef6686-master/example.py
Initializing Raspberry Pi's I2C bus...
Searching for tuner module at I2C adress 0x64 ...
Tuner module detected!
Patching tuner...
Activating crystal oscillator...
Applying settings...
Tuner found in IDLE state...
Setting volume to 12 ...
Tuning to frequency 8920 in band FM
---------------------------------------------------------------------------
UnboundLocalError Traceback (most recent call last)
~/Desktop/pytef6686-master/example.py in <module>
21 tuner.tune_to('FM',8920)
22
---> 23 tuner.get_signal_info() # returns info about tuned signal: strength in dBµV, stereo (true/false), RDS available (true/false)
24
25 tuner.get_RDS_data() # rudimentary implementation to read RDS PS, PTY, TP

~/Desktop/pytef6686-master/TEF6686.py in get_signal_info(self)
585 RDS_available = False
586
--> 587 print(RF_level, " dBµV, Stereo: ", FM_stereo, " RDS: ", RDS_available)
588
589 return RF_level, FM_stereo, RDS_available

UnboundLocalError: local variable 'FM_stereo' referenced before assignment
:danke: für deine Arbeit
Onkyo 4970 / Pioneer F 502 / Yamaha CT-610 /Seangean DT 800 / Sony XDR-S60DBR / Sangean ATS 909/TEF6686 Der letzte seiner Art
Cha
Beiträge: 1602
Registriert: Fr 31. Aug 2018, 16:28
Wohnort: Zittauer Gebirge (Ostsachsen)

Re: NXP TEF6686 auf Arduino

Beitrag von Cha »

Fredfrei hat geschrieben: Mo 13. Apr 2020, 20:34 UnboundLocalError: local variable 'FM_stereo' referenced before assignment
Klingt so, als ob die Variable "FM_stereo" aufgerufen wird bevor diese initialisiert worden ist. Es soll also bei Zeile 587 ein Wert ausgegeben werden, welcher zu diesem Zeitpunkt noch nicht existiert.
Beiträge: +5070 von MySnip seit 12/2013
gs2006
Beiträge: 9
Registriert: Sa 4. Mai 2019, 19:48

Re: NXP TEF6686 auf Arduino

Beitrag von gs2006 »

@Fredfrei: Vielen Dank für's Testen! Der Fehler lässt sich temporär umgehen, indem du "elif result == b'\x00\x00':" (Z. 576) in "else:" änderst, damit die Variable "FM_stereo" initialisiert wird. Das eigentliche Problem ist aber, dass die Abfrage der Signal-Infos ins Leere läuft, weil das Modul nach den Initialisierungsbefehlen im "ACTIVE" (und nicht "IDLE") state gefunden werden müsste. Deswegen kommt da auch bisher kein Ton. Ich denke, dass es funktionieren wird, wenn du die Befehle in der "example.py" Zeile für Zeile in die ipython-Konsole einfügst. Das dürfte dann daran liegen, dass zwischen den drei "init"-Befehlen ein Abstand von ein paar 100 ms liegen sollte, den ich bisher im "example.py" vergessen habe. Wird also meine nächste Aufgabe, diese Init-Prozedur auf einen einzigen Befehl zusammenzufassen :) . Wie gesagt, die Bibliothek ist im Moment noch ein Proof-of-principle.
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 »

Ich möchte mich nun auch näher mit dem Thema befassen.
Da ich von "Programmieren" nichts verstehe, habe ich einen Bastelfreund um Hilfe gebeten.
Er experimentiert seit einiger Zeit etwas mit Rasperry und Arduino herum. (auch nur Laie)
Nun würden er gern wissen, welches Software-Tool für
den "Arduino Mega 2560 R3" von Elegoo wir nutzen sollten.
Die vorhandene Anzeige wäre zweizeilig mit 16 Zeichen.
Was brauchen wir alles dazu?
Der Tuner ist zwar noch nicht bestellt, aber er will die Zeit schon mal nutzen.
Hat evtl. noch jemand einen Tuner übrig? :)
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: 1676
Registriert: Fr 31. Aug 2018, 17:01
Wohnort: Sachsen-Anhalt / Harzvorland

Re: NXP TEF6686 auf Arduino

Beitrag von carkiller08 »

Als Programmier-und Entwicklungsumgebung die Arduino IDE
https://www.arduino.cc/en/main/software

Software (Sketch) für das Mega 2560 Board mit 16x2 LCD siehe
Technik-Forum / mein Beitrag vom 3.April 2020 ;-)
Das ist die voraussichtlich letzte Version für das Mega2560 Board
mit 16x2 LCD.

Ihr könnt (müsst nicht) auch erst mal zum Testen den Sketch für das 20x4 LCD nehmen vom
https://github.com/tehniq3/TEF6686/tree ... 602i2c_v3x
Beschreibung : https://nicuflorica.blogspot.com/2020/0 ... f6686.html


Neben Mega2560 Board, Tuner , LCD wird noch ein I²C-Adapter (mit PCF8574T)
benötigt, der hinten am LCD angelötet wird.

In der Arduino IDE muss noch eine Bibliothek "LiquidCrystal_I2C" installiert werden,
damit das LCD funktioniert.
https://github.com/fdebrabander/Arduino ... 2C-library
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 »

Vielen Dank. :spos:
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 »

An alle Programmierer unter euch,
Eventuell kann mir einer von euch helfen ich suche alle Befehle die man direkt nutzen kann .
Bis jetzt habe ich nur 2 Befehle gefunden .
Radio_NextBand();
Radio_SetBand();
Ich such eine Möglichkeit auf Mono umzuschalten,sowie die Filter Wahl.
Und die AM Funktion anzupassen.
:motz: :dx:
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 »

Ich möchte euch heute mal meine kleinen Fortschritt zeigen.
Ist zur Zeit ein TFT mit 3,5 Zoll .
Bedienung erfolgt über eine ir Fernbedienung.
Das Video zeigt die Filter Umschaltung.
Der Filter Auto ist von 56 bis 236 kHz.

https://youtu.be/DwiynF0z4sI

Ich suche noch immer einen Programmierer der mir verschiedene Sachen erklärten kann.
:D
:dx:
Onkyo 4970 / Pioneer F 502 / Yamaha CT-610 /Seangean DT 800 / Sony XDR-S60DBR / Sangean ATS 909/TEF6686 Der letzte seiner Art
ullibg
Beiträge: 1131
Registriert: Fr 31. Aug 2018, 16:59

Re: NXP TEF6686 auf Arduino

Beitrag von ullibg »

Na, dass ganze hat doch schon Gesicht !
Nur leider habe ich von der Progammierung keinen Plan.
Standort: 10E14 / 51N49, 360m ü. N.N., LdKr. Osterode/Harz
UKW-FM PORTABEL: Verschiedene TEF6686 Tuner , 9-ELE. Eigenbau nach P.Körner, 9.2 nach Körner von Antennenland
DAB+ : Roberts expression mit Teleskopantenne
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 »

Ich hätte auch einen Sonderwunsch an die Software-Experten.
Auf Seite 2 gab es am 13. Januar ein Beispiel zum Loggen der Empfänge.
Die dort aufgezeichneten Daten sind natürlich "sehr wild" und auch zu viele.
Ich würde mir eine Möglichkeit wünschen, wo man die Daten, des gerade eingestellten Programmes,
auf Tastendruck speichern könnte. (Frequenz, RDS-PI, RDS-PS) Sporadic E Saison geht ja bald los. :)
Später sollten sich die Daten auf den PC übernehmen lassen.
Löschung sollte dann durch PC oder auch per Tastendruck möglich sein.

Hat dazu jemand Ideen und kann helfen?
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 »

Radio-DX hat geschrieben: So 3. Mai 2020, 22:49 Ich hätte auch einen Sonderwunsch an die Software-Experten.
Auf Seite 2 gab es am 13. Januar ein Beispiel zum Loggen der Empfänge.
Die dort aufgezeichneten Daten sind natürlich "sehr wild" und auch zu viele.
Ich würde mir eine Möglichkeit wünschen, wo man die Daten, des gerade eingestellten Programmes,
auf Tastendruck speichern könnte. (Frequenz, RDS-PI, RDS-PS) Sporadic E Saison geht ja bald los. :)
Später sollten sich die Daten auf den PC übernehmen lassen.
Löschung sollte dann durch PC oder auch per Tastendruck möglich sein.

Hat dazu jemand Ideen und kann helfen?
Mir würde spontan einfallen, dass man die RDS Daten + Frequenz sich in einem lesbaren Format in die serielle Konsole anzeigen lässt und sich diese Anzeige dann in ein .txt File speichert.
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 »

Danke.
Ich werde das mal an meinen Bastelfreund weitergeben.
Davon habe ich keine Ahnung.
Er hat mir die Softwaresachen erledigt.
Naja, ein Rentner mit 69 hat auch Zeit dazu. :D

Mein neues DX-Spielzeug liegt nun auch "nackt" auf dem Tisch und funktioniert sehr gut.
Viel gab es dabei aber für mich nicht zu basteln.
Tuner mit Leiterplatte hat mir "carkiller08" beigesteuert und die Software wurde vom Kumpel erledigt.
Nur die Anzeige habe ich selbst in meinen Bastelkisten suchen müssen. :)
Nun mache ich mir Gedanken über die Entstörung, Abschirmung und das Gehäuse.
Am liebsten möchte ich gleich noch einen DAB-Teil mit einbauen.
Dazu könnte ich das Innenleben aus einem DAB-Radio nutzen und nur die Schalter und Knöpfe verlegen.
Wenn ich immer nur einen Teil einschalte (FM oder DAB), sollten sich die Teile auch nicht gegenseitig stören.
Na mal sehen, erst mal den FM-Radioteil fertig machen. Sporadic E geht bald los. :dx:

Hier ein Foto meiner neuen DX-Maschine.

Bild
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: 1676
Registriert: Fr 31. Aug 2018, 17:01
Wohnort: Sachsen-Anhalt / Harzvorland

Re: NXP TEF6686 auf Arduino

Beitrag von carkiller08 »

:spos: :cheers:

Jetzt müssen nur noch einige Tasten dran, um es unkompliziert bedienen zu können,
Bitte aufpassen mit der Spannungsversorgung über die Hohlbuchse am Arduino, wenn der stromhungrige Tuner seine 5V Spannung über den Arduino erhält.
Der kleine SMD-Linearregler auf dem Arduino kann nicht so sehr viel überschüssige Energie verheizen.
7,5 bis 8V reichen. Mehr als9V würde ich an der Hohlbuchse nicht anlegen.

siehe
Stromlaufplan Arduino Mega2560
https://www.arduino.cc/en/uploads/Main/ ... R3-sch.pdf
https://forum.arduino.cc/index.php?topic=205309.0


Meine Idee mit dem "mobilen Loggen" wäre , ein SD-Kartenleser anzuschließen
und einen weiteren Taster zu nutzen, über den dann bei Drücken die aktuellen Empfangsdaten
auf der Karte gespeichert werden.
Diese SD-Bibliothek soll allerdings >2kB Arbeitsspeicher belegen, der dann auch noch vorhanden sein sollte.

Bezüglich Enstörung plane ich, einen kleineren Arduino Mega Pro in ein abgeschirmtes Gehäuse einzubauen.
Leitungen zum I²C-Bus und zu den Tastern sollen nach außen über 47pF-Durchführungskondensatoren
+ Vorwiderstände geführt werden. Für die Betriebsspannnung wird ein größerer DF-Kondensatorwert eingesetzt.
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 »

Danke für die Hinweise.
Das mit der Spannungsversorgung bekomme ich hin..
Die Aufbereitung wird weitgehend "ausgelagert" und großzügig gekühlt.
In der Abschirmung brauche ich keine Wärme. :D
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)
Antworten