Start

Experimente

Grundlagen

Produkte
- SI4735
- - 4 MHz
- - Software
- - Antennen
- - Hilfeseite  
- - RDS  
- - ES-M32  
- - Heimradio 
- - PCradio2  

Neues

Impressum

SI4735

    
PC-Radio mit USB, Version 2 mit 32 kHz



Das PC-Radio erlaubt die Ansteuerung aller Funtionen des SI4735 über die USB-Schnittstelle. In der Version 2 der Platine wurde der 4-MHz-Oszillator durch den internen Oszillator mit einem 32-kHz-Uhrenquarz ersetzt. Damit entfallen Störsignale durch Oberwellen des Oszillators. Eine weitere Verbesserung betrifft die Datenleitungen zwischen FT232R und SI4735, die jetzt ebenfalls besser gegen Störsignale gedämpft sind. Die dritte Änderung betrifft das größere Lochrasterfeld, sodass man jetzt mehr Platz für die Eingangsbeschaltung hat.

Im Online-Shop: USB-Steuerplatine für Radiomodul SI4735 und PC-Radio SI4735 Set




Für die neue Platine muss auch eine neue Software verwendet werden. Das Standard-Programm heißt jetzt  Si4735Radio5.exe. Es wurde in Delphi geschrieben und umfasst bereits die RDS-Funktion des Chips.

Download SI4735Radio5_32kHz.zip (Delphi-Quelltext und EXE, 345 KB)



Bei der eigenen Ansteuerung in Visual Basic muss beachtet, werden, dass die Initialisierung den internen Oszillator einschaltet. Die bisher oft  benötigte Funktion Xtal zur Einstellung der genauen Taktfrequenz entfällt, weil der Uhrenquarz die Default-Frequenz liefert. 

  i2cStart
R = i2cOut(34) 'Bus-Adresse PCF8574
i2cOut (&H1) '01
i2cOut (&H10) '10 UKW, 32 KHz Osz.
i2cOut (&H5) '01
i2cStop

...

i2cStart
R = i2cOut(34) 'Bus-Adresse
i2cOut (&H1) '01
i2cOut (&H11) '11 AM, 32 kHz
i2cOut (&H5) '01
i2cStop
Das erste VB-Beispielprogramm in ELEXS verwendete ebenfalls den internen Oszillator mit 32 kHz. Es kann mit diesem Board direkt verwendet werden, siehe SI4735a.html.

Die folgenden beiden VB-Programme wurden nachträglich für die 32-kHz-Version angepasst:

SI4735Test2_32kHz.zip (Quelltext und EXE, 43 KB)
SI4735Test3_32kHz.zip (Quelltext und EXE, plus USB-Treiber, 1775 KB)


Linux-Software, von Tobias Stöber





Download: si4735radio-0.1.tar.gz

Das Linux-Programm ist noch nicht wirklich fertig, einige Ideen stehen noch in der Datei TODO. Anbei ist auch ein erster Entwurf einer INSTALL Anleitung, die sich im wesentlichen mit der Installation der FTD2XXX Bibliothek beschäftigt. Ggf. müssen Sie dort einfach die alte Version 0.4.6 nehmen ... die Installation verläuft aber analog. Dazu braucht es dann noch den GCC, make und die dev-Pakete zur libc6 und libgtk2.0.

Außer der reinen Abstimmung, Suchlauf usw. lag der Schwerpunkt auf der Auswertung der RDS-Signale.  Hier wurde anhand des jeweils veränderlichen Bits, welches die Übertragung einer neuen Zeile, sprich A oder B, anzeigt,  dies mal "sortiert". Das liegt auch daran, dass oftmals der jeweilige String erst im zweiten Durchlauf wirklich komplettiert ist. Oft gehen einige Gruppen der RDS-Meldungen verloren oder die Gründe liegen in der Programmierung oder sonstwo. Zudem braucht man ja auch  auch ein vernünftiges Signal ... unter SNR 12 dB (lt. Anzeige des Si4735) ist da nicht viel zu wollen.

In der Tat sind ja allerlei Informationen schon grundlegend enthalten, wobei jeder Radiosender sie offenbar sehr unterschiedlich nutzt, z.B. die Art des Programms (PTY) oder auch die Unterscheidung zw. Musik und Sprache (M/S Bit).









Hier einige Screenshots als Illustration einiger "Merkwürdigkeiten" im RDS wie bspw. einem dynamischen PS Namen bei MDR Figaro (lt. Spezifikation ja explizit nicht vorgesehen).

Ansonsten sehen Sie halt noch, dass bspw. die Auswertung einiger Flags dazugekommen ist (M/S, TP und TA) und eben so eine kleine Autoscan-Funktion, die dann einige Speicherplätze belegt. Da ist sicher auch noch ne Menge Verbesserungspotential (Art der Belegung, ggf. Sortierung nach RSSI/SNR, Doppelbelegungsvermeidung, Ermittlung und Anzeige es Stationsnamens via RDS oder generell Speichern der Einstellungen/Presets etc.).

Für ein wenig Spielerei mit den RDS Daten habe ich mir einfach eine kleine Funktion zum Mitloggen in einer Protokolldatei angelegt. Dann kann man die später auswerten.

Die 8A Gruppen mit den TMC Meldungen habe ich nur kurz angeschaut. Die Location Table und die Event Liste bekommt
man ja vom BAST per Mail zugeschickt. Single und Multigruppen zu verarbeiten und die Zusatzinfos ist da alles noch nicht dabei (in meinem externen Auswerteprogramm). Der Aufwand, das wirklich umzusetzen wie spezifiziert ist ja auch nicht so ohne.



Eines der Logs habe ich mal gegen Infos im Internet geprüft ... naja, das Dekodieren klappt so, man muss halt dann durchaus diverse Quantifier usw. einfügen, die "Länge" der Events korrekt beachten / auswerten usw. Andererseits war mein Eindruck, dass auch nicht jede Site im Netz bzw. beim Betrachten von Meldungen am Navi, auch nicht jedes Navi, jede Meldung 1zu1 umsetzt sondern dort auch kräftig an den Inhalten gekürzt wird. Heißt der "Haupt-Event" ohne weitere Detailierung gespeichert wird.

Zu diesem Projekt gibt es jetzt eine eigene Homepage: www.to-st.de/content/projects/si4735lin/index.de.html
SI4735 PC-Radio Linux-Software in Aktion (RDS u.a.):  www.to-st.de/content/projects/si4735lin/screencasts.de.html