Imprimantes Epson et LinuxPPC.


NDT et NDW :

Depuis que ce document a été traduit, beaucoup de choses ont changé.
En premier lieu, le site de l'auteur Wolfgang Haeuptli a disparu, et avec lui tout ce qui était en téléchargement.
Du coté de PPC Linux, ça a aussi évolué, et il n'y a plus besoin de bidouiller pour imprimer sur une imprimante Epson connectée via un port série. Il suffit de quelques paramètres positionnés grâce à stty et ça roule. Voici un extrait de mon fichier /etc/rc.d/rc.local :

# configuration port imprimante pour Epson Stylus Color 800
# le port imprimante est /dev/ttyS1
action "Configuration du port imprimante" stty 230400 raw -echo cstopb </dev/imprimante
action "Configuration du port imprimante" stty ixon ixoff </dev/imprimante

Vous pouvez aussi passer ces commandes à la main (chez moi, /dev/imprimante est un lien symbolique vers /dev/ttyS1) :

stty 230400 raw -echo cstopb </dev/imprimante
stty ixon ixoff </dev/imprimante

Notez que j'ai eu quelques gels de mon G3 en passant ce genre de commandes...

Il ne reste plus qu'à configurer une imprimante avec printtool et voilà.

La prochaine étape est de partager cette imprimante via Netatalk. Pour cela, quand Netatalk est configuré et opérationnel, il suffit d'ajouter les lignes suivantes dans le fichier /etc/atalk/papd.conf :

Stylus:\
     :pr=lp:\
     :op=etienne:\
     :pd=/etc/atalk/epson-SC800.ppd:

Quelques explications :

Stylus
C'est le nom de l'imprimante qui apparaîtra sous MacOS
:pr=lp:
lp est le nom de la file d'attente de l'imprimante
:op=etienne:
etienne est le compte utilisateur qui sera utilisé pour passer la commande d'impression, donc mettez le votre, pas le mien ;-)
:pd=/etc/atalk/epson-SC800.ppd:
/etc/atalk/epson-SC800.ppd est un fichier PPD qui permet d'imprimer en PostScript (tm). On trouve ce genre de fichiers sur le site ftp d'Adobe (utilisez un moteur de recherche pour les trouver; les mots clef sont adobe et ppd). Vous pouvez le mettre ailleurs que dans /etc/atalk, mais pourquoi pas là ? Une petite feinte est à signaler. Ce fichier est un fichier texte en encodage Macintosh. Pour l'utiliser sous Linux, il faut le convertir en encodage ISO-8859-1. Il existe de nombreux utilitaires pour cela, dont celui que l'on trouve ici.

Arrêtez et redémarrez Netatalk (commande : /etc/rc.d/init.d/atalk restart)

Coté MacOS, c'est-à-dire sur une autre machine connectée via AppleTalk à votre linuxette, il faut recopier le fichier PPD dans le dossier Description d'imprimantes du dossier Extensions du dossier Sytème de Classic et dans le dossier System/Library/Printers/PPDs/Contents/Resources/French.lproj de MacOS X (French.lproj ou un autre répertoire *.lproj).

Ensuite, sous MacOS Classic (vous devez avoir démarré en MacOS Classic, pas en MacOS X), ouvrez le Sélecteur, activez AppleTalk si nécessaire, choisissez LaserWriter 8 (ré-installez ce pilote d'imprimante si nécessaire). Vous voyez apparaître votre imprimante. Si ce n'est pas le cas, revoyez votre configuration coté Netatalk. Sélectionnez votre imprimante. Cliquez sur Réglages... puis sur Séléctionner..., retrouvez votre fichier PPD de tout à l'heure et validez.

Puis sous MacOS X, ouvrez le Print Center, cliquez sur Ajouter imprimante..., choisissez AppleTalk. Vous devez voir votre imprimante. Si ce n'est pas le cas, revoyez votre configuration coté Netatalk. Sélectionnez votre imprimante. Dans Modèle d'imprimante, sélectionnez Autre... qui apparaît tout en bas de la liste. Enfin, sélectionnez le fichier PPD dont on parlait plus haut.

Depuis la mise à jour de MacOS X 10.1.4, je ne vois plus mon imprimante réseau ! Mais cette mise à jour de MacOS X permet d'utiliser des files d'attente à la mode Unix. Je suis donc sauvé ;-)
Pour créer une définition d'imprimante réseau avec file d'attente de type Unix (notée LPR) dans MacOS X :

Et hop !

Et voilà comment on fait pour utiliser, sur un G4 QuickSilver et sous MacOS X, une imprimante qui n'est pas censée fonctionner sur un tel matos et un tel OS...

Un grand merci à Apple pour construire des machines sans port série RS-422 et un autre grand merci à Epson pour ne pas fournir de driver pour cette imprimante (Epson Stylus Color 800) via un adaptateur USB/parallèle.


Imprimantes Epson et LinuxPPC

Téléchargez tous les fichiers nécessaires et une courte description.

Les nouvelles imprimantes très rapides (Stylus color 600, 800 ...) fonctionnent difficilement avec LinuxPPC. Elles semblent communiquer à haute vitesse sur la liaison série. Le manuel de l'utilisateur parle d'environ 900 kbps. L'utilisation des programmes standards pour régler l'imprimante ne fait que produire des données erronées et/ou gèle le système.

J'ai trouvé une solution pour imprimer de l'ASCII et du PostScript avec mon imprimante. Cette information vous sera peut être utile. Sachez que ceci n'est qu'une rustine ... vous devez savoir ce que vous faites 8-)

La vitesse du port.

Ces imprimantes refusent complétement de communiquer à moins de 230400 bps (le plus fort débit du port série de Macintosh). Le noyau Linux accepte ce débit (voyez les sources du noyau), mais les utilitaires permettant de régler le débit du port série plafonnent à 115200.
J'ai apporté quelques modifications à stty.c <http://x8.net/lobomusic/linuxppc/epson/hstty.c> (du paquetage sh-utils) et je l'ai compilé. (Je l'ai installé en tant que hstty <http://x8.net/lobomusic/linuxppc/epson/hstty.tar.gz> dans mon système, dans le cas où j'aurai encore besoin de l'ancien stty - peut être aurais-je déréglé quelque chose ...).
Maintenant, je peux taper "hstty 230400 raw -echo < /dev/cua1" et voilà (NDT : en français dans le texte, à l'accent grave près), je peux envoyer des lettres unes à unes à l'imprimante ("printf 'a' > /dev/cua1")!
Tout semble fonctionner, je peux envoyer des commandes à l'imprimante pour changer la couleur ou le style, éjecter les pages, et ainsi de suite. MAIS si j'envoie plus de trois lettres en une fois, l'imprimante produit n'importe quoi :(
Cela semble provenir de la synchronisation.
(Y a-t-il une personne dans la salle capable d'écrire un driver synchrone ??)

Synchronisation.

Bien, comme cette imprimante Epson s'étrangle, je vais la nourrir octet par octet. C'est ce que fait mon petit programme (epsp.c), il lit les fichiers-texte ou les binaires depuis la ligne de commande ou stdin et écrit les caratères un à un sur /dev/cua1, complétés avec des caractères NULL. (Les sources et les binaires sont disponible grâce au lien en début de page).
Enfin, je peux imprimer de l'ASCII avec "cat readme.txt | epsp" ou "epsp readme.txt".
Il est nécessaire d'être root pour faire cela car les utilisateurs ne peuvent pas accéder à /dev/cua1. Si vous tapez "chgrp users /dev/cua1", tous les utilisateurs peuvent imprimer (.. si votre ordinateur est connecté au réseau, cela pourrait être une mauvaise idée...)
Je ne sais pas si ça marchera toujours, mais il est quand même plus agréable de ne pas avoir à rebooter en MacOS pour imprimer qu'un seul message que j'ai reçu sous Linux !
Les véritables gourous de Linux auront peut être une attaque cardiaque en voyant ce hack, s'il vous plaît, ne me frappez pas trop fort, mais si vous avez d'autres idées, faites m'en part (NDT : au traducteur aussi car il a une Epson Stylus Color 800).

A faire.



Avec l'aide et le savoir faire des autres membres de la communauté LinuxPPC, il est possible de tirer pleinement avantage de ces imprimantes. S'il vous plaît, faites part de votre connaissance et de votre expérience, et envoyez moi vos conseils, commentaires ou rapports de bug au sujet de ce problème particulier. Je les intégrerai ici, jusqu'à ce que nous ayons trouvé une solution définitive.
Merci pour votre contribution!
Wolfgang Haeuptli (haeuptli chez x8.net)
Dernière mise à jour: 12 fév 1999

Le document initial se trouvait à <http://x8.net/lobomusic/linuxppc/epson/index.html>, et a été écrit par Wolfgang Haeuptli (haeuptli chez x8.net).

La traduction a été effectuée par Etienne Herlent, les 3 et 4 juillet 1999, avec l'aimable autorisation de Wolfgang Haeuptli.
Veuillez envoyer toute réclamation concernant la traduction à Etienne Herlent.


 

Dernière mise à jour le 25/04/02.

les fichiers en téléchargement sont à ftp://ftp.linux-france.org/pub/macintosh/

 

Retour à GNU Linux sur Macintosh