# Here's how I configured my Canon PIXMA MP560 printer using bjnp over wifi: ############################################################################ # 1) Turn the printer on, enable wifi # 2) Run bjnp to list active BJNP-listening printers on the local network $ /usr/lib/cups/backend/bjnp network bjnp://CANON-MP560.local:8611 "Canon MP560 series" "Canon MP560 series CANON-MP560.local" "MFG:Canon;CMD:BJL,BJRaster3,BSCCe,NCCe,IVEC,IVECPLI;SOJ:TXT01,BJNP2;MDL:MP560 series;CLS:PRINTER;DES:Canon MP560 series;VER:1.040;STA:10;FSI:00;HRI:PAM;MSI:DAT,E3,HFSF;PDR:3;" # 3) Find an appropriate driver/PPD for the printer on the system $ sudo lpinfo --make-and-model MP560 -m foomatic:Canon-MULTIPASS-MP560-gutenprint-ijs-simplified.5.2.ppd Canon MULTIPASS-MP560 Foomatic/gutenprint-ijs-simplified.5.2 foomatic:Canon-MULTIPASS-MP560-gutenprint-ijs.5.2.ppd Canon MULTIPASS-MP560 Foomatic/gutenprint-ijs.5.2 gutenprint.5.2://bjc-MULTIPASS-MP560/expert Canon PIXMA MP560 - CUPS+Gutenprint v5.2.9 # 4) Create the printer in CUPS, enable it, and set it as the default $ sudo lpadmin -p CanonMP560 -v bjnp://CANON-MP560.local:8611 -D "Canon MP560 series" -m gutenprint.5.2://bjc-MULTIPASS-MP560/expert $ sudo cupsaccept CanonMP560 $ sudo cupsenable CanonMP560 $ sudo lpadmin -d CanonMP560 # 5) Looks good $ lpstat -t scheduler is running system default destination: CanonMP560 device for CanonMP560: bjnp://CANON-MP560.local:8611 CanonMP560 accepting requests since Sat 08 Dec 2012 12:33:45 PM EST printer CanonMP560 is idle. enabled since Sat 08 Dec 2012 12:33:45 PM EST Ready to print. # 6) Print a test page $ lp /usr/share/doc/cups-backend-bjnp/README.Debian request id is CanonMP560-20 (1 file(s)) # 7) Celebrate