Tim,

I installed Fedora 13 Beta and tried out System-Config-Printer. It's able to find the Ricoh network printers, but unable to find a PPD file.

"lpinfo --include-schemes=dnssd,snmp -l -v" found the following printers. None of the printers support 1284DeviceID MIB.
 * One with Bonjour support, (I guess CUPS retrieves device-id using Bonjour),
 * Another without Bonjour support, and CUPS found it using SNMP.

"Search for a printer driver to download" does not return any drivers.

-------------------------------------------------------------------------------------
Device: uri = dnssd://RICOH%20Aficio%20MP%20C3500._pdl-datastream._tcp.local/
        class = network
        info = RICOH Aficio MP C3500
        make-and-model = RICOH RICOH Aficio MP C3500
        device-id = MFG:RICOH;MDL:Aficio MP C3500
        location =


Device: uri = socket://172.30.4.243
        class = network
        info = RICOH Aficio MP 2550
        make-and-model = RICOH Aficio MP 2550
        device-id =
        location =

-------------------------------------------------------------------------------------


I then tried to build pycups and system-config-printer (Thanks for the instruction).

I run the build version, and it gave me some log messages.



Got PPDs
No ID match for device socket://172.30.4.243:9100:
  <manufacturer>RICOH</manufacturer>
  <model>Aficio MP 2550</model>
  <description>RICOH Aficio MP 2550</description>
  <commandset></commandset>
Using textonly.ppd (status: 3)
Will fetch ppd? 0


Got PPDs
No ID match for device socket://172.30.4.173:9100:
  <manufacturer>RICOH</manufacturer>
  <model>Aficio MP C3500</model>
  <description>RICOH Aficio MP C3500</description>
  <commandset></commandset>
Using textonly.ppd (status: 3)
Will fetch ppd? 0


<manufacturer> and <model> tag for both printers are correct. There's no <deviceid> tag for either of them. Is it right?

Thanks
George



-----Original Message-----
From: Tim Waugh [mailto:twaugh@redhat.com]
Sent: Fri 4/30/2010 3:30 AM
To: George Liu
Cc: system-config-printer-devel@lists.fedorahosted.org; Till Kamppeter; Bin Li
Subject: Re: Tagging PPD package with DeviceID.

On Thu, 2010-04-29 at 16:22 -0700, George Liu wrote:
> Although Port Monitor MIB has been 4-5 years old, it has not been
> adopted by all printer manufactures.
> Most Ricoh devices do not support it. Combined with the seven brands
> we have, Ricoh has 23.1% copier market share in the US in 2009.
> http://www.ricoh-usa.com/about/press/releases.asp?id=620 I believe
> Ricoh has similar market share in Europe and Japan as well.

But all these printers do actually have IEEE 1284 Device IDs, don't
they?  They surely just use other means for providing them.  Perhaps
there is a different SNMP OID that must be used to query them?

There is precedent in the CUPS SNMP backend for using OIDs outside the
Printer MIB, so I expect this is something that could be worked around
in CUPS.

> Then, the next question become how do s-c-p matches a device to a PPD
> file. Can you elaborate on this session?
> -----------------------------------------------------------------------
> If it's a network printer, we use the Device ID that CUPS gives us: to
> choose a network printer, we ask CUPS for a list of devices from
> schemes 'dnssd' and 'snmp', and each of those backends reports Device
> IDs for the network devices they discover, when possible.
> -----------------------------------------------------------------------

We basically do the equivalent of this inside system-config-printer:
  lpinfo --include-schemes=dnssd,snmp -l -v

Of course we don't actually run that command, instead it is done with an
IPP request (via the CupsPkHelper D-Bus mechanism when possible).  But
the effect is the same: cupsd receives the IPP request, asks its
backends to look for devices, and reports the results back.

The snmp backend tries several different OIDs, including the relevant
ones from the Printer MIB, to determine the IEEE 1284 Device ID of each
printer it gets a response from.

Tim.
*/