Minggu, 22 Juni 2008

Membuat Canon iP1300 Hanya dengan Cartridge Warna Bekerja di Linux (Ubuntu 8.04 LTS Hardy Heron)

Setelah menginstallasi Ubuntu HH dan mulai menggunakan aplikasi-aplikasi yang ada di Linux tibalah saatnya untuk mencetak hasilnya ke printer. Untunglah dahulu ketika membeli laptop mendapat bonus printer Canon iP1300 yang sebenarnya ada dua slot cartridge (hitam dan warna) namun dalam bundel produknya hanya diberi cartridge warna (yang hitam harus beli sendiri).

Pada CD Driver bawaan dari Canon iP1300 tidak disediakan driver untuk Linux, jadi langsung aja berselancar di dunia maya melalui http://google.com/linux dan chatting dengan meng-add nick-nick yang terpampang di blog-blog yang berisi tentang artikel terkait untuk mulai mencarinya.

Singkat cerita ketemu salah satu alamat yang membahas cara instalasi Canon iP1300 menggunakan CUPS (http://ubuntuforums.org/showthread.php?t=563627) yang ternyata dapat menggunakan driver Canon iP2200. Wait..!! kok 2200? Bukannya 1300? Yah begitulah, Canon belum menyediakan driver untuk Canon ip1300 dan menurut penulis artikel tersebut, driver ip2200 bisa digunakan untuk ip1300. Langsung saja Saya ikuti langkah-langkahnya (maklum newbie yang sangat belum begitu tahu tentang Linux). Jadi bagi yang juga ingin menginstall Canon iP1300 di Linux, ikuti langkah-langkah berikut:

NB:
Sebelumnya install "Alien" untuk konversi packaging .rpm ke packaging .deb

$ sudo apt-get install alien

Gunakan tutorial http://satuhendra.blogspot.com/2008/06/pasca-installasi-ubuntu-804-lts-hardy_22.html untuk cara pengaturan repository dan penginstallan melalui Synaptic Package Manager.

Langkah 1:
Download archive dari http://software.canon-europe.com/files/soft24301/software/iP2200_Linux_260.tar.gz
Oia, jangan lupa pula download dokumentasinya untuk iP2200, nama filenya “guideip2200-2.60-1.tar.gz”, karena dari dokumen tersebut Saya dapat menambahkan extra setting di file .PPD.

Langkah 2:
Unpack archive yang telah di download

$tar -xf iP2200_Linux_260.tar.gz

Langkah 3:
Hapus file .rpm yang tidak diperlukan

$rm cnijfilter-common-2.60-1.src.rpm

Langkah 4:
Konversi file-file .rpm's yang tersisa ke dalam format packaging .deb's

$sudo alien -d -c *.rpm

Langkah 5:
Install file-file .deb hasil konversi

$sudo dpkg -i *.deb

Langkah 6:
Install libgtk1.2

$sudo apt-get install libgtk1.2

Langkah 7:
Membuat symbolic links

$sudo ln -s /usr/lib/libpng12.so.0 /usr/lib/libpng.so.3
$sudo ln -s /usr/lib/libxml2.so.2 /usr/lib/libxml.so.1
$sudo ln -s /usr/lib/libpng12.so.0 /usr/lib/libpng.so.2
$sudo ln -s /usr/lib/libtiff.so.4 /usr/lib/libtiff.so.3


Langkah 8: (opsional)
Configure the iP2200 ppd file

$sudo gedit /usr/share/cups/model/canonip2200.ppd
(default config works fine @ 600dpi)


Tentukan pilihan anda sesuai dengan detail level yang dibutuhkan

*OpenUI *CNQuality/Quality: PickOne
*DefaultCNQuality: 3
*CNQuality 2/High: "2"
*CNQuality 3/Normal: "3"
*CNQuality 4/Standard: "4"
*CNQuality 5/Economy: "5"
*CloseUI: *CNQuality

*OpenUI *Resolution/Output Resolution: PickOne
*DefaultResolution: 600
*Resolution 600/600 dpi: "<>setpagedevice"
*Resolution 1200/1200 dpi: "<>setpagedevice"
*Resolution 2400/2400 dpi: "<>setpagedevice"
*CloseUI: *Resolution


Langkah 9:
Restart CUPS
$sudo killall cupsd
$sudo cupsd


Langkah 10:
Add your new printer

Open printing dialog in system settings
Add new printer
Choose Canon IP1300 USB # entry
When asked choose to manually choosea PPD file
browse to /usr/share/cups/model/canonip2200.ppd
Apply all settings and close wizard.

Langkah 11:
Print a test page! Your Canon Pixma iP1300 should be working at long last!!

Happy printing!


Wait!!! Happy printing? Mungkin iya bagi yang telah membeli secara terpisah cartridge hitam sehingga di printer telah lengkap terpasang dua cartridge (hitam dan warna), namun bagi yang belum membeli cartridge hitam (hanya mengandalkan satu cartdridge yaitu cartridge warna bawaan printer) hanya akan mendapatkan kertas yang masih putih mulus bagaikan bayi yang baru lahir, masih polos, belum pernah ditulisi apapun (kecuali emang kertas bekas yang sudah ada isinya yang dipakai untuk print test page :p ). Mengenai hal ini bisa dibaca salah satu comment pada alamat forum di atas. Hmmmmhh...masak di Windows aja bisa dengan satu cartridge, di Linux tidak bisa? Jadi ini hanya masalah setting driver kan? Bukan hardware yang tidak mampu!

Iseng-ising buka OO Writer dan mengetik beberapa kata kemudian Saya rubah warnanya menjadi merah dan klik icon printer di toolbar. Printer mulai bereaksi dan ups..! Ternyata ada suara cartridge bergerak-gerak dan tercetaklah tulisan merah yang Saya buat tadi. Berarti iP1300 yang hanya terpasang cartridge warna masih bisa mencetak selain warna hitam. Hampir saja usaha itu berhenti sampai disini, jika tidak teringat kalau di file guide ip2200 terdapat beberapa command yang tadi hanya dibaca sekilas (bikin pusing euy!!!) dan mengingat file konfigurasi canonip2200.ppd merupakan file teks yang mungkin masih bisa dipahami untuk coba dioprek, Insya Allah berhasil.

Perburuan Dimulai:
Buka File guideip2200 dengan browser kesayangan Anda dan buka “cif command” pada bagian Printing di sebelah kiri.
Scroll kebawah dan klik “Ink Cartridge Settings
Lihat di Configurable Parameters, parameter inilah yang akan kita gunakan untuk menambah setting pada file canonip2200.ppd di /usr/share/cups/model/canonip2200.ppd

Buka terminal, lalu ketik,
$sudo gedit /usr/share/cups/model/canonip2200.ppd

Scroll ke bawah dan perhatikan bagian yang syntax-nya:
*OpenUI *InputSlot/Paper Feed: PickOne
*xxxxxxxxxx : "xxxxx"
*xxxxxxxxxx : "xxxxx"
*CloseUI: *InputSlot

Kira-kira maksudnya Open User Interface bla..bla..bla... (maklum newbie)

Kemudian Scroll ke bagian paling bawah dan perhatikan seperti ada contoh-contoh opsi-opsi untuk pengaturan printer yang bisa kita customisasi. Bagian-bagian ini diawali dengan tanda "*%" yang pasti semua pada bisa menyimpulkan jika bagian yang diawali dengan tanda itu merupakan bagian yang tidak diproses/merupakan comment.
*%CNPpdToOptKey PageSize --papersize
*%CNPpdToOptKey MediaType --media
*%CNPpdToOptKey InputSlot --paperload
*%CNPpdToOptKey CNCartridge --cartridge
*%CNPpdToOptKey CNQuality --quality
*%CNPpdToOptKey CNHalftoning --halftoning
*%CNPpdToOptKey CNRenderIntent --renderintent
*%CNPpdToOptKey CNGamma --gamma
*%CNPpdToOptKey CNBalanceC --balance_c
*%CNPpdToOptKey CNBalanceM --balance_m
*%CNPpdToOptKey CNBalanceY --balance_y
*%CNPpdToOptKey CNBalanceK --balance_k
*%CNPpdToOptKey CNDensity --density
*%CNPpdToOptKey CNGrayscale --grayscale
*%CNPpdToOptKey CNLocation --location
*%CNPpdToOptKey CNPercent --percent
*%CNPpdToOptKey CNCopies --copies
*%CNPpdToOptKey CNPaperGap --papergap
*%CNPpdToOptKey CNInkCartridgeSettings --inkcartridgesettings


Mungkin hanya dengan menghilangkan tanda "%" dan merubah setting "--xxxxx" yang mengikutinya sudah bisa untuk langsung mengaktifkan setting sesuai dengan yang kita inginkan (Saya katakan "mungkin", karena Saya juga belum mencobanya, mungkin ada rekan-rekan yang berminat bereksperimen dan sharing pengalaman di sini), namun karena tujuan Saya agar dimenu grafis pengaturan printer muncul opsi pilihan, maka Saya mencoba untuk menambahkan setting dengan Syntax yang menggunakan OpenUI yang ditutup dengan CloseUI sebagai berikut:
*%========================================
*%SETTING TAMBAHAN
*%========================================

*%OpenUI *CNCartridge/Cartridge: PickOne
*%DefaultCNCartridge: color
*%CNCartridge color: "Color Only"
*%CNCartridge bk: "Black Only"
*%CNCartridge bkcolor: "Both Black and Color"
*%CloseUI: *CNCartridge

*OpenUI *CNInkCartridgeSettings/Ink Cartridge Settings: PickOne
*DefaultCNInkCartridgeSettings: color
*CNInkCartridgeSettings color: "Color Only"
*CNInkCartridgeSettings bk: "Black Only"
*CNInkCartridgeSettings bkcolor: "Both Black and Color"
*CloseUI: *CNInkCartridgeSettings

*%========================================


Untuk bagian CNCartridge pada akhirnya di disable karena setting dengan CNInkCartridgeSettings sudah berhasil, dan belum mencoba kembali "mengoprek" setting CNCartridge karena memang belum menemukan dokumentasinya di file guide ip2200.

Isi lengkap file canonip2200.ppd yang ada di /usr/share/cups/model/canonip2200.ppd setelah ditambahkan setting dapat dilihat dibawah ini:
*PPD-Adobe: "4.3"
*% CUPS add-on PPD file for Canon Inkjet Print Filter.
*% Copyright CANON INC. 2001-2006
*% All Rights Reserved.
*%
*% This program is free software; you can redistribute it and/or modify
*% it under the terms of the GNU General Public License as published by
*% the Free Software Foundation; either version 2 of the License, or
*% (at your option) any later version.
*%
*% This program is distributed in the hope that it will be useful,
*% but WITHOUT ANY WARRANTY; without even the implied warranty of
*% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
*% GNU General Public License for more details.
*%
*% You should have received a copy of the GNU General Public License
*% along with this program; if not, write to the Free Software
*% Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA

*FileVersion: "1.0"
*FormatVersion: "4.3"
*LanguageEncoding: ISOLatin1
*LanguageVersion: English
*Manufacturer: "Canon"
*ModelName: "Canon iP2200"
*NickName: "Canon iP2200 Ver.2.60"
*PCFileName: "CNIP2200.PPD"
*Product: "(ip2200)"
*PSVersion: "(3010.000) 550"
*PSVersion: "(3010.000) 651"
*PSVersion: "(3010.000) 705"
*PSVersion: "(3010.000) 715"
*ShortNickName: "IP2200"

*ColorDevice: True
*DefaultColorSpace: RGB
*Throughput: "1"
*LandscapeOrientation: Plus90
*LanguageLevel: "3"
*FileSystem: False
*TTRasterizer: Type42

*cupsFilter: "application/vnd.cups-postscript 0 pstocanonij"
*cupsManualCopies: True
*cupsModelNumber: 256
*cupsVersion: 1.1

*MaxMediaWidth: "612"
*MaxMediaHeight: "1656"
*CenterRegistered: False
*HWMargins: 9.64 14.17 9.64 8.50
*LeadingEdge Short: ""
*DefaultLeadingEdge: Short
*VariablePaperSize: True
*ParamCustomPageSize Width: 1 points 255.12 612.0
*ParamCustomPageSize Height: 2 points 340.16 1656.0
*ParamCustomPageSize WidthOffset: 3 points 0 0
*ParamCustomPageSize HeightOffset: 4 points 0 0
*ParamCustomPageSize Orientation: 5 int 1 1
*CustomPageSize True: "pop pop pop <>setpagedevice"

*OpenUI *PageSize/Paper Size: PickOne
*DefaultPageSize: A4
*PageSize Letter/Letter: "<>setpagedevice"
*PageSize Legal/Legal: "<>setpagedevice"
*PageSize A5/A5: "<>setpagedevice"
*PageSize A4/A4: "<>setpagedevice"
*PageSize B5/B5: "<>setpagedevice"
*PageSize 4X6/4x6in 101.6x152.4mm: "<>setpagedevice"
*PageSize 4X8/4x8in 101.6x203.2mm: "<>setpagedevice"
*PageSize 5X7/5x7in 127.0x177.8mm: "<>setpagedevice"
*PageSize 8X10/8x10in 203.2x254.0mm: "<>setpagedevice"
*PageSize l/L 89x127mm: "<>setpagedevice"
*PageSize 2l/2L 127x178mm: "<>setpagedevice"
*PageSize postcard/Hagaki 100x148mm: "<>setpagedevice"
*PageSize postdbl/Hagaki 2 148x200mm: "<>setpagedevice"
*PageSize envelop10p/Comm. Env. #10: "<>setpagedevice"
*PageSize envelopdlp/DL Env.: "<>setpagedevice"
*PageSize envj4p/Youkei 4 105.5x235mm: "<>setpagedevice"
*PageSize envj6p/Youkei 6 98x190mm: "<>setpagedevice"
*PageSize creditcard/Credit Card 2.13x3.39in 54x86mm: "<>setpagedevice"
*PageSize businesscard/Card 2.16x3.58in 55x91mm: "<>setpagedevice"
*PageSize panorama/P 89x254mm: "<>setpagedevice"
*CloseUI: *PageSize

*OpenUI *PageRegion: PickOne
*DefaultPageRegion: A4
*PageRegion Letter/Letter: "<>setpagedevice"
*PageRegion Legal/Legal: "<>setpagedevice"
*PageRegion A5/A5: "<>setpagedevice"
*PageRegion A4/A4: "<>setpagedevice"
*PageRegion B5/B5: "<>setpagedevice"
*PageRegion 4X6/4x6in 101.6x152.4mm: "<>setpagedevice"
*PageRegion 4X8/4x8in 101.6x203.2mm: "<>setpagedevice"
*PageRegion 5X7/5x7in 127.0x177.8mm: "<>setpagedevice"
*PageRegion 8X10/8x10in 203.2x254.0mm: "<>setpagedevice"
*PageRegion l/L 89x127mm: "<>setpagedevice"
*PageRegion 2l/2L 127x178mm: "<>setpagedevice"
*PageRegion postcard/Hagaki 100x148mm: "<>setpagedevice"
*PageRegion postdbl/Hagaki 2 148x200mm: "<>setpagedevice"
*PageRegion envelop10p/Comm. Env. #10: "<>setpagedevice"
*PageRegion envelopdlp/DL Env.: "<>setpagedevice"
*PageRegion envj4p/Youkei 4 105.5x235mm: "<>setpagedevice"
*PageRegion envj6p/Youkei 6 98x190mm: "<>setpagedevice"
*PageRegion creditcard/Credit Card 2.13x3.39in 54x86mm: "<>setpagedevice"
*PageRegion businesscard/Card 2.16x3.58in 55x91mm: "<>setpagedevice"
*PageRegion panorama/P 89x254mm: "<>setpagedevice"
*CloseUI: *PageRegion

*OpenUI *MediaType/Media Type: PickOne
*DefaultMediaType: plain
*MediaType plain/Plain Paper: "<>setpagedevice"
*MediaType prophoto/Photo Paper Pro: "<>setpagedevice"
*MediaType superphoto/Photo Paper Plus Glossy: "<>setpagedevice"
*MediaType doublesidephoto/Photo Paper Plus Double Sided: "<>setpagedevice"
*MediaType matte/Matte Photo Paper: "<>setpagedevice"
*MediaType glossypaper/Glossy Photo Paper: "<>setpagedevice"
*MediaType highres/High Resolution Paper: "<>setpagedevice"
*MediaType ijpostcard/Inkjet Hagaki: "<>setpagedevice"
*MediaType postcard/Hagaki: "<>setpagedevice"
*MediaType tshirt/T-Shirt Transfer: "<>setpagedevice"
*MediaType ohp/Transparency: "<>setpagedevice"
*MediaType envelope/Envelope: "<>setpagedevice"
*MediaType otherphoto/Other Photo Paper: "<>setpagedevice"
*CloseUI: *MediaType

*OpenUI *InputSlot/Paper Feed: PickOne
*DefaultInputSlot: asf
*InputSlot asf/Auto Feeder: ""
*CloseUI: *InputSlot

*OpenUI *CNQuality/Quality: PickOne
*DefaultCNQuality: 3
*CNQuality 2/High: "2"
*CNQuality 3/Normal: "3"
*CNQuality 4/Standard: "4"
*CNQuality 5/Economy: "5"
*CloseUI: *CNQuality

*OpenUI *Resolution/Output Resolution: PickOne
*DefaultResolution: 600
*Resolution 600/600 dpi: "<>setpagedevice"
*CloseUI: *Resolution

*OpenUI *ColorModel/Color Model: PickOne
*DefaultColorModel: rgb
*ColorModel rgb/RGB: "<>setpagedevice"
*CloseUI: *ColorModel

*%========================================
*%SETTING TAMBAHAN
*%========================================

*%OpenUI *CNCartridge/Cartridge: PickOne
*%DefaultCNCartridge: color
*%CNCartridge color: "Color Only"
*%CNCartridge bk: "Black Only"
*%CNCartridge bkcolor: "Both Black and Color"
*%CloseUI: *CNCartridge

*OpenUI *CNInkCartridgeSettings/Ink Cartridge Settings: PickOne
*DefaultCNInkCartridgeSettings: color
*CNInkCartridgeSettings color: "Color Only"
*CNInkCartridgeSettings bk: "Black Only"
*CNInkCartridgeSettings bkcolor: "Both Black and Color"
*CloseUI: *CNInkCartridgeSettings

*%========================================

*DefaultImageableArea: A4
*ImageableArea Letter: "18.14 14.17 594.14 783.50"
*ImageableArea Legal: "18.14 14.17 594.14 999.50"
*ImageableArea A5: "9.64 14.17 409.89 586.77"
*ImageableArea A4: "9.64 14.17 585.64 833.39"
*ImageableArea B5: "9.64 14.17 506.27 720.00"
*ImageableArea 4X6: "9.64 14.17 278.36 423.50"
*ImageableArea 4X8: "9.64 14.17 278.36 567.50"
*ImageableArea 5X7: "9.64 14.17 350.36 495.50"
*ImageableArea 8X10: "9.64 14.17 566.36 711.50"
*ImageableArea l: "9.64 14.17 242.65 351.50"
*ImageableArea 2l: "9.64 14.17 350.36 496.06"
*ImageableArea postcard: "9.64 14.17 273.83 411.02"
*ImageableArea postdbl: "9.64 14.17 557.29 411.02"
*ImageableArea envelop10p: "9.64 75.12 287.35 611.32"
*ImageableArea envelopdlp: "9.64 75.12 302.17 600.94"
*ImageableArea envj4p: "9.64 75.12 288.00 657.64"
*ImageableArea envj6p: "9.64 75.12 268.16 530.08"
*ImageableArea creditcard: "9.64 14.17 143.43 235.28"
*ImageableArea businesscard: "9.64 14.17 146.27 249.45"
*ImageableArea panorama: "9.64 14.17 242.65 711.50"

*DefaultPaperDimension: A4
*PaperDimension Letter: "612 792"
*PaperDimension Legal: "612 1008"
*PaperDimension A5: "420 595"
*PaperDimension A4: "595 842"
*PaperDimension B5: "516 729"
*PaperDimension 4X6: "288 432"
*PaperDimension 4X8: "288 576"
*PaperDimension 5X7: "360 504"
*PaperDimension 8X10: "576 720"
*PaperDimension l: "252 360"
*PaperDimension 2l: "360 505"
*PaperDimension postcard: "283 420"
*PaperDimension postdbl: "567 420"
*PaperDimension envelop10p: "297 684"
*PaperDimension envelopdlp: "312 624"
*PaperDimension envj4p: "298 666"
*PaperDimension envj6p: "278 539"
*PaperDimension creditcard: "153 244"
*PaperDimension businesscard: "156 258"
*PaperDimension panorama: "252 720"

*%CNPpdToOptKey PageSize --papersize
*%CNPpdToOptKey MediaType --media
*%CNPpdToOptKey InputSlot --paperload
*%CNPpdToOptKey CNCartridge --cartridge
*%CNPpdToOptKey CNQuality --quality
*%CNPpdToOptKey CNHalftoning --halftoning
*%CNPpdToOptKey CNRenderIntent --renderintent
*%CNPpdToOptKey CNGamma --gamma
*%CNPpdToOptKey CNBalanceC --balance_c
*%CNPpdToOptKey CNBalanceM --balance_m
*%CNPpdToOptKey CNBalanceY --balance_y
*%CNPpdToOptKey CNBalanceK --balance_k
*%CNPpdToOptKey CNDensity --density
*%CNPpdToOptKey CNGrayscale --grayscale
*%CNPpdToOptKey CNLocation --location
*%CNPpdToOptKey CNPercent --percent
*%CNPpdToOptKey CNCopies --copies
*%CNPpdToOptKey CNPaperGap --papergap
*%CNPpdToOptKey CNInkCartridgeSettings --inkcartridgesettings


Setelah selesai menambahkan setting dan merestart komputer, buka Printer Configuration (System*Administration*Printing – pada gNome Ubuntu) lalu pilih tab Printer Options lalu pastikan pada Ink Cartridge Settings terpilih "color". Klik apply dan coba untuk printer test page. Semoga berhasil. Bravo Penguin !

Sumber:
  1. http://ubuntuforums.org/showthread.php?t=563627 this is a translated version of Reinaldo's post on the openprinting forums. All credit goes to Reinaldo. ( http://forums.linux-foundation.org/read.php?25,1032 ).
  2. User's Guide for Print Filter Version 2.60 Canon PIXMA iP2200.

3 komentar:

milisdad mengatakan...

Trims tutorialnya.
Bisakah anda bergabung ke planet ubuntu-id?

Solahudin mengatakan...

Lha...koq buat linux....kalo untuk windows ada gak..? kalo ada kirim ke email aku ya di najih09@yahoo.co.id

Hendra mengatakan...

Kalau buat Windows, udah langsung bisa dengan driver standar. Jadi gak perlu oprek lagi.