Cheapest way to connect USB printer

Hi, I am new.

I got hold of a Zyxel WSM20 for a few Euros and managed to install OpenWrt on it. Now I am curious what the cheapest way of connecting my USB printer would be.

The Zyxel doesn't have a USB port, only ethernet. There are cheap USB/LAN adapters on Amazon, do they work? Or do I need a printer server (>40€)? And has anyone tried a Raspberry Pi?

Curious to hear possible solutions. I am not an expert but always ready to learn and experiment. :slight_smile:

If you can get a cheap OpenWrt supported router with a USB port, you can install P910nd which is a very basic type of print server. I've done exactly this with a TP-Link TL-MR3020v1 device (note: it's running a very old and unsupported version of OpenWrt because that device only has 4MB flash memory and 32MB RAM).
A Pi could do it, too.

or a Seagate Dockstar or Pogoplug.

1 Like

Thanks. P910nd - noted!

I don't want to get a new device, since I have a Zyxel WSM20 already (an AX device) but perhaps a PI could be a cheap solution...

The WSM20 doesn't have any USB port anyway ?

The ones I suggest can sometimes be found on ebay, for a low price.

1 Like

Depends on your local used market. An old Pi (such as a Pi 2 or 3) may be cheap, but a 4 may or may not be cheap in comparison to an older wifi router with a USB port... for example, I looked up a Linksys E3000 (I have one lying around, figured it'd be a good 'sanity check' for cheap devices)... on Craigslist there was one for $10. Although it has many limitations, it would be a fine candidate for a P910nd based 'adapter.'
You might start by doing a search on the used market in your area for "wireless routers" and then cross reference against the Table of Hardware for general OpenWrt support and a USB port.

What would be a good price for a used Pi 2?

Ah, interesting! You mean buy an old router like the Linksys which has a USB port, get P910nd running and connect the "adapter router" to my real Wifi router by cable? Would that work?

True! There seem to be a few offers for Pogoplugs. Are they simple to setup?

If your printer can connect to your network by WiFI, you'll probably find that easier and more performant. I've experimented with p910nd in the past, but today I use WiFi capable printers - it is a much better user experience for me.

I block the printer from communicating out to the internet with a firewall rule (both its assigned static IP and its MAC address) except for an occasional check for OEM firmware updates. It is not as good as a wired USB connection from a security standpoint, and no help at all if your printer cannot connect by WiFi, but most do today.

2 Likes

Thank you, that's good advice. The printer is old enough to not have WiFi capabilities though. It's more of a question of getting it to work or leaving it in the other room for occasional print jobs by USB connection. I thought it would be a nice challenge to get it to work on the network :slight_smile:

1 Like

For reference, I have an old HP LaserJet 6MP that I use on the network with P910nd. It has 2 parallel ports, a serial port (the old Mac mini-din), and an IrDA port (yeah... it's old). I've got a USB-to-parallel cable adapter and then it plugs into my MR3020 with OpenWrt 18.06 + P910nd. It works perfeclty.

So yes, a cheap router with USB (and I'd recommend a minimum of 8MB storage + 64MB RAM, ideally more for both) that is supported by OpenWrt would do the trick unless you have other options like those mentioned by @frollic . Also, don't forget that there are purpose made USB print servers, and the old Airport Express devices (not OpenWrt supported) have this functionality, as well*.

*Iroincally, I was using an Airport Express as my print server... for some reason it stopped working and I cannot figure out why. So, I pulled out the MR3020 and setup P910nd and the printer has been online without a hitch.

I would rather look in the direction of tl-wdr3600/ tl-wdr4300, which tend to be in the ~10 EUR or less range around here (flash is limited with 8 MB, 128 MB RAM, wireless is just 802.11n, but they're well supported by OpenWrt - and cheap); tl-wr2543nd, tl-wr1043nd v2/ v3/ v4 (NOT v1) would be a (worse) alternative - or a whole variety of mt7621a based devices (don't go mt7620 or mt7628, it's not worth it), maybe even lantiq or other ath79 based ones.

Broadcom (Linksys e3000) is just painful all around.

While the RPi would work, you can't get much cheaper than with a slightly older/ used OpenWrt compatible router, they have wired ethernet, WLAN and (at least many, not all) 1+ USB 2.0 port(s), capable enough to run p910nd (not CUPS, though) and are usually low-power (~5 watts on average).


When shopping for a new printer, I'd always suggest to add wired-ethernet as a must-have option (wireless may be a nice option, but don't trade that in instead of wired-ethernet, it's a nice option, but not a replacement for wired-ethernet) and a 'standard' printer language (Postscript, PCL5/ PCL6(, ESC-P2)); duplex-printing is a worthwhile luxury feature.

Yeah, this was just an example... it would work just fine for the stated purpose, but I wasn't recommending this specific device, just making the point that for a printer context (and that being the only task), pretty much any OpenWrt supported router with USB and appropriate storage/memory can do the trick. Maybe I should have made that more clear.

I migrated my home Windows desktops to linux 4 or 5 years ago and stopped plugging a printer USB cable into my OpenWrt AP with p910nd around the same time. Linux CUPS printer drivers was probably why.

depends on your skillset, set up is the same as for any router, installation could be trickier, I guess -ToH link, seems the v4 wiki page is gone, though :frowning:
git entry is at https://git.openwrt.org/?p=openwrt/openwrt.git;a=commit;h=c19f811c4d732f634ac18f33ae95e954ac9e8c81

Thank you. I think I will try a Pogoplug.

So I run OpenWrt on it, install p910nd, and then connect the Pogoplug to my other/main router and set a static IP. Is that how it works? :slight_smile:

pretty much, yes.

1 Like

Got hold of a TP-WDR4300 with two USB ports as recommended. Can you please help me think through the setup to get my USB printer running on the network?

Right now, there are 5 computers connected via Wifi to an AX router (no USB) with OpenWrt.

Now I would believe that I have to install p910nd on the WDR4300 and set it up as a client (as described here https://openwrt.org/docs/guide-user/network/wifi/connect_client_wifi), connect it to the AX router, and then assign a static IP. Is that correct?

It can be a wifi client, or a wired connection if you want.
In either case, you'll want to make this a lan connection. I'd recommend starting with this wired, and you can always shift that to wireless later.

Then there's https://openwrt.org/docs/guide-user/services/print_server/p910nd.server

1 Like