MSP - setting up

Setup information for all platforms is available on the CiCS website.

Linux printer queue setup

Note that the Linux setup information within the above mentioned website relates to a per-user queue which may not be supported under all Linux flavours and is not practicable if you are using a multiuser system.

Using the relevant printer configuration software for your system, add a standard lpd printer queue for the mono MSP queue and another standard lpd printer queue for the colour MSP queue as follows, taking note that...

  • ipp is not presently supported on the MSP queues, so do not select ipp as the print protocol which is the typical Linux default
  • the CiCS hostnames are slightly different for the mono and colour queues
  • it is highly recommended to download and use the given ppd files in your printer configuration which will work with both MFD and MFP models - if however you cannot select ppd files when adding print queues, then using a generic postscript driver, for instance a HP Colour LaserJet 5500 postscript driver (with duplex enabled and colour support enabled if you need to print in colour), should give you basic print functionality
  • both ppd files given here are already set with duplex enabled, however there is no harm in double checking this within your printer options after adding each device

Details for the mono queue

When adding this device, you can copy and paste the following line into the URI...

lpd://stfprtq04/UoS-mono

and/or use the following parameters...

  • protocol: lpd
  • printer name: mspmono [you can change this to anything meaningful]
  • hostname: stfprtq04
  • queue: UoS-mono
  • driver: download and select the mx5141mono.ppd file from the Downloads box [upper right on this page]

Details for the colour queue

When adding this device, you can copy and paste the following line into the URI...

lpd://stfprtq05/UoS-colour

and/or use the following parameters...

  • protocol: lpd
  • printer name: mspcolour [you can change this to anything meaningful]
  • hostname: stfprtq05
  • queue: UoS-colour
  • driver: download and select the mx5141colour.ppd file from the Downloads box [upper right on this page]

after applying the changes, running "lpstat -t" in a terminal should show you something like this...

device for mspmono: lpd://stfprtq04/UoS-mono

device for mspcolour: lpd://stfprtq05/UoS-colour

Linux printing

After setting up the print queues using the above method and before you try to print anything, you have to remember that by default, print jobs submitted from your Linux account are owned by your login name.

At a MFD/P device, print jobs are released by swiping your own UCard which relates to your CiCS username, so you must submit jobs into the queues with the ownership set to your CiCS username and not with your regular login name. If you do not, then you will not be able to release the print job.

If your login account name is the same as your CiCS username

You can submit jobs to mspmono and mspcolour in the usual way without changing anything.

If your login account name is different to your CiCS username and the system you are printing through uses CUPS version 1.6 or later

You can change your printer username identity by setting the CUPS_USER environment variable in the following way, substituting your own CiCS username in place of CICS_USERNAME...

for (t)csh, add the following to "~/.cshrc" (or "~/.tcshrc")...

setenv CUPS_USER CICS_USERNAME

for bash, add the following to "~/.profile"...

export CUPS_USER='CICS_USERNAME'

NB: ~/.profile needs to be used as ~/.bashrc is not read by all programs and similarly ~/.bash_profile may not be read by some systems where dash is used rather than bash by background programs (i.e. graphical login managers).
For reference, ~/.profile is used by both dash and bash.

NB: you must log out and back in again to make these changes available to all programs. After doing so, all command line and graphical programs should now submit print jobs with the owner set to CICS_USERNAME, so you can submit jobs to mspmono and mspcolour in the usual way.

If your login account name is different to your CiCS username and the system you are printing through uses CUPS versions earlier than version 1.6

You can easily submit print jobs from the command line using an alternative username to your choice of mspmono or mspcolour.

To print from the command line to the mono queue use the following command, substituting your own CiCS username in place of CICS_USERNAME...

lpr -U CICS_USERNAME -Pmspmono filename

and to print from the command line to the colour queue, use the following command, substituting your own CiCS username in place of CICS_USERNAME...

lpr -U CICS_USERNAME -Pmspcolour filename

All linux systems should support the "-U" lpr switch - you can check if it's supported by using "man lpr".

Most graphical programs will not however accept the input of an alternative username due to there being no support for this within earlier versions of the CUPS libraries (which are accessed by graphical programs in the background). In this case, you will have to save whatever you want to print out to a pdf or postscript file and then print directly from the command line to your choice of mspmono or mspcolour.
You may find that a newer version of the operating system you are using may have an updated version of CUPS.

Some final points

If you administer your own Linux system, you may choose to change your existing username to be the same as your CiCS username to simplify matters. If someone else administers the system, then you can ask that person if they are willing to change your existing account username to your CiCS username if you so wish, but this will not be practicable for systems with a large number of existing users.

It is possible to download, build and install parts of CUPS >=1.6 and then use this to replace certain system files so that you can make use of the CUPS_USER environment variable, but this may not work or be practicable for all Linux flavours and if you do this incorrectly, you may stop printing from working altogether.

Additional notes

  1. Newer versions of CUPS hide the print job ownership id by default - you can change this behaviour by editing /etc/cups/cupsd.conf as the root user (or by using sudo if appropriate) and then make the following two changes (without the quotes)...
    change "JobPrivateAccess default" to "JobPrivateAccess all"
    change "JobPrivateValues default" to "JobPrivateValues none"
    After this, restart cupsd, typically with "[sudo] service cupsd restart" or "[sudo] service cups restart"
  2. When you have submitted your print job, you normally have a few seconds in which to type "lpstat -t" into a terminal to check the print job ownership id is correct (or you can view all completed jobs via the http://localhost:631/jobs page if you are running a browser on your print server itself). After this, the job will then be transferred and stored on a CiCS server waiting to be released, so will no longer be shown within a queue on your local machine. The only method of viewing what you have on your MSP queue is physically at a MSP device. Remember that unreleased jobs will automatically be removed after 24 hours.
  3. Newer systems show a list of network printers by default, even though you have not added them yourself - you can change this behaviour by editing /etc/cups/cups-browsed.conf as the root user (or by using sudo if appropriate) and then make the following change (without the quotes)...
    change "BrowseRemoteProtocols dnssd cups" to "BrowseRemoteProtocols none"
    and for printers listed within graphical programs, it is also necessary to stop the avahi-daemon with the following command (without the quotes)...
    [sudo] service avahi-daemon stop
    NB: avahi-daemon will be started again on rebooting - you will have to find the relevant method for your Linux flavour to disable it permanently.