Printers over SNMP
Poll your printers over SNMP for toner levels, online status and error conditions.
| Category | Printing |
| Authentication | SNMP community string |
| Reaches | Printers on your network |
| Needs an agent | Yes, on managed hosting |
| Demo mode | Yes, on by default |
Capabilities
Section titled “Capabilities”printer.status, printer.upsertCardUser
Which lights up the printers page, gated by the
module.printers module.
The private network question
Section titled “The private network question”Printers answer on your LAN.
Self-hosted on that network: reaches them directly. You will also want
ALLOW_PRIVATE_EGRESS=1, because Plugboard blocks outbound requests to private
address ranges by default.
Managed hosting: needs a connector agent on a machine that can reach the printer subnet.
Preparing the printers
Section titled “Preparing the printers”SNMP is usually enabled by default on network printers, but not always, and the community string is frequently left at the default.
For each printer, or across the fleet through your management tool:
- Enable SNMP v2c.
- Set a read-only community string. Change it from
publicif you can; a read-only string is not a serious secret, but leaving defaults everywhere is how a network ends up mapped by anyone who plugs in. - Confirm the printer’s IP is static, or reserved in DHCP. A printer that moves address disappears from the fleet view.
Configuring it in Plugboard
Section titled “Configuring it in Plugboard”Admin, Connectors, Printers (SNMP), Configure.
Settings
Section titled “Settings”| Field | Default | Value |
|---|---|---|
hosts | empty | Printer IPs or hostnames, comma-separated |
community | public | The SNMP v2c community string |
demoMode | true | Return a sample fleet, making no SNMP calls |
demoMode is on by default so the printers page has something on it before you
have typed in a list of IP addresses. Turn it off once you have.
Hostnames work if your DNS resolves them from wherever the polling happens. IP addresses are more reliable and are what most schools use.
There are no credentials. SNMP v2c authenticates with the community string, which is a configuration value rather than a secret.
What you get
Section titled “What you get”For each printer:
| Toner and consumable levels | Per cartridge, as a percentage |
| Online or offline | |
| Error conditions | Paper jam, tray empty, cover open, and similar |
| Model and name | As the printer reports itself |
The value is finding out before a user does. Catch a printer at four percent cyan on a Thursday and you can get a cartridge to it before Friday’s newsletter.
Supported models include common Fuji Xerox and Fuji Film devices. Most printers implement the standard printer MIB, so the readings work broadly.
Sizing the host list
Section titled “Sizing the host list”A large school has more printers than anyone remembers. Rather than typing them from memory:
- Export the device list from your print management system, if you run one.
- Or scan the printer VLAN for anything answering on port 9100 or 631.
Start with the ones that matter (staff rooms, the print room, reception) and add the rest.
Troubleshooting
Section titled “Troubleshooting”| Symptom | Cause |
|---|---|
| Sample printers appear | demoMode is still on |
| No response from a printer | SNMP disabled on it, or the wrong community string |
| Some printers work, others do not | Mixed community strings across the fleet. The connector uses one for all hosts |
| Everything times out on a self-hosted install | ALLOW_PRIVATE_EGRESS is not set |
| Everything times out on managed hosting | No agent, or the agent’s host cannot reach the printer subnet |
| Toner levels look wrong | Some printers report remaining pages rather than a percentage. Cross-check against the printer’s own panel |
| A printer vanished | Its IP changed. Use a DHCP reservation |
Related
Section titled “Related”PaperCut covers print management: who printed what, balances and card release. The two connectors answer different questions and schools that run PaperCut usually want both.