IRdeo Homepage
IRdeo Homepage
IRdeo Shop Infrarot Videoschnitt Sonstiges
Hardware Remote IRdeoX Anleitung
Software Raw Winamp MP3 Scriptsprache Links
IRdeo Plus IRdeoX PC Fernsteuerung VideoDirector RM95
Artikel Dongle IRdeo Light Adobe Plugin Projekt
FAQ Classic Vorlagen Compulink
Planung Märklin Impressum

IRdeo Homepage

HiFi Bus JVC CompuLink Protokoll

Stand : Juni 1999

 JVC Gerät : 200 CD Wechsler XL MC334 BK

Das Signal auf dem CompuLink Bus ist nach dem gleichen Schema codiert, wie die Infrarotbefehle der JVC Fernbedienungen, nur um den Faktor 10 langsamer.
Eine binäre 0 wird durch einen 5ms langen Impuls gefolgt von einer 5ms langen Pause und, eine binäre 1 wird durch einen 5ms langen Impuls gefolgt von einer 15ms langen Pause signalisiert.

Zeichnet man die Signalfolge mit der Soundkarte auf, die der CD Wechsler sendet, wenn ein neuer Track beginnt, sieht das folgendermaßen aus:

Oszillogram

Das sieht erst mal etwas verwirrend aus. Man kann die Struktur aber leichter erkennen, wenn man das Signal stilisiert (Vertikal gespiegelt):

     5 ms      15 ms
    - <-     -   <-
      _   _   _     _     _     _     _   _   _
     | | | | | |   | |   | |   | |   | | | | | |
_____| |_| |_| |___| |___| |___| |___| |_| |_| |________
 

     |   |   |     |     |     |     |   |   |
       0   0    1     1     1     1    0   0

In Hexadezimaler Form kommt dann 3c hex heraus und in IRdeo Notation a8 88 8a 80
Der letzte Impuls dient als Abschluß. Danach trennt eine längere Pause die Befehle voneinander.

Als zweites Beispiel soll nun ein von IRdeo erzeugtes Signal gezeigt werden.
Dazu habe ich das Kommando b2 hex ausgesucht, welches den CD Wechsler einzuschalten.

Oszillogram

Und nun wieder die stilisierte Form:

       15 ms
      -   <-
      _     _   _     _     _   _   _     _   _
     | |   | | | |   | |   | | | | | |   | | | |
_____| |___| |_| |___| |___| |_| |_| |___| |_| |________

    - <-
     5 ms

     |     |   |     |     |   |   |     |   |
        1    0    1     1    0   0    1    0

In IRdeo Notation müßte es den Befehl 8a 22 a2 20 ergeben.

Zu den elektrischen Randbedingungen kann ich allerdings wenig sagen, da ich kein Osziloskop besitze. Die Aufname von dem Signal des CD Wechslers habe ich mit den selben Einstellungen bei der Soundkarte vorgenommen, wie die Aufnahme von dem Signal von IRdeo.
Die Signale waren von der Amplitude ( und natürlich von der Zeit auch ) im selben Größenbereich.
 

Folgende Befehle konnte ich deuten:

 Befehl Erklärung

 0x3c Ein Audio Track beginnt gerade zu spielen ( kommt von CD Player )

 0x40 Öffnen bzw. Schließen des CD Fachs
 0x41 Play
 0x42 Stop
 0x43 Skip to Next
 0x44 Skip to Previous
 0x45 Pause
 0x46 ca. 1 Sekunde vorspulen
 0x47 ca. 1 Sekunde zurückspulen
 0x48 ca. 5 Sekunden vorspulen
 0x49 ca. 5 Sekunden zurückspulen

 0x4e Repeat an/aus bzw. Repeat an/aus/Repeat 1
 0x4f entspricht der Display Taste

 0x50 Nummer 0
 0x51 Nummer 1
 0x52 Nummer 2
 0x53 Nummer 3
 0x54 Nummer 4
 0x55 Nummer 5
 0x56 Nummer 6
 0x57 Nummer 7
 0x58 Nummer 8
 0x59 Nummer 9

 0x5a in den Programmier Modus schalten

 0x5d Cancel Taste

 0xa3 Wiedergabe beginnt ( kommt vom CD Player )

 0xb2 CD Player einschalten
 0xb3 CD Player ausschalten

 0xbf ( ? ) schaltet CD Player aus, evtl. auch andere JVC Geräte ( ? )

Um das auszugeben gibt es mehrere Möglichkeiten :

Die Verbindung zum JVC Gerät erfolgt über ein 1 zu 1 3,5 Klinkenkabel.

Um zu demonstrieren, wie die Klassen angewendet werden, habe ich ein kleines Beispielprojekt beigefügt, welches einen IR Code einlesen kann und diesen wieder senden. Im CompuLink Teil kann man einstellen an welcher Buchse der CompuLink Bus hängt und einen Track auf einer bestimmten CD starten und stoppen. Außerdem habe ich auf einen anderen Button den Start Befehl mit einem Lesekommando kombiniert und so wird eine MessageBox angezeigt, wenn der Track anfängt zu spielen.
Die ganzen eingestellten Daten speichere ich in einem INI File im Windowsverzeichnis ab (sorry).
Dabei werden je nachdem ob man gerade im Release Build oder in Debug Build sich befindet, andere Einmeßwerte abgespeichert ( für die Programmentwicklung sinnvoll ).

Optimal wäre es wenn einer einen JVC Receiver mit ( Enhanced ) CompuLink Schnittstelle besitzen würde und abhören könnte, was der Receiver schickt, wenn man Tracks programmiert.
Ein weiterer offener Punkt ( oder besser Bereich ) ist die TEXT CompuLink Schnittstelle. Über diese Schnittstelle kann man eingespeicherte Informationen (Titel, Künstler, ... ) auslesen. Über entsprechende Audio/Video Receiver von JVC kann man dann z.B. über ein On Screen Display am Fernseher CDs auswählen. Die CompuLink Signale werden auch über diese Schnittstelle ausgegeben bzw. empfangen. Man könnte IRdeo also auch an die TEXT CompuLink Schnittstelle anschließen. Wie man die erweiterten Funktionen ansprechen kann weiß ich nicht. Ein Receiver mit entsprechender Schnittstelle oder evtl. auch ein Minidisk Player mit TEXT CompuLink Schnittstelle könnte hilfreich sein daß Protokoll auf der Schnittstelle abzuhören. ( Habe ich nicht und werde ich mir auch nicht nur deswegen zulegen ).

Toll wäre es wenn jemand die "Vollfunktionsfernbedienung" von JVC besitzen würde, die mit einer alphabetischen Tastatur ausgestattet ist. Mitgeliefert wird sie z.B. mit dem JVC CD/MD Kombideck.
Ich vermute, daß evtl. der CD Wechsler die IR Codes auch verstehen könnte, da er einerseits auch uralte JVC IR Codes von normalen CD Playern versteht und in USA der Wechsler mit einer "Full Function Remote Control" ausgeliefert wird. Also wenn sich einer findet, der so eine Fernbedienung hat, hätte ich Interesse an den IR Codes zum Testen.
 

Download Beispielprogramm