Denver TR36 Umbau

Inzwischen kommen immer mehr Erweiterungen für den Umbau zu Internetradios. Beim Denver-TR36 wollte ich unbedingt das bereits vorhandene Display weiter nutzen. Die angezeigten Daten sollten wie bei der Verwendung einer 4stelligen 7-Segment-Anzeige mit TM1637 sein.

Dieses Glass-LCD wird im Original von einem Chip getrieben, der in meinem Fall nicht weiter verwendet werden kann. Er hat bereits Software, die auf sämtliche Tasten reagiert – jedoch konnte ich keine Möglichkeit finden, die es erlaubt ihm einen anzuzeigenden Text zu schicken.

Also raus mit dem Chip. Wir steuern das LCD selbst an. Hierbei habe ich mich für den HT1621-Chip entschieden (mit dem ich schon einmal ein 8 stelliges 14-Segment-Display Glas angesteuert hatte : vim878 ). Im Blog von ‚Stepp-ke.de‘ ( Beitrag Juni 2016 ) findet man eine Platine, die ich noch da hatte und hierfür verwenden will.

Hier sei angemerkt, dass Glas Displays nicht einfach wie Leuchtdioden angesteuert werden können. Sie arbeiten quasi mit Wechselspannung. Dies lässt sich auch im µC programmieren – leichter und IO-sparender ist aber der Einsatz eines spezialisierten Chips. Der HT1621 wird von mir verwendet, weil ich noch welche auf Lager habe und dieser so ziemlich Alles bis 32 Segmente mit 4coms ansteuern kann.

Das Denver Display benötigt zwar nur 3com’s und 13 Segmente – das soll aber nicht stören.

von unten nach oben : Seg 0..12 , dann com0..2

Also erstmal die originale Miniplatine auslöten – und dann die Pins vom Display mit der eigenen HT1621-Platine verbinden.

Die 3 Com-Leitungen habe ich extra separat verbunden. So erkenne ich sie später besser.

Nun benötigen wir 3 Datenleitungen zum ESP32 um den HT1621 anzusteuern. Ich habe hierfür die beiden i2C (SDA+SCL) und den obersten PIN vom Encoder-Anschluss (DIO16) verwendet. Ein zusätzliches OLED will ich ja eh nicht einbauen. Der DIO16 darf nicht als CS-Leitung benutzt werden. Nach ein paar kurzen Tests, hat sich folgendes Mapping der Segmente herausgestellt.

buffer[0]

  • …. …1
  • …. ..1. 1 A
  • …. .1.. 1 G
  • …. 1… 1 D
  • …1 ….
  • ..1. …. 1 F
  • .1.. …. 1 E
  • 1… …. pm

buffer[1]

  • …. …1
  • …. ..1. 2 F
  • …. .1.. 2 E
  • …. 1… sleep
  • …1 ….
  • ..1. …. 1 B
  • .1.. …. 1 C
  • 1… ….

buffer[2]

  • …. …1
  • …. ..1. 2 B
  • …. .1.. 2 C
  • …. 1… SW + MHz (unten)
  • …1 ….
  • ..1. …. 2 A
  • .1.. …. 2 G
  • 1… …. 2 D

buffer[3]

  • …. …1
  • …. ..1. 3 A
  • …. .1.. 3 G
  • …. 1… 3 D
  • …1 ….
  • ..1. …. 3 F
  • .1.. …. 3 E
  • 1… …. Doppelpunkt

buffer[4]

  • …. …1
  • …. ..1. 4 F
  • …. .1.. 4 E
  • …. 1… Punkt hinter 3
  • …1 ….
  • ..1. …. 3 B
  • .1.. …. 3 C
  • 1… …. Punkt hinter 2

buffer[5]

  • …. …1
  • …. ..1. 4 B
  • …. .1.. 4 C
  • …. 1… kleine 5 (1/2)
  • …1 ….
  • ..1. …. 4 A
  • .1.. …. 4 G
  • 1… …. 4 D

buffer[6]

  • …. …1
  • …. ..1.
  • …. .1..
  • …. 1…
  • …1 ….
  • ..1. …. Wecker
  • .1.. …. FM + MHz (oben)
  • 1… …. MW + kHz

Man erkennt ein Muster, was die Implementierung erleichert (zumindest für die 4 Zahlen).

Der Edzelf-Code wurde wieder mal erweitert … Ein Treiber für den HT1621-Chip + extra-Code für das Display. Später kommen bei mir sicherlich noch Weitere Displays hinzu.

Nach dem Start werden nacheinander die Segmente der IP angezeigt und dann der eingestellte Sender : ‚ P 1‘. (Es wird 1 aufaddiert, da Sendernummer 0 im Bekanntenkreis zu Verwirrungen führte). Nach 5 Sekunden wechselt die Anzeige auf die Uhrzeit.

Nun noch ein paar Bilder vom Innenleben des Radios…

Umbau des Trimmkondensator. Das Innenleben wurde durch einen einfachen Encoder ersetzt.
Hier die Unterseite mit Encoderknopf. Ein Adapter zum Aufstecken des alten Drehknopfes kommt aus dem 3D-Drucker.
Die Platzierung der neuen Platinen. Das VS1053-Board ist an der Oberseite angeschraubt.