Da sich die TW39-Schaltung mit der H-Brücke etwas anders verhält, als die üblichen Schaltungen mit Relais, musst ich den Code geringfügig anpassen. Die 60 Volt kommen aus einem 500-Volt-Labornetzteil mit 40 mA Strombegrenzung (also ohne Wiederstand in der Schleife).
Ich kann jetzt im lokalen Netzwerk mit dem PC (WinTlx) Verbindungen aufbauen (in beiden Richtungen), leider nur im "ASCII Texting Modus" (4) und nicht im "texting baudot Modues" (1), da nur ASCII-Texting von der Arduino-Implementierung unterstützt wird. Damit ich von T68D den PC anwählen kann, habe ich die Infos für die gewählte Nummer auf der SD-Karte des Arduino (123456.txt) gespeichert.
Der Lochstreifenschreiber und Lochstreifenleser funktionieren auch, siehe Video.
Beste Grüße
Mark
Fragen zum T68D Verhalten
Verfasst: Sa 2. Nov 2024, 21:28
von mjuhrig
Hallo an alle,
inzwischen beherrscht mein Arduino TW39 Interface schon ausgehende Verbindungen im Baudot-Modus, inklusive dem Lookup der IP-Adresse, bzw. der WEB-Adresse, sowie Port und Durchwahl vom Teilnehmer-Server. Da der Code inzwischen die 32Kbyte-Grenze des Arduino Unos geknackt hat, läuft das Ganze jetzt auf einen Arduino Mega 2560, der hat 256Kbyte FLASH. Unten zwei Telexe, die ich an Marco geschickt gabe (1x an die 483752 und 1x an die 422661). Der erste Verbindung mit der 483752 ist auch der Hälfte des Textes (von Lochstreifen) abgebrochen, warum auch immer. Beim 2. Mal hat es dann klappt.
20241102_180201.jpg
Jetzt muss ich noch den Command-Parser für eingehende Telexe anpassen.
Ich halte Euch auf dem Laufenden. Beste Grüße
Mark
Fragen zum T68D Verhalten
Verfasst: Mo 4. Nov 2024, 10:43
von mjuhrig
Hallo an alle,
nachdem mein iTelex-Arduino-Mega jetzt so schön kommuniziert, möchte ich noch die Verwendung des Remote-Servers (Centralex) implementieren.
Dieser verwendet folgende Kommandos: Command; Use; Data; Allowed data length
0x81; Connect remote; Own Number + Pin; 6
0x82; Remote confirm; None; 0
0x83; Remote call; None; 0
0x84; Accept remote call; None; 0
Weiterhin werden noch die Kommandos Heartbeat (0), End (3) und Reject (4) verwendet sobald eine Verbindung besteht.
Der Ablauf ist wie folgt:
Fernschreiber meldet sich beim Remoteserver mit Nummer und Pin an (0x81)
Remoteserver bestätigt Anmeldung (0x82)
Remoteserver sendet (irgendwann) das Kommando 0x83 "Remote Call" wenn der Fernschreiber von einem anderen Fernschreiber angerufen wird
Fernschreiber bestätigt die Verbindung (0x84) und verwendet den bestehenden IP-Socket um dann darüber die Verbindung mit dem anderen Fernschreiber abzuwickeln.
Was mir jetzt noch nicht ganz klar ist, ist was nach dem Ende ver Verbindung passiert. Es gibt zwei Möglichkeiten:
1. Die Verbindung zum Remoteserver wird abgebaut (und muss dann vom Fernschreiber mit 0x81 wieder aufgebaut werden)
2. Die Verbindung zum Remoteserver bleibt bestehen und der Fernschreiber wartet auf den nächsten Remote Call (0x82)
Ich bin für jeglichen Input dankbar.
Beste Grüße
Mark
Fragen zum T68D Verhalten
Verfasst: Mo 4. Nov 2024, 11:39
von detlef
mjuhrig hat geschrieben: ↑Mo 4. Nov 2024, 10:43
Was mir jetzt noch nicht ganz klar ist, ist was nach dem Ende ver Verbindung passiert. Es gibt zwei Möglichkeiten:
1. Die Verbindung zum Remoteserver wird abgebaut (und muss dann vom Fernschreiber mit 0x81 wieder aufgebaut werden)
2. Die Verbindung zum Remoteserver bleibt bestehen und der Fernschreiber wartet auf den nächsten Remote Call (0x82)
Soweit ich mich erinnern kann, bleibt die Verbindung zum Remoteserver bestehen.
Ne stimmt nicht. Nach der Protocol Specifikation von 2019 beendet der "limited client" die Verbindung zum Remoteserver und baut sie wieder neu auf. Keine Ahnung warum. Ich muss nochmal schauen, was im Wiki steht.
Wirst du den Arduino-Code veröffentlichen?
Fragen zum T68D Verhalten
Verfasst: Mo 4. Nov 2024, 11:48
von mjuhrig
Ja, den Code werde ich gerne auf GitHub veröffentlichen, sobald ich eine stabile Version habe.
vielen Dank, im Wiki Beispiel für die Remote-Servers Verbindung ist es eindeutig zu lesen. Das Beispiel hatte ich irgendwie übersehen.
Besten Dank und Grüße
Mark
Fragen zum T68D Verhalten
Verfasst: Mi 6. Nov 2024, 20:14
von mjuhrig
Hallo an alle,
eine Frage aus Neugier: weiß jemand, warum beim iTelex-Protokol das zuerst gesendete Bit (der 5 Datenbits) als höchstwertiges Bit (MSB) gewertet wird und nicht als LSB, wie es ein UART machen würde? Diese Festlegung erschwert schließlich die Verwendung von UARTs, welche 50 Baud und 5-Bit können, zu verwenden, da man die Bits erst spiegeln müsste. Mir ist klar, dass es keine wirkliche Definition gibt, ob das Bit 1 (oder Schritt 1) nun LSB oder MSB ist.
Danke und beste Grüße, Mark
Fragen zum T68D Verhalten
Verfasst: Do 7. Nov 2024, 18:19
von mjuhrig
Hallo an alle,
mein Arduino-TW39 Interface kann inzwischen über den Remote-Server (Centralex) angerufen werden. Die andere Richtung muss ich noch in Gang bringen. Was noch fehlt, ist der Abbau der Remote-Server-Verbindung, wenn mein Fernschreiber einen anderen anrufen möchte.
Bitte sendet doch mal ein paar kurze Test-Fernschreiben an meine T68D-Nummer: 21290 (Kennung: "2129A HB80 D")
Bitte ganz kurz halten ("hier ist!", "wer da?" und dann noch ein paar Buchstaben und Zeichen).
Ich lasse den T68D noch bis ca. 20 Uhr heute laufen.
Schon mal vielen Dank im Voraus,
Mark
Fragen zum T68D Verhalten
Verfasst: Do 7. Nov 2024, 18:54
von mjuhrig
Es sieht gut aus. Bis jetzt sind Telexe angekommen von: