About the Digital Sender

The Hewlett-Packard Digital Senders are, in essence, networked scanners. The 8100c, which is out of production, was the second such device that HP made; the current model (as of February 2008) is the 9200c. The 8100c supports scanning to PDF, JPEG, or TIFF files which are then sent as email attachments, faxing, and copying printed documents directly to a JetSend supported printer.

The 8100c appears to be formed — in both a physical, and logical sense — from a SCSI scanner, an automatic document feeder, and a low-end computer with a simple keyboard and four-line LCD output subsystem. The computer has a fixed amount of on-board memory, an EIO interface used to provide network connectivity, a SCSI interface for the scanner, and an IDE hard drive interface.

My 8100c is configured with an HP j3110a/JetDirect 600N 10Base-T EIO card. This card provides the ethernet interface to the scanner. The current firmware load doesn't support MacOS and refuses to provide a web interface to a Macintosh. If, however, Safari is set to report itself as being Internet Explorer, the card works perfectly; this is obviously an arbitrary exclusion.

The appeal of the digital sender, at least to me, was platform independence. I didn't want to need to fiddle around with unsupported, closed-source drivers under Linux, nor did I want to support a Windows system sitting right next to a scanner simply to support scanning and faxing documents. That said, HP never claimed that the system was capable of working with any OS but Windows.

Configuring the Digital Sender

The JetDirect card in the 8100c can be configured via DHCP, BOOTP, or manual settings. I find it to be easiest to use a statically assigned DHCP address. The settings can be modified at the front panel or through the web interface.

With the exception of the network configuration, the settings on the digital sender need to be entered at the keyboard of the unit. Since the keyboard isn't very good — there's no way to touch-type on it — and the display is marginal, the initial configuration can be a bit tedious. The configuration is saved on the hard drive in the sender, so this should be a one-time process; hopefully any subsequent changes are minor.

The digital sender normally uses the SMTP server on your network to send both email and faxes. Faxes are sent through an electronic fax service; the unit does not contain a modem and cannot send faxes directly. LDAP can be configured to provide email addresses and fax numbers; OpenLDAP works without any issues.


While TCP/IP, SMTP, SNMP and LDAP were easy to configure, faxing took additional research and planning. My goal was to integrate with an existing HylaFAX server on the network.

It turns out that the 8100c sends faxes as simple email messages with the scanned documents attached to the message already encoded as a TIFF file, ready to be transmitted. The destination fax number is the “local part” of the destination email address and the domain is whatever has been configured as the fax service on the digital sender.

To configure faxing through a local fax server, first set the fax provider domain name in the “Settings → I-Fax” menu. I set up a new domain specifically and only for faxing. The most significant benefit to putting faxes on their own domain is ease of control; it is simpler to write rules when all the traffic in a domain should be from an internal network client (or device) to a fax server. Note that the “LAN Fax” functionality is not needed.

My network uses Exim as an MTA; the following recipe will have to be adjusted for other agents. Shown first is the driver section. It will process any mail destination in the “fax.anomalous.net” domain.

fax: driver = accept domains = fax.anomalous.net retry_use_local_part transport = fax_delivery

Next, the driver, which is referenced from the fax transport. Note that it invokes the fax.pl script, which is run as the user “exim.” The mail message is delivered to fax.pl through stdin.

fax_delivery: driver = pipe command = "/usr/bin/fax.pl $local_part" user = exim

Last, fax.pl is a small PERL script that simply breaks out the TIFF data from the email received from the digital sender, decodes the MIME-encoded image and pipes it to “sendfax” with the proper parameters (including the phone number, of course, which is taken from the command line.

If you are considering implementing a system similar to this, you may wish to give further thought to either “hardening” the PERL script or locking down access to the fax mail domain. This is easily done if only a few devices need access to send faxes, and is a worthwhile process even in a small network setting.

Keep In Mind…


Static links

RSS Feed RSS Feed

About this site

Our host

Dynamic links