I'm looking to make a printer of ours (a card printer with magnetic stripe module) wireless using a Raspbery Pi and CUPS.

I'm thinking the printer isn't supported (it's a DataCard CP40 Plus printer, and we're looking to buy a new DataCard printer at the start of next year), so I'm wondering if CUPS is able to handle unsupported printers by passing a "printed from Windows" job straight through to the printer?

We're using the Pi because we'd rather not dedicate two machines to the sharing of the two printers, and the Pi seems ideal.

EDIT: There's a driver, but 1) it's from 2007, 2) it's not on DataCard's website, so I'm guessing not supported anymore 3) it's x86 only and 4) may not be compatible with the new printer we're after.

For now, it's about the best we can do. Worst case scenario, I buy an Intel Galileo (which is x86) and do it that way. We're already forking out a few grand for a card printer, so what's an extra $100?

2 Answers 2


The driver's not easy to find at the manufacturer's site, but the printer at least WAS supported once. The documentation still is available for download at their website. I found the driver itself too, but at a different site. If you're not that brave to try it out from an unofficial source, you can contact the company itself and ask for it. Sometimes they still have the driver, it's only got lost round over the years and noone ever asked. The documentation is there, so the driver is likely to be there too.

  • 1
    Thanks for the answer. I found the driver on another site, but it's x86 only and not ARM. Not to mention that the driver may not be compatible with the second printer we're planning to buy (SD160, I think). I called DataCard on Friday and am waiting a call back from them for an explanation.
    – Grayda
    Aug 20, 2016 at 15:56

Yes, if you share the printer via cups, you just tell the mswindows clients it is an ipp printer and set the url to http://yourPiHostname:631/printers/printername (where yourPiHostname and printername are the values you configured. Your problem then is to write a ppd from scratch which uses a null filter for all mimetypes. This is described here.

Alternatively, you could uninstall cups and use lpd printing. Again it uses filters, but these are much eaksier to manipulate than ppd files. See LPRng.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .