Kurztipp: Canon Selphy WLAN Drucker CP910 oder CP1300 unter Linux (Cups) verwenden

Für meine Photo Booth, die ich seinerzeit für meine Hochzeit gebaut habe, hatte ich einen Canon Selphy CP910 angeschafft. Der Plan war die geschossenen Fotos jeweils direkt auf Sticker zu drucken damit die Gäste sie in ein Gästebuch einkleben konnten. Leider gestaltete sich die Konfiguration des Druckers unter Linux als sehr schwierig und ich hatte auch nirgendwo anders im Netz eine Lösung gefunden.

Photo Booth mit Canon Selphy Drucker

Beim letzten Einsatz „unter extremsten Bedingungen“ wurde der CP910 leider zerstört (jemand konnte es nicht abwarten und hat zu früh und scheinbar mit brachialer Gewalt am Foto gezerrt. Das Modell gibt es nicht mehr und ich habe nun den CP1300 bekommen, und darf den Konfigurationstanz wiederholen.

Zum Glück konnte ich meine Schritte vom letzten mal noch rekonstruieren und vielleicht gibt es ja noch jemanden da draußen der einen der Drucker unter Linux verwenden mag.

Ich denke was Cups ist solltet ihr wissen wenn ihr bis hierhin gelesen habt. Es gibt verschiedene, kostenlose Treiberpakete (Gutenprint, Foomatic, OpenPrinting) aber nichts wollte so richtig funktionieren. Schon gar nicht via WLAN. Man kann auch eigene PPD-Dateien bei der Konfiguration mitgeben aber auch hier habe ich nicht sinnvolles aus den Canon-Treibern extrahieren können.

Irgendwann wollte ich schon aufgeben da kam mir der rettende Gedanke: unter macOS klappt es, da wird doch auch Cups verwendet. Sogar via AirPrint also sollte ja eigentlich eine PDF in Richtung Drucker übertragen werden also werden keine großartigen Cups Filter oder Plugins verwendet.

Um das hier nicht in die Länge zu ziehen, in /etc/cups/ppd auf meinem iMac konnte ich nachdem ich den Drucker installiert hatte (und AirPrint als Treiber gewählt hatte) die nötige Datei finden. Man muss nur eine Zeile entfernen (*APPrinterIconPath …) dann funktioniert die Datei auch unter Linux. Es gab zwar noch ein paar Fehlermeldungen in /var/log/cups/error_log dass diverse Sachen nicht gefunden wurden aber ich konnte erfolgreich via WLAN auf dem CP910, und nun auch auf dem CP1300 drucken!

Hier sind meine verwendeten PPD Dateien, falls ihr gerade kein macOS zur Hand habt um diese selber zu generieren. Ich glaube das ganze funktioniert indem der Drucker beim Hinzufügen eine Konfiguration bereitstellt. Das sollte eigentlich auch unter Linux klappen, tut es bei mir aber nicht.

Ich denke den gleichen Trick kann man mit allen AirPrint fähigen Druckern machen. Vielleicht geht das ganze auch viel einfacher, ich hatte es aber wie gesagt nicht hinbekommen.

Achtung: um die Sticker zu verwenden wird noch die passende Papierkassette benötigt!

Noch ein kleiner Tipp: wer nicht per Hand an der /etc/cupsd.conf herumspielen möchte um auch von einem anderen Rechner auf die Cups-Weboberfläche zu kommen kann die nötigen Änderung an der Datei mit folgendem Kommando ganz einfach tun.

cupsctl --remote-admin --remote-any --share-printers

Scheinbar ist es nur möglich Fotos oder andere Bilder an den Canon Selphy zu schicken. Ich verwende hierzu das Kommando lpr aus dem Paket cups-bsd:

lpr Image.jpg

Update: Ich habe gerade tatsächlich noch eine Alternative gefunden. Allerdings wird hier nicht via Cups gedruckt sondern direkt über ein kleines Tool. Wer mag kann es ja mal anschauen: selphy.go

Noch ein Nachtrag: ich habe noch ein paar Bash-Skripte gefunden, mit denen der CP1300 auch wunderbar drucken kann: canon-selphy-print. Genau wie auch selphy.go braucht es keinen speziellen Treiber. Großer Vorteil: es gibt jeweils ein Script für die drei verschiedenen Größen. Sicher hilfreich.

 

17 Antworten auf „Kurztipp: Canon Selphy WLAN Drucker CP910 oder CP1300 unter Linux (Cups) verwenden“

  1. Hallo Thorsten,

    ich habe auf meiner Raspi deine Anleitung versucht. Mein Drucker wird jetzt auch angezeigt, allerdings kann ich nicht drucken.
    Bei der Testseite kommt im Browser:
    Nicht unterstütztes Format »application/vnd.cups-pdf-banner«

    und in der Error.log steht

    Returning IPP client-error-document-format-not-supported for Send-Document

    Wenn ich direkt auf der Raspi versuche eine Bild oder Text zu drucken steht im error.log der gleiche Fehler.

    Woran kann das liegen und wie kann ich das Problem beseitigen?

    Danke
    Andy

    1. Hallo Andy,

      ich habe es gerade bei mir noch einmal getestet: ich bekomme erstmal auch den gleichen Fehler wie du wenn ich versuche eine Testseite zu drucken. Was aber nicht weiter schlimm ist denn ich möchte ja keinen Text drucken sondern nur Bilder, da es ja ein Fotodrucker ist.

      Wenn du das cups-bsd Paket installierst kannst du mit
      # lpr Bild.jpg
      wunderbar drucken.

  2. Das PPD-File für den CP1300 ist genial, insbesondere da die Gutenprint-Treiber so miese Qualität via USB erzeugen. Probleme machten bei mir noch zusätzliche die ICC-Profilepfade, da das offensichtlich macOS-Locations waren.
    Leider bekomme ich nur randloses Drucken damit nicht hin. Irgendwelche Ideen dazu?

    1. Ich nutze auch die ppd und drucke über
      lp -d Druckername -o media=postcard.fullbleed filename
      entscheidend ist postcard.fullbleed als media zu setzen, dann kommt es randlos.

  3. Hallo,

    ich betreibe für Freunde und Familie eine nicht kommerzielle Fotobox (unter Windows 10). Da drucke ich bisher erfolgreich mit einem Canon Selphy. Allerdings ist mir der Durchsatz zu gering. Daher hatte ich es erst unter Windows mit Pooling versucht, ohne Erfolg. Daher versuche ich es gerade einen Raspberry Pi als Druckerserver mit Cups ans laufen zu bekommen, der mir die Selphies als ein Drucker im Netzwerk verfügbar macht. Unter Gefundene Netzwerkdrucker tauchen der / die Drucker nicht auf. Via USB kann ich die Drucker hinzufügen (mit der PPD von dieser Seite). Wenn ich dann einen Drucker unter Windows als Netzwerkdrucker einbinde und via Fotos App drucken will passiert nichts. Ich habe schon versucht via google etwas herauszufinden aber komme nicht so recht weiter. Daher hoffe ich hier Hilfe zu bekommen.

    viele Grüße
    Florian

  4. Vielen Dank für die Anleitung und die Dateien. Das kabellose Drucken funktioniert damit wunderbar. Wie im Kommentar von Balthasar habe ich die Pfade zu den ICC Profilen angepasst, damit die error_log Einträge verschwinden.

    CUPS legt die ppd Datei in folgendem Pfad ab:
    /etc/cups/ppd

    Die ICC Profile befinden sich hier:
    /usr/share/color/icc

    srgb.icc habe ich aus dem colord Verzeichnis genommen
    sgray.icc aus dem ghostscript Verzeichnis

    Bei der Auswahl bin ich nach dem Namen gegangen. Die Auswirkungen sind mir eher nicht bewusst. Die Fotos sahen soweit in Ordnung aus.

    Ein Problem mit einem randlosen Druck habe ich nicht. Die Bilder waren eher größer als das Format des Druckers, daher hat eher was gefehlt.

    Beim Aufruf lpr kann man Optionen mit geben, z.B.:
    lpr -o fit-to-page image.jpg
    lpr -o scaling=100 image.jpg

    Siehe CUPS Doku oder diverse Forenbeiträge über Google.

  5. Hi,

    erstmal danke für den Artikel und die Files. Ich selbst habe auch noch einen CP910 hier stehen und dachte gerade ich nehme ihn mal in Betrieb. Leider kommt bei einem „normalen“ Druckversuch eines Fotos bei mir die Meldung „Unknown print size! (00, 393218×8781824)“. An ein Druck ist nicht zu denken. Egal welches Papierformat ich gewählt habe – es ändert sich nicht

    Hast Du noch nen Tip?
    Beste Grüße
    Thomas

  6. Hallo,

    leider kann man die PPD Datei nicht mehr herunter laden, es gibt ein PHP Versions-Problem. Könntest du sie vielleicht nochmal anderswo hochladen? Ich finde Sie nirgends sonst, und will meinen CP1300 unbedingt zum laufen bekommen.

    Grüße,
    Stefan

  7. Suuuper Danke!
    Ich war kurz frustriert über den Selphy 1300, nachdem die Einrichtung über WLAN auf dem Raspi erstaunlich gut funktioniert hat, war dann der erste Printjob negativ. Dann hab ich Deinen Artikel gefunden und hab das ppd file probiert – und ja, er druckt, so wie ich es erhofft hatte!
    Vielen Dank,
    Peter

  8. Ich hatte schon aufgegeben, aber Dank deines Artikels hab ichs noch mal probiert…
    Mit USB (Einrichtung über CUPS-Seite und dem gutenberg-treiber) hat es nun gut funktioniert, bis auf evtl. Ränder . Deine PPDs hab ich noch nicht probiert – DANKE!

    Via WLAN wäre es jetzt aber natürlich noch schicker… Sowohl in Yast (OpenSuSE) als auch auf der CUPS-Konfigurationswebseite müsste ich eine Verbindung selbst eingeben – ipp:/IP-Adresse/ipp hat nicht funktioniert – per USB wird das Gerät gefunden und angeboten. Unter Windows klappt es per WLAN, die Verbindung an sich besteht also.
    Freue mich über einen Schubs in die richtige Richtung 🙂
    Habe dazu leider nur wenig gefunden. Gibts da nen Trick?
    Christian

Schreibe einen Kommentar zu Balthasar Antworten abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.

%d Bloggern gefällt das: