Typenraddrucker Microscan MS-15 (unter Mac OS Ventura) - Steuerbefehle (Hex) im Vergleich zu baugleichen Modellen (SchneiderData SD15 bzw. TTX-1014)

  • Hallo,


    ich habe einen circa vierzig Jahre alten Typenrraddrucker Microscan MS-15 erstanden und ihn an einen Mac Mini unter Mac OS Ventura (13.6) via USB-to-IEEE1284-Controller angeschlossen.


    Installiert man den Drucker unter CUPS (Common Unix Printing System), kann man ihn tatsächlich über das Terminal ansteuern und drucken*. Um alle Steuerbefehle und den kompletten Zeichensatz (einschließlich deutscher Umlaute und Sonderzeichen) nutzen zu können, sende ich Hexadezimalcodes an das Streitross.


    Beim Studium der Handbücher äußerlich baugleicher Modelle (SchneiderData SD-15 bzw. TTX-1014 von Teletex Communications Corp.) habe ich allerdings festgestellt, dass die Geräte sich hinsichtlich des Funktionsumfangs und der Steuerbefehle (Escape-Codes) unterscheiden, obwohl der Druckmechanismus an sich identisch ist. So verfügt der Microscan MS-15 z.B. nur über drei fixe Einstellungen der Zeichendichte (10, 12 bzw. 15 cpi), während beim SchneiderData SD-15 die Zeichendichte offenbar in Inkrementen von 1/120" beliebig eingestellt werden kann, dasselbe gilt für den vertikalen Zeilenvorschub und Funktionen wie Druckerinitialisierung. Weiß jemand, wie diese Unterschiede implementiert sind und ob man sie umgehen kann?

    Vielen Dank für Tipps und Hinweise.




    * Vorgangsweise (macOS Ventura 13.6, CUPS 2.3.4)

    • Drucker per USB-to-IEEE1284-Adapter (Parallel Centronics 36pin truly bi-directional) an den Mac anschließen
    • Drucker-DIP-Schalter Nr. 3: 2 (ON), DIP-Schalter Nr. 4: 1,3,4 (ON); alle anderen (OFF).
    • In macOS Druckerfreigabe aktivieren: Systemeinstellungen -> Allgemein -> Teilen -> Druckerfreigabe: EIN
    • In macOS Webinterface von CUPS (Common Unix Printing System) aktivieren, dazu Terminal öffnen und folgenden Befehl eingeben: cupsctl WebInterface=yes
    • Im Browser http://127.0.0.1:631/ aufrufen, um das Webinterface von CUPS zu starten
    • Drucker unter CUPS installieren: - Administration -> Printers -> Add Printer: Der Drucker selbst wird nicht erkannt, aber der IEEE1284-Controller sollte als Local Printer
      mit entsprechendem Namen (Herstellername usf. IEEE1284-Controller) gelistet sein

      - Auswählen -> Continue -> beliebigen Namen eintragen (z.B. MS15) -> Häkchen bei "Share This Printer" -> Continue

      - Unter Make "Raw" auswählen -> Continue -> unter Model "Raw Queue (en)" auswählen -> Add Printer

      - Die vorgeschlagenen Einstellungen unter Banner (Startbanner: "none", Banner beenden: "none") und

      Richtlinien (Fehlerbehandlung: "stop-printer", Nutzungsrichtlinien: "default") belassen -> Set default options

      - Im Webinterface von CUPS sollte der Drucker nun unter Printers mit den Parametern Queue Name, Description, Location, Make and Model, Status aufgelistet sein

    • Terminal öffnen und echo -e "TEST" | lp -d MS15 (bzw. den unter CUPS vergebenen Namen nach -d) eingeben
    • Um den vollständigen Zeichenvorrat einschließlich deutscher Umlaute und Sonderzeichen sowie diverse Steuerbefehle zu nutzen,

      kann man Hexadezimalcodes direkt an den Drucker senden. So druckt der Terminalbefehl

      echo -e "\x18\x1B\x45\x65\x3D\x6D\x63\x0E\x2A\x0F\x1B\x52\00" | lp -d MS15

      z.B. e=mc2

    • Tabelle zur Ermittlung der Hexadezimalcodes:

    01234567
    0NULSPACE0§P`
    p
    1DC1!1AQaq
    2"2BRbr
    3DC3#3CScs
    4$4DTdt
    5%5EUeu
    6&6FVfv
    7BEL'7GWgW
    8CAN(8HXhx
    9)9IYiy
    ALF* bzw. 2
    :JZjz
    BESC+ bzw. 3
    ;KÄkä
    CFF, bzw. °
    <LÖlö
    DCR- bzw. μ
    =MÜmü
    ESO. bzw. ‰
    >N´nß
    FSI/ bzw. |
    ?O_oDEL
  • Vielleicht solltest du zu allererst klären, ob sich der Befehlssatz der drei Drucker mit den Typenraddrucker-Standards "Diabolo 630" bzw. "Qume" deckt. Da die Befehle für Pitch 10,12,15 und Zeichendichte in 1/120"-Schritten sicher nicht identisch sind, wäre es sogar möglich dass alle drei Drucker jeden dieser Befehle versteht, nur der jeweilige Handbuchschreiber es nicht für nötig hielt, den fehlenden Befehl Zu beschreiben - er hatte ja einen für die Schriftbreite. Es kann natürlich auch sein, dass die drei Drucker komplett verschiedene Firmwares haben, oder sich in der Elektronik darüber hinaus noch weiter unterscheiden, das findest du aber nicht über einen Handbuchvergleich raus, da musst du schon die Drucker haben.

    1ST1